com.amazonaws.services.ecr.model.CreatePullThroughCacheRuleRequest Maven / Gradle / Ivy
Show all versions of aws-java-sdk-ecr Show documentation
/*
* Copyright 2019-2024 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
* the License. A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file 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.
*/
package com.amazonaws.services.ecr.model;
import java.io.Serializable;
import javax.annotation.Generated;
import com.amazonaws.AmazonWebServiceRequest;
/**
*
* @see AWS API
* Documentation
*/
@Generated("com.amazonaws:aws-java-sdk-code-generator")
public class CreatePullThroughCacheRuleRequest extends com.amazonaws.AmazonWebServiceRequest implements Serializable, Cloneable {
/**
*
* The repository name prefix to use when caching images from the source registry.
*
*/
private String ecrRepositoryPrefix;
/**
*
* The registry URL of the upstream public registry to use as the source for the pull through cache rule. The
* following is the syntax to use for each supported upstream registry.
*
*
* -
*
* Amazon ECR Public (ecr-public
) - public.ecr.aws
*
*
* -
*
* Docker Hub (docker-hub
) - registry-1.docker.io
*
*
* -
*
* Quay (quay
) - quay.io
*
*
* -
*
* Kubernetes (k8s
) - registry.k8s.io
*
*
* -
*
* GitHub Container Registry (github-container-registry
) - ghcr.io
*
*
* -
*
* Microsoft Azure Container Registry (azure-container-registry
) -
* <custom>.azurecr.io
*
*
*
*/
private String upstreamRegistryUrl;
/**
*
* The Amazon Web Services account ID associated with the registry to create the pull through cache rule for. If you
* do not specify a registry, the default registry is assumed.
*
*/
private String registryId;
/**
*
* The name of the upstream registry.
*
*/
private String upstreamRegistry;
/**
*
* The Amazon Resource Name (ARN) of the Amazon Web Services Secrets Manager secret that identifies the credentials
* to authenticate to the upstream registry.
*
*/
private String credentialArn;
/**
*
* The repository name prefix to use when caching images from the source registry.
*
*
* @param ecrRepositoryPrefix
* The repository name prefix to use when caching images from the source registry.
*/
public void setEcrRepositoryPrefix(String ecrRepositoryPrefix) {
this.ecrRepositoryPrefix = ecrRepositoryPrefix;
}
/**
*
* The repository name prefix to use when caching images from the source registry.
*
*
* @return The repository name prefix to use when caching images from the source registry.
*/
public String getEcrRepositoryPrefix() {
return this.ecrRepositoryPrefix;
}
/**
*
* The repository name prefix to use when caching images from the source registry.
*
*
* @param ecrRepositoryPrefix
* The repository name prefix to use when caching images from the source registry.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreatePullThroughCacheRuleRequest withEcrRepositoryPrefix(String ecrRepositoryPrefix) {
setEcrRepositoryPrefix(ecrRepositoryPrefix);
return this;
}
/**
*
* The registry URL of the upstream public registry to use as the source for the pull through cache rule. The
* following is the syntax to use for each supported upstream registry.
*
*
* -
*
* Amazon ECR Public (ecr-public
) - public.ecr.aws
*
*
* -
*
* Docker Hub (docker-hub
) - registry-1.docker.io
*
*
* -
*
* Quay (quay
) - quay.io
*
*
* -
*
* Kubernetes (k8s
) - registry.k8s.io
*
*
* -
*
* GitHub Container Registry (github-container-registry
) - ghcr.io
*
*
* -
*
* Microsoft Azure Container Registry (azure-container-registry
) -
* <custom>.azurecr.io
*
*
*
*
* @param upstreamRegistryUrl
* The registry URL of the upstream public registry to use as the source for the pull through cache rule. The
* following is the syntax to use for each supported upstream registry.
*
* -
*
* Amazon ECR Public (ecr-public
) - public.ecr.aws
*
*
* -
*
* Docker Hub (docker-hub
) - registry-1.docker.io
*
*
* -
*
* Quay (quay
) - quay.io
*
*
* -
*
* Kubernetes (k8s
) - registry.k8s.io
*
*
* -
*
* GitHub Container Registry (github-container-registry
) - ghcr.io
*
*
* -
*
* Microsoft Azure Container Registry (azure-container-registry
) -
* <custom>.azurecr.io
*
*
*/
public void setUpstreamRegistryUrl(String upstreamRegistryUrl) {
this.upstreamRegistryUrl = upstreamRegistryUrl;
}
/**
*
* The registry URL of the upstream public registry to use as the source for the pull through cache rule. The
* following is the syntax to use for each supported upstream registry.
*
*
* -
*
* Amazon ECR Public (ecr-public
) - public.ecr.aws
*
*
* -
*
* Docker Hub (docker-hub
) - registry-1.docker.io
*
*
* -
*
* Quay (quay
) - quay.io
*
*
* -
*
* Kubernetes (k8s
) - registry.k8s.io
*
*
* -
*
* GitHub Container Registry (github-container-registry
) - ghcr.io
*
*
* -
*
* Microsoft Azure Container Registry (azure-container-registry
) -
* <custom>.azurecr.io
*
*
*
*
* @return The registry URL of the upstream public registry to use as the source for the pull through cache rule.
* The following is the syntax to use for each supported upstream registry.
*
* -
*
* Amazon ECR Public (ecr-public
) - public.ecr.aws
*
*
* -
*
* Docker Hub (docker-hub
) - registry-1.docker.io
*
*
* -
*
* Quay (quay
) - quay.io
*
*
* -
*
* Kubernetes (k8s
) - registry.k8s.io
*
*
* -
*
* GitHub Container Registry (github-container-registry
) - ghcr.io
*
*
* -
*
* Microsoft Azure Container Registry (azure-container-registry
) -
* <custom>.azurecr.io
*
*
*/
public String getUpstreamRegistryUrl() {
return this.upstreamRegistryUrl;
}
/**
*
* The registry URL of the upstream public registry to use as the source for the pull through cache rule. The
* following is the syntax to use for each supported upstream registry.
*
*
* -
*
* Amazon ECR Public (ecr-public
) - public.ecr.aws
*
*
* -
*
* Docker Hub (docker-hub
) - registry-1.docker.io
*
*
* -
*
* Quay (quay
) - quay.io
*
*
* -
*
* Kubernetes (k8s
) - registry.k8s.io
*
*
* -
*
* GitHub Container Registry (github-container-registry
) - ghcr.io
*
*
* -
*
* Microsoft Azure Container Registry (azure-container-registry
) -
* <custom>.azurecr.io
*
*
*
*
* @param upstreamRegistryUrl
* The registry URL of the upstream public registry to use as the source for the pull through cache rule. The
* following is the syntax to use for each supported upstream registry.
*
* -
*
* Amazon ECR Public (ecr-public
) - public.ecr.aws
*
*
* -
*
* Docker Hub (docker-hub
) - registry-1.docker.io
*
*
* -
*
* Quay (quay
) - quay.io
*
*
* -
*
* Kubernetes (k8s
) - registry.k8s.io
*
*
* -
*
* GitHub Container Registry (github-container-registry
) - ghcr.io
*
*
* -
*
* Microsoft Azure Container Registry (azure-container-registry
) -
* <custom>.azurecr.io
*
*
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreatePullThroughCacheRuleRequest withUpstreamRegistryUrl(String upstreamRegistryUrl) {
setUpstreamRegistryUrl(upstreamRegistryUrl);
return this;
}
/**
*
* The Amazon Web Services account ID associated with the registry to create the pull through cache rule for. If you
* do not specify a registry, the default registry is assumed.
*
*
* @param registryId
* The Amazon Web Services account ID associated with the registry to create the pull through cache rule for.
* If you do not specify a registry, the default registry is assumed.
*/
public void setRegistryId(String registryId) {
this.registryId = registryId;
}
/**
*
* The Amazon Web Services account ID associated with the registry to create the pull through cache rule for. If you
* do not specify a registry, the default registry is assumed.
*
*
* @return The Amazon Web Services account ID associated with the registry to create the pull through cache rule
* for. If you do not specify a registry, the default registry is assumed.
*/
public String getRegistryId() {
return this.registryId;
}
/**
*
* The Amazon Web Services account ID associated with the registry to create the pull through cache rule for. If you
* do not specify a registry, the default registry is assumed.
*
*
* @param registryId
* The Amazon Web Services account ID associated with the registry to create the pull through cache rule for.
* If you do not specify a registry, the default registry is assumed.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreatePullThroughCacheRuleRequest withRegistryId(String registryId) {
setRegistryId(registryId);
return this;
}
/**
*
* The name of the upstream registry.
*
*
* @param upstreamRegistry
* The name of the upstream registry.
* @see UpstreamRegistry
*/
public void setUpstreamRegistry(String upstreamRegistry) {
this.upstreamRegistry = upstreamRegistry;
}
/**
*
* The name of the upstream registry.
*
*
* @return The name of the upstream registry.
* @see UpstreamRegistry
*/
public String getUpstreamRegistry() {
return this.upstreamRegistry;
}
/**
*
* The name of the upstream registry.
*
*
* @param upstreamRegistry
* The name of the upstream registry.
* @return Returns a reference to this object so that method calls can be chained together.
* @see UpstreamRegistry
*/
public CreatePullThroughCacheRuleRequest withUpstreamRegistry(String upstreamRegistry) {
setUpstreamRegistry(upstreamRegistry);
return this;
}
/**
*
* The name of the upstream registry.
*
*
* @param upstreamRegistry
* The name of the upstream registry.
* @return Returns a reference to this object so that method calls can be chained together.
* @see UpstreamRegistry
*/
public CreatePullThroughCacheRuleRequest withUpstreamRegistry(UpstreamRegistry upstreamRegistry) {
this.upstreamRegistry = upstreamRegistry.toString();
return this;
}
/**
*
* The Amazon Resource Name (ARN) of the Amazon Web Services Secrets Manager secret that identifies the credentials
* to authenticate to the upstream registry.
*
*
* @param credentialArn
* The Amazon Resource Name (ARN) of the Amazon Web Services Secrets Manager secret that identifies the
* credentials to authenticate to the upstream registry.
*/
public void setCredentialArn(String credentialArn) {
this.credentialArn = credentialArn;
}
/**
*
* The Amazon Resource Name (ARN) of the Amazon Web Services Secrets Manager secret that identifies the credentials
* to authenticate to the upstream registry.
*
*
* @return The Amazon Resource Name (ARN) of the Amazon Web Services Secrets Manager secret that identifies the
* credentials to authenticate to the upstream registry.
*/
public String getCredentialArn() {
return this.credentialArn;
}
/**
*
* The Amazon Resource Name (ARN) of the Amazon Web Services Secrets Manager secret that identifies the credentials
* to authenticate to the upstream registry.
*
*
* @param credentialArn
* The Amazon Resource Name (ARN) of the Amazon Web Services Secrets Manager secret that identifies the
* credentials to authenticate to the upstream registry.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreatePullThroughCacheRuleRequest withCredentialArn(String credentialArn) {
setCredentialArn(credentialArn);
return this;
}
/**
* Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be
* redacted from this string using a placeholder value.
*
* @return A string representation of this object.
*
* @see java.lang.Object#toString()
*/
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("{");
if (getEcrRepositoryPrefix() != null)
sb.append("EcrRepositoryPrefix: ").append(getEcrRepositoryPrefix()).append(",");
if (getUpstreamRegistryUrl() != null)
sb.append("UpstreamRegistryUrl: ").append(getUpstreamRegistryUrl()).append(",");
if (getRegistryId() != null)
sb.append("RegistryId: ").append(getRegistryId()).append(",");
if (getUpstreamRegistry() != null)
sb.append("UpstreamRegistry: ").append(getUpstreamRegistry()).append(",");
if (getCredentialArn() != null)
sb.append("CredentialArn: ").append(getCredentialArn());
sb.append("}");
return sb.toString();
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (obj instanceof CreatePullThroughCacheRuleRequest == false)
return false;
CreatePullThroughCacheRuleRequest other = (CreatePullThroughCacheRuleRequest) obj;
if (other.getEcrRepositoryPrefix() == null ^ this.getEcrRepositoryPrefix() == null)
return false;
if (other.getEcrRepositoryPrefix() != null && other.getEcrRepositoryPrefix().equals(this.getEcrRepositoryPrefix()) == false)
return false;
if (other.getUpstreamRegistryUrl() == null ^ this.getUpstreamRegistryUrl() == null)
return false;
if (other.getUpstreamRegistryUrl() != null && other.getUpstreamRegistryUrl().equals(this.getUpstreamRegistryUrl()) == false)
return false;
if (other.getRegistryId() == null ^ this.getRegistryId() == null)
return false;
if (other.getRegistryId() != null && other.getRegistryId().equals(this.getRegistryId()) == false)
return false;
if (other.getUpstreamRegistry() == null ^ this.getUpstreamRegistry() == null)
return false;
if (other.getUpstreamRegistry() != null && other.getUpstreamRegistry().equals(this.getUpstreamRegistry()) == false)
return false;
if (other.getCredentialArn() == null ^ this.getCredentialArn() == null)
return false;
if (other.getCredentialArn() != null && other.getCredentialArn().equals(this.getCredentialArn()) == false)
return false;
return true;
}
@Override
public int hashCode() {
final int prime = 31;
int hashCode = 1;
hashCode = prime * hashCode + ((getEcrRepositoryPrefix() == null) ? 0 : getEcrRepositoryPrefix().hashCode());
hashCode = prime * hashCode + ((getUpstreamRegistryUrl() == null) ? 0 : getUpstreamRegistryUrl().hashCode());
hashCode = prime * hashCode + ((getRegistryId() == null) ? 0 : getRegistryId().hashCode());
hashCode = prime * hashCode + ((getUpstreamRegistry() == null) ? 0 : getUpstreamRegistry().hashCode());
hashCode = prime * hashCode + ((getCredentialArn() == null) ? 0 : getCredentialArn().hashCode());
return hashCode;
}
@Override
public CreatePullThroughCacheRuleRequest clone() {
return (CreatePullThroughCacheRuleRequest) super.clone();
}
}