com.google.api.services.artifactregistry.v1.model.Repository Maven / Gradle / Ivy
/*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
* in compliance with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software distributed under the License
* is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
* or implied. See the License for the specific language governing permissions and limitations under
* the License.
*/
/*
* This code was generated by https://github.com/googleapis/google-api-java-client-services/
* Modify at your own risk.
*/
package com.google.api.services.artifactregistry.v1.model;
/**
* A Repository for storing artifacts with a specific format.
*
* This is the Java data model class that specifies how to parse/serialize into the JSON that is
* transmitted over HTTP when working with the Artifact Registry API. For a detailed explanation
* see:
* https://developers.google.com/api-client-library/java/google-http-java-client/json
*
*
* @author Google, Inc.
*/
@SuppressWarnings("javadoc")
public final class Repository extends com.google.api.client.json.GenericJson {
/**
* Optional. Cleanup policies for this repository. Cleanup policies indicate when certain package
* versions can be automatically deleted. Map keys are policy IDs supplied by users during policy
* creation. They must unique within a repository and be under 128 characters in length.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private java.util.Map cleanupPolicies;
static {
// hack to force ProGuard to consider CleanupPolicy used, since otherwise it would be stripped out
// see https://github.com/google/google-api-java-client/issues/543
com.google.api.client.util.Data.nullOf(CleanupPolicy.class);
}
/**
* Optional. If true, the cleanup pipeline is prevented from deleting versions in this repository.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private java.lang.Boolean cleanupPolicyDryRun;
/**
* Output only. The time when the repository was created.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private String createTime;
/**
* The user-provided description of the repository.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private java.lang.String description;
/**
* Optional. If this is true, an unspecified repo type will be treated as error rather than
* defaulting to standard.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private java.lang.Boolean disallowUnspecifiedMode;
/**
* Docker repository config contains repository level configuration for the repositories of docker
* type.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private DockerRepositoryConfig dockerConfig;
/**
* Optional. The format of packages that are stored in the repository.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private java.lang.String format;
/**
* The Cloud KMS resource name of the customer managed encryption key that's used to encrypt the
* contents of the Repository. Has the form: `projects/my-project/locations/my-region/keyRings/my-
* kr/cryptoKeys/my-key`. This value may not be changed after the Repository has been created.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private java.lang.String kmsKeyName;
/**
* Labels with user-defined metadata. This field may contain up to 64 entries. Label keys and
* values may be no longer than 63 characters. Label keys must begin with a lowercase letter and
* may only contain lowercase letters, numeric characters, underscores, and dashes.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private java.util.Map labels;
/**
* Maven repository config contains repository level configuration for the repositories of maven
* type.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private MavenRepositoryConfig mavenConfig;
/**
* Optional. The mode of the repository.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private java.lang.String mode;
/**
* The name of the repository, for example: `projects/p1/locations/us-
* central1/repositories/repo1`. For each location in a project, repository names must be unique.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private java.lang.String name;
/**
* Output only. The repository endpoint, for example: `us-docker.pkg.dev/my-proj/my-repo`.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private java.lang.String registryUri;
/**
* Configuration specific for a Remote Repository.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private RemoteRepositoryConfig remoteRepositoryConfig;
/**
* Output only. If set, the repository satisfies physical zone isolation.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private java.lang.Boolean satisfiesPzi;
/**
* Output only. If set, the repository satisfies physical zone separation.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private java.lang.Boolean satisfiesPzs;
/**
* Output only. The size, in bytes, of all artifact storage in this repository. Repositories that
* are generally available or in public preview use this to calculate storage costs.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key @com.google.api.client.json.JsonString
private java.lang.Long sizeBytes;
/**
* Output only. The time when the repository was last updated.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private String updateTime;
/**
* Configuration specific for a Virtual Repository.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private VirtualRepositoryConfig virtualRepositoryConfig;
/**
* Optional. Config and state for vulnerability scanning of resources within this Repository.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private VulnerabilityScanningConfig vulnerabilityScanningConfig;
/**
* Optional. Cleanup policies for this repository. Cleanup policies indicate when certain package
* versions can be automatically deleted. Map keys are policy IDs supplied by users during policy
* creation. They must unique within a repository and be under 128 characters in length.
* @return value or {@code null} for none
*/
public java.util.Map getCleanupPolicies() {
return cleanupPolicies;
}
/**
* Optional. Cleanup policies for this repository. Cleanup policies indicate when certain package
* versions can be automatically deleted. Map keys are policy IDs supplied by users during policy
* creation. They must unique within a repository and be under 128 characters in length.
* @param cleanupPolicies cleanupPolicies or {@code null} for none
*/
public Repository setCleanupPolicies(java.util.Map cleanupPolicies) {
this.cleanupPolicies = cleanupPolicies;
return this;
}
/**
* Optional. If true, the cleanup pipeline is prevented from deleting versions in this repository.
* @return value or {@code null} for none
*/
public java.lang.Boolean getCleanupPolicyDryRun() {
return cleanupPolicyDryRun;
}
/**
* Optional. If true, the cleanup pipeline is prevented from deleting versions in this repository.
* @param cleanupPolicyDryRun cleanupPolicyDryRun or {@code null} for none
*/
public Repository setCleanupPolicyDryRun(java.lang.Boolean cleanupPolicyDryRun) {
this.cleanupPolicyDryRun = cleanupPolicyDryRun;
return this;
}
/**
* Output only. The time when the repository was created.
* @return value or {@code null} for none
*/
public String getCreateTime() {
return createTime;
}
/**
* Output only. The time when the repository was created.
* @param createTime createTime or {@code null} for none
*/
public Repository setCreateTime(String createTime) {
this.createTime = createTime;
return this;
}
/**
* The user-provided description of the repository.
* @return value or {@code null} for none
*/
public java.lang.String getDescription() {
return description;
}
/**
* The user-provided description of the repository.
* @param description description or {@code null} for none
*/
public Repository setDescription(java.lang.String description) {
this.description = description;
return this;
}
/**
* Optional. If this is true, an unspecified repo type will be treated as error rather than
* defaulting to standard.
* @return value or {@code null} for none
*/
public java.lang.Boolean getDisallowUnspecifiedMode() {
return disallowUnspecifiedMode;
}
/**
* Optional. If this is true, an unspecified repo type will be treated as error rather than
* defaulting to standard.
* @param disallowUnspecifiedMode disallowUnspecifiedMode or {@code null} for none
*/
public Repository setDisallowUnspecifiedMode(java.lang.Boolean disallowUnspecifiedMode) {
this.disallowUnspecifiedMode = disallowUnspecifiedMode;
return this;
}
/**
* Docker repository config contains repository level configuration for the repositories of docker
* type.
* @return value or {@code null} for none
*/
public DockerRepositoryConfig getDockerConfig() {
return dockerConfig;
}
/**
* Docker repository config contains repository level configuration for the repositories of docker
* type.
* @param dockerConfig dockerConfig or {@code null} for none
*/
public Repository setDockerConfig(DockerRepositoryConfig dockerConfig) {
this.dockerConfig = dockerConfig;
return this;
}
/**
* Optional. The format of packages that are stored in the repository.
* @return value or {@code null} for none
*/
public java.lang.String getFormat() {
return format;
}
/**
* Optional. The format of packages that are stored in the repository.
* @param format format or {@code null} for none
*/
public Repository setFormat(java.lang.String format) {
this.format = format;
return this;
}
/**
* The Cloud KMS resource name of the customer managed encryption key that's used to encrypt the
* contents of the Repository. Has the form: `projects/my-project/locations/my-region/keyRings/my-
* kr/cryptoKeys/my-key`. This value may not be changed after the Repository has been created.
* @return value or {@code null} for none
*/
public java.lang.String getKmsKeyName() {
return kmsKeyName;
}
/**
* The Cloud KMS resource name of the customer managed encryption key that's used to encrypt the
* contents of the Repository. Has the form: `projects/my-project/locations/my-region/keyRings/my-
* kr/cryptoKeys/my-key`. This value may not be changed after the Repository has been created.
* @param kmsKeyName kmsKeyName or {@code null} for none
*/
public Repository setKmsKeyName(java.lang.String kmsKeyName) {
this.kmsKeyName = kmsKeyName;
return this;
}
/**
* Labels with user-defined metadata. This field may contain up to 64 entries. Label keys and
* values may be no longer than 63 characters. Label keys must begin with a lowercase letter and
* may only contain lowercase letters, numeric characters, underscores, and dashes.
* @return value or {@code null} for none
*/
public java.util.Map getLabels() {
return labels;
}
/**
* Labels with user-defined metadata. This field may contain up to 64 entries. Label keys and
* values may be no longer than 63 characters. Label keys must begin with a lowercase letter and
* may only contain lowercase letters, numeric characters, underscores, and dashes.
* @param labels labels or {@code null} for none
*/
public Repository setLabels(java.util.Map labels) {
this.labels = labels;
return this;
}
/**
* Maven repository config contains repository level configuration for the repositories of maven
* type.
* @return value or {@code null} for none
*/
public MavenRepositoryConfig getMavenConfig() {
return mavenConfig;
}
/**
* Maven repository config contains repository level configuration for the repositories of maven
* type.
* @param mavenConfig mavenConfig or {@code null} for none
*/
public Repository setMavenConfig(MavenRepositoryConfig mavenConfig) {
this.mavenConfig = mavenConfig;
return this;
}
/**
* Optional. The mode of the repository.
* @return value or {@code null} for none
*/
public java.lang.String getMode() {
return mode;
}
/**
* Optional. The mode of the repository.
* @param mode mode or {@code null} for none
*/
public Repository setMode(java.lang.String mode) {
this.mode = mode;
return this;
}
/**
* The name of the repository, for example: `projects/p1/locations/us-
* central1/repositories/repo1`. For each location in a project, repository names must be unique.
* @return value or {@code null} for none
*/
public java.lang.String getName() {
return name;
}
/**
* The name of the repository, for example: `projects/p1/locations/us-
* central1/repositories/repo1`. For each location in a project, repository names must be unique.
* @param name name or {@code null} for none
*/
public Repository setName(java.lang.String name) {
this.name = name;
return this;
}
/**
* Output only. The repository endpoint, for example: `us-docker.pkg.dev/my-proj/my-repo`.
* @return value or {@code null} for none
*/
public java.lang.String getRegistryUri() {
return registryUri;
}
/**
* Output only. The repository endpoint, for example: `us-docker.pkg.dev/my-proj/my-repo`.
* @param registryUri registryUri or {@code null} for none
*/
public Repository setRegistryUri(java.lang.String registryUri) {
this.registryUri = registryUri;
return this;
}
/**
* Configuration specific for a Remote Repository.
* @return value or {@code null} for none
*/
public RemoteRepositoryConfig getRemoteRepositoryConfig() {
return remoteRepositoryConfig;
}
/**
* Configuration specific for a Remote Repository.
* @param remoteRepositoryConfig remoteRepositoryConfig or {@code null} for none
*/
public Repository setRemoteRepositoryConfig(RemoteRepositoryConfig remoteRepositoryConfig) {
this.remoteRepositoryConfig = remoteRepositoryConfig;
return this;
}
/**
* Output only. If set, the repository satisfies physical zone isolation.
* @return value or {@code null} for none
*/
public java.lang.Boolean getSatisfiesPzi() {
return satisfiesPzi;
}
/**
* Output only. If set, the repository satisfies physical zone isolation.
* @param satisfiesPzi satisfiesPzi or {@code null} for none
*/
public Repository setSatisfiesPzi(java.lang.Boolean satisfiesPzi) {
this.satisfiesPzi = satisfiesPzi;
return this;
}
/**
* Output only. If set, the repository satisfies physical zone separation.
* @return value or {@code null} for none
*/
public java.lang.Boolean getSatisfiesPzs() {
return satisfiesPzs;
}
/**
* Output only. If set, the repository satisfies physical zone separation.
* @param satisfiesPzs satisfiesPzs or {@code null} for none
*/
public Repository setSatisfiesPzs(java.lang.Boolean satisfiesPzs) {
this.satisfiesPzs = satisfiesPzs;
return this;
}
/**
* Output only. The size, in bytes, of all artifact storage in this repository. Repositories that
* are generally available or in public preview use this to calculate storage costs.
* @return value or {@code null} for none
*/
public java.lang.Long getSizeBytes() {
return sizeBytes;
}
/**
* Output only. The size, in bytes, of all artifact storage in this repository. Repositories that
* are generally available or in public preview use this to calculate storage costs.
* @param sizeBytes sizeBytes or {@code null} for none
*/
public Repository setSizeBytes(java.lang.Long sizeBytes) {
this.sizeBytes = sizeBytes;
return this;
}
/**
* Output only. The time when the repository was last updated.
* @return value or {@code null} for none
*/
public String getUpdateTime() {
return updateTime;
}
/**
* Output only. The time when the repository was last updated.
* @param updateTime updateTime or {@code null} for none
*/
public Repository setUpdateTime(String updateTime) {
this.updateTime = updateTime;
return this;
}
/**
* Configuration specific for a Virtual Repository.
* @return value or {@code null} for none
*/
public VirtualRepositoryConfig getVirtualRepositoryConfig() {
return virtualRepositoryConfig;
}
/**
* Configuration specific for a Virtual Repository.
* @param virtualRepositoryConfig virtualRepositoryConfig or {@code null} for none
*/
public Repository setVirtualRepositoryConfig(VirtualRepositoryConfig virtualRepositoryConfig) {
this.virtualRepositoryConfig = virtualRepositoryConfig;
return this;
}
/**
* Optional. Config and state for vulnerability scanning of resources within this Repository.
* @return value or {@code null} for none
*/
public VulnerabilityScanningConfig getVulnerabilityScanningConfig() {
return vulnerabilityScanningConfig;
}
/**
* Optional. Config and state for vulnerability scanning of resources within this Repository.
* @param vulnerabilityScanningConfig vulnerabilityScanningConfig or {@code null} for none
*/
public Repository setVulnerabilityScanningConfig(VulnerabilityScanningConfig vulnerabilityScanningConfig) {
this.vulnerabilityScanningConfig = vulnerabilityScanningConfig;
return this;
}
@Override
public Repository set(String fieldName, Object value) {
return (Repository) super.set(fieldName, value);
}
@Override
public Repository clone() {
return (Repository) super.clone();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy