software.amazon.awscdk.services.transfer.CfnServer Maven / Gradle / Ivy
package software.amazon.awscdk.services.transfer;
/**
* A CloudFormation `AWS::Transfer::Server`.
*/
@javax.annotation.Generated(value = "jsii-pacmak/1.28.0 (build 1801f4f)", date = "2021-04-13T16:59:16.664Z")
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@software.amazon.jsii.Jsii(module = software.amazon.awscdk.services.transfer.$Module.class, fqn = "@aws-cdk/aws-transfer.CfnServer")
public class CfnServer extends software.amazon.awscdk.core.CfnResource implements software.amazon.awscdk.core.IInspectable {
protected CfnServer(final software.amazon.jsii.JsiiObjectRef objRef) {
super(objRef);
}
protected CfnServer(final software.amazon.jsii.JsiiObject.InitializationMode initializationMode) {
super(initializationMode);
}
static {
CFN_RESOURCE_TYPE_NAME = software.amazon.jsii.JsiiObject.jsiiStaticGet(software.amazon.awscdk.services.transfer.CfnServer.class, "CFN_RESOURCE_TYPE_NAME", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
}
/**
* Create a new `AWS::Transfer::Server`.
*
* @param scope - scope in which this resource is defined. This parameter is required.
* @param id - scoped id of the resource. This parameter is required.
* @param props - resource properties.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public CfnServer(final @org.jetbrains.annotations.NotNull software.amazon.awscdk.core.Construct scope, final @org.jetbrains.annotations.NotNull java.lang.String id, final @org.jetbrains.annotations.Nullable software.amazon.awscdk.services.transfer.CfnServerProps props) {
super(software.amazon.jsii.JsiiObject.InitializationMode.JSII);
software.amazon.jsii.JsiiEngine.getInstance().createNewObject(this, new Object[] { java.util.Objects.requireNonNull(scope, "scope is required"), java.util.Objects.requireNonNull(id, "id is required"), props });
}
/**
* Create a new `AWS::Transfer::Server`.
*
* @param scope - scope in which this resource is defined. This parameter is required.
* @param id - scoped id of the resource. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public CfnServer(final @org.jetbrains.annotations.NotNull software.amazon.awscdk.core.Construct scope, final @org.jetbrains.annotations.NotNull java.lang.String id) {
super(software.amazon.jsii.JsiiObject.InitializationMode.JSII);
software.amazon.jsii.JsiiEngine.getInstance().createNewObject(this, new Object[] { java.util.Objects.requireNonNull(scope, "scope is required"), java.util.Objects.requireNonNull(id, "id is required") });
}
/**
* (experimental) Examines the CloudFormation resource and discloses attributes.
*
* @param inspector - tree inspector to collect and process attributes. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
@Override
public void inspect(final @org.jetbrains.annotations.NotNull software.amazon.awscdk.core.TreeInspector inspector) {
software.amazon.jsii.Kernel.call(this, "inspect", software.amazon.jsii.NativeType.VOID, new Object[] { java.util.Objects.requireNonNull(inspector, "inspector is required") });
}
/**
* @param props This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@Override
protected @org.jetbrains.annotations.NotNull java.util.Map renderProperties(final @org.jetbrains.annotations.NotNull java.util.Map props) {
return java.util.Collections.unmodifiableMap(software.amazon.jsii.Kernel.call(this, "renderProperties", software.amazon.jsii.NativeType.mapOf(software.amazon.jsii.NativeType.forClass(java.lang.Object.class)), new Object[] { java.util.Objects.requireNonNull(props, "props is required") }));
}
/**
* The CloudFormation resource type name for this resource class.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public final static java.lang.String CFN_RESOURCE_TYPE_NAME;
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public @org.jetbrains.annotations.NotNull java.lang.String getAttrArn() {
return software.amazon.jsii.Kernel.get(this, "attrArn", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public @org.jetbrains.annotations.NotNull java.lang.String getAttrServerId() {
return software.amazon.jsii.Kernel.get(this, "attrServerId", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
}
/**
*/
@Override
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
protected @org.jetbrains.annotations.NotNull java.util.Map getCfnProperties() {
return java.util.Collections.unmodifiableMap(software.amazon.jsii.Kernel.get(this, "cfnProperties", software.amazon.jsii.NativeType.mapOf(software.amazon.jsii.NativeType.forClass(java.lang.Object.class))));
}
/**
* `AWS::Transfer::Server.Tags`.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public @org.jetbrains.annotations.NotNull software.amazon.awscdk.core.TagManager getTags() {
return software.amazon.jsii.Kernel.get(this, "tags", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.core.TagManager.class));
}
/**
* `AWS::Transfer::Server.Certificate`.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public @org.jetbrains.annotations.Nullable java.lang.String getCertificate() {
return software.amazon.jsii.Kernel.get(this, "certificate", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
}
/**
* `AWS::Transfer::Server.Certificate`.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public void setCertificate(final @org.jetbrains.annotations.Nullable java.lang.String value) {
software.amazon.jsii.Kernel.set(this, "certificate", value);
}
/**
* `AWS::Transfer::Server.Domain`.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public @org.jetbrains.annotations.Nullable java.lang.String getDomain() {
return software.amazon.jsii.Kernel.get(this, "domain", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
}
/**
* `AWS::Transfer::Server.Domain`.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public void setDomain(final @org.jetbrains.annotations.Nullable java.lang.String value) {
software.amazon.jsii.Kernel.set(this, "domain", value);
}
/**
* `AWS::Transfer::Server.EndpointDetails`.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public @org.jetbrains.annotations.Nullable java.lang.Object getEndpointDetails() {
return software.amazon.jsii.Kernel.get(this, "endpointDetails", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
* `AWS::Transfer::Server.EndpointDetails`.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public void setEndpointDetails(final @org.jetbrains.annotations.Nullable software.amazon.awscdk.services.transfer.CfnServer.EndpointDetailsProperty value) {
software.amazon.jsii.Kernel.set(this, "endpointDetails", value);
}
/**
* `AWS::Transfer::Server.EndpointDetails`.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public void setEndpointDetails(final @org.jetbrains.annotations.Nullable software.amazon.awscdk.core.IResolvable value) {
software.amazon.jsii.Kernel.set(this, "endpointDetails", value);
}
/**
* `AWS::Transfer::Server.EndpointType`.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public @org.jetbrains.annotations.Nullable java.lang.String getEndpointType() {
return software.amazon.jsii.Kernel.get(this, "endpointType", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
}
/**
* `AWS::Transfer::Server.EndpointType`.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public void setEndpointType(final @org.jetbrains.annotations.Nullable java.lang.String value) {
software.amazon.jsii.Kernel.set(this, "endpointType", value);
}
/**
* `AWS::Transfer::Server.IdentityProviderDetails`.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public @org.jetbrains.annotations.Nullable java.lang.Object getIdentityProviderDetails() {
return software.amazon.jsii.Kernel.get(this, "identityProviderDetails", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
* `AWS::Transfer::Server.IdentityProviderDetails`.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public void setIdentityProviderDetails(final @org.jetbrains.annotations.Nullable software.amazon.awscdk.core.IResolvable value) {
software.amazon.jsii.Kernel.set(this, "identityProviderDetails", value);
}
/**
* `AWS::Transfer::Server.IdentityProviderDetails`.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public void setIdentityProviderDetails(final @org.jetbrains.annotations.Nullable software.amazon.awscdk.services.transfer.CfnServer.IdentityProviderDetailsProperty value) {
software.amazon.jsii.Kernel.set(this, "identityProviderDetails", value);
}
/**
* `AWS::Transfer::Server.IdentityProviderType`.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public @org.jetbrains.annotations.Nullable java.lang.String getIdentityProviderType() {
return software.amazon.jsii.Kernel.get(this, "identityProviderType", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
}
/**
* `AWS::Transfer::Server.IdentityProviderType`.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public void setIdentityProviderType(final @org.jetbrains.annotations.Nullable java.lang.String value) {
software.amazon.jsii.Kernel.set(this, "identityProviderType", value);
}
/**
* `AWS::Transfer::Server.LoggingRole`.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public @org.jetbrains.annotations.Nullable java.lang.String getLoggingRole() {
return software.amazon.jsii.Kernel.get(this, "loggingRole", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
}
/**
* `AWS::Transfer::Server.LoggingRole`.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public void setLoggingRole(final @org.jetbrains.annotations.Nullable java.lang.String value) {
software.amazon.jsii.Kernel.set(this, "loggingRole", value);
}
/**
* `AWS::Transfer::Server.Protocols`.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public @org.jetbrains.annotations.Nullable java.util.List getProtocols() {
return java.util.Optional.ofNullable((java.util.List)(software.amazon.jsii.Kernel.get(this, "protocols", software.amazon.jsii.NativeType.listOf(software.amazon.jsii.NativeType.forClass(java.lang.String.class))))).map(java.util.Collections::unmodifiableList).orElse(null);
}
/**
* `AWS::Transfer::Server.Protocols`.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public void setProtocols(final @org.jetbrains.annotations.Nullable java.util.List value) {
software.amazon.jsii.Kernel.set(this, "protocols", value);
}
/**
* `AWS::Transfer::Server.SecurityPolicyName`.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public @org.jetbrains.annotations.Nullable java.lang.String getSecurityPolicyName() {
return software.amazon.jsii.Kernel.get(this, "securityPolicyName", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
}
/**
* `AWS::Transfer::Server.SecurityPolicyName`.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public void setSecurityPolicyName(final @org.jetbrains.annotations.Nullable java.lang.String value) {
software.amazon.jsii.Kernel.set(this, "securityPolicyName", value);
}
/**
*/
@software.amazon.jsii.Jsii(module = software.amazon.awscdk.services.transfer.$Module.class, fqn = "@aws-cdk/aws-transfer.CfnServer.EndpointDetailsProperty")
@software.amazon.jsii.Jsii.Proxy(EndpointDetailsProperty.Jsii$Proxy.class)
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public static interface EndpointDetailsProperty extends software.amazon.jsii.JsiiSerializable {
/**
* `CfnServer.EndpointDetailsProperty.AddressAllocationIds`.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.util.List getAddressAllocationIds() {
return null;
}
/**
* `CfnServer.EndpointDetailsProperty.SecurityGroupIds`.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.util.List getSecurityGroupIds() {
return null;
}
/**
* `CfnServer.EndpointDetailsProperty.SubnetIds`.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.util.List getSubnetIds() {
return null;
}
/**
* `CfnServer.EndpointDetailsProperty.VpcEndpointId`.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.String getVpcEndpointId() {
return null;
}
/**
* `CfnServer.EndpointDetailsProperty.VpcId`.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.String getVpcId() {
return null;
}
/**
* @return a {@link Builder} of {@link EndpointDetailsProperty}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
static Builder builder() {
return new Builder();
}
/**
* A builder for {@link EndpointDetailsProperty}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public static final class Builder implements software.amazon.jsii.Builder {
private java.util.List addressAllocationIds;
private java.util.List securityGroupIds;
private java.util.List subnetIds;
private java.lang.String vpcEndpointId;
private java.lang.String vpcId;
/**
* Sets the value of {@link EndpointDetailsProperty#getAddressAllocationIds}
* @param addressAllocationIds `CfnServer.EndpointDetailsProperty.AddressAllocationIds`.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder addressAllocationIds(java.util.List addressAllocationIds) {
this.addressAllocationIds = addressAllocationIds;
return this;
}
/**
* Sets the value of {@link EndpointDetailsProperty#getSecurityGroupIds}
* @param securityGroupIds `CfnServer.EndpointDetailsProperty.SecurityGroupIds`.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder securityGroupIds(java.util.List securityGroupIds) {
this.securityGroupIds = securityGroupIds;
return this;
}
/**
* Sets the value of {@link EndpointDetailsProperty#getSubnetIds}
* @param subnetIds `CfnServer.EndpointDetailsProperty.SubnetIds`.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder subnetIds(java.util.List subnetIds) {
this.subnetIds = subnetIds;
return this;
}
/**
* Sets the value of {@link EndpointDetailsProperty#getVpcEndpointId}
* @param vpcEndpointId `CfnServer.EndpointDetailsProperty.VpcEndpointId`.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder vpcEndpointId(java.lang.String vpcEndpointId) {
this.vpcEndpointId = vpcEndpointId;
return this;
}
/**
* Sets the value of {@link EndpointDetailsProperty#getVpcId}
* @param vpcId `CfnServer.EndpointDetailsProperty.VpcId`.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder vpcId(java.lang.String vpcId) {
this.vpcId = vpcId;
return this;
}
/**
* Builds the configured instance.
* @return a new instance of {@link EndpointDetailsProperty}
* @throws NullPointerException if any required attribute was not provided
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@Override
public EndpointDetailsProperty build() {
return new Jsii$Proxy(addressAllocationIds, securityGroupIds, subnetIds, vpcEndpointId, vpcId);
}
}
/**
* An implementation for {@link EndpointDetailsProperty}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@software.amazon.jsii.Internal
final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements EndpointDetailsProperty {
private final java.util.List addressAllocationIds;
private final java.util.List securityGroupIds;
private final java.util.List subnetIds;
private final java.lang.String vpcEndpointId;
private final java.lang.String vpcId;
/**
* Constructor that initializes the object based on values retrieved from the JsiiObject.
* @param objRef Reference to the JSII managed object.
*/
protected Jsii$Proxy(final software.amazon.jsii.JsiiObjectRef objRef) {
super(objRef);
this.addressAllocationIds = software.amazon.jsii.Kernel.get(this, "addressAllocationIds", software.amazon.jsii.NativeType.listOf(software.amazon.jsii.NativeType.forClass(java.lang.String.class)));
this.securityGroupIds = software.amazon.jsii.Kernel.get(this, "securityGroupIds", software.amazon.jsii.NativeType.listOf(software.amazon.jsii.NativeType.forClass(java.lang.String.class)));
this.subnetIds = software.amazon.jsii.Kernel.get(this, "subnetIds", software.amazon.jsii.NativeType.listOf(software.amazon.jsii.NativeType.forClass(java.lang.String.class)));
this.vpcEndpointId = software.amazon.jsii.Kernel.get(this, "vpcEndpointId", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.vpcId = software.amazon.jsii.Kernel.get(this, "vpcId", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
}
/**
* Constructor that initializes the object based on literal property values passed by the {@link Builder}.
*/
protected Jsii$Proxy(final java.util.List addressAllocationIds, final java.util.List securityGroupIds, final java.util.List subnetIds, final java.lang.String vpcEndpointId, final java.lang.String vpcId) {
super(software.amazon.jsii.JsiiObject.InitializationMode.JSII);
this.addressAllocationIds = addressAllocationIds;
this.securityGroupIds = securityGroupIds;
this.subnetIds = subnetIds;
this.vpcEndpointId = vpcEndpointId;
this.vpcId = vpcId;
}
@Override
public final java.util.List getAddressAllocationIds() {
return this.addressAllocationIds;
}
@Override
public final java.util.List getSecurityGroupIds() {
return this.securityGroupIds;
}
@Override
public final java.util.List getSubnetIds() {
return this.subnetIds;
}
@Override
public final java.lang.String getVpcEndpointId() {
return this.vpcEndpointId;
}
@Override
public final java.lang.String getVpcId() {
return this.vpcId;
}
@Override
@software.amazon.jsii.Internal
public com.fasterxml.jackson.databind.JsonNode $jsii$toJson() {
final com.fasterxml.jackson.databind.ObjectMapper om = software.amazon.jsii.JsiiObjectMapper.INSTANCE;
final com.fasterxml.jackson.databind.node.ObjectNode data = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
if (this.getAddressAllocationIds() != null) {
data.set("addressAllocationIds", om.valueToTree(this.getAddressAllocationIds()));
}
if (this.getSecurityGroupIds() != null) {
data.set("securityGroupIds", om.valueToTree(this.getSecurityGroupIds()));
}
if (this.getSubnetIds() != null) {
data.set("subnetIds", om.valueToTree(this.getSubnetIds()));
}
if (this.getVpcEndpointId() != null) {
data.set("vpcEndpointId", om.valueToTree(this.getVpcEndpointId()));
}
if (this.getVpcId() != null) {
data.set("vpcId", om.valueToTree(this.getVpcId()));
}
final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
struct.set("fqn", om.valueToTree("@aws-cdk/aws-transfer.CfnServer.EndpointDetailsProperty"));
struct.set("data", data);
final com.fasterxml.jackson.databind.node.ObjectNode obj = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
obj.set("$jsii.struct", struct);
return obj;
}
@Override
public final boolean equals(final Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
EndpointDetailsProperty.Jsii$Proxy that = (EndpointDetailsProperty.Jsii$Proxy) o;
if (this.addressAllocationIds != null ? !this.addressAllocationIds.equals(that.addressAllocationIds) : that.addressAllocationIds != null) return false;
if (this.securityGroupIds != null ? !this.securityGroupIds.equals(that.securityGroupIds) : that.securityGroupIds != null) return false;
if (this.subnetIds != null ? !this.subnetIds.equals(that.subnetIds) : that.subnetIds != null) return false;
if (this.vpcEndpointId != null ? !this.vpcEndpointId.equals(that.vpcEndpointId) : that.vpcEndpointId != null) return false;
return this.vpcId != null ? this.vpcId.equals(that.vpcId) : that.vpcId == null;
}
@Override
public final int hashCode() {
int result = this.addressAllocationIds != null ? this.addressAllocationIds.hashCode() : 0;
result = 31 * result + (this.securityGroupIds != null ? this.securityGroupIds.hashCode() : 0);
result = 31 * result + (this.subnetIds != null ? this.subnetIds.hashCode() : 0);
result = 31 * result + (this.vpcEndpointId != null ? this.vpcEndpointId.hashCode() : 0);
result = 31 * result + (this.vpcId != null ? this.vpcId.hashCode() : 0);
return result;
}
}
}
/**
*/
@software.amazon.jsii.Jsii(module = software.amazon.awscdk.services.transfer.$Module.class, fqn = "@aws-cdk/aws-transfer.CfnServer.IdentityProviderDetailsProperty")
@software.amazon.jsii.Jsii.Proxy(IdentityProviderDetailsProperty.Jsii$Proxy.class)
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public static interface IdentityProviderDetailsProperty extends software.amazon.jsii.JsiiSerializable {
/**
* `CfnServer.IdentityProviderDetailsProperty.InvocationRole`.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@org.jetbrains.annotations.NotNull java.lang.String getInvocationRole();
/**
* `CfnServer.IdentityProviderDetailsProperty.Url`.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@org.jetbrains.annotations.NotNull java.lang.String getUrl();
/**
* @return a {@link Builder} of {@link IdentityProviderDetailsProperty}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
static Builder builder() {
return new Builder();
}
/**
* A builder for {@link IdentityProviderDetailsProperty}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public static final class Builder implements software.amazon.jsii.Builder {
private java.lang.String invocationRole;
private java.lang.String url;
/**
* Sets the value of {@link IdentityProviderDetailsProperty#getInvocationRole}
* @param invocationRole `CfnServer.IdentityProviderDetailsProperty.InvocationRole`. This parameter is required.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder invocationRole(java.lang.String invocationRole) {
this.invocationRole = invocationRole;
return this;
}
/**
* Sets the value of {@link IdentityProviderDetailsProperty#getUrl}
* @param url `CfnServer.IdentityProviderDetailsProperty.Url`. This parameter is required.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder url(java.lang.String url) {
this.url = url;
return this;
}
/**
* Builds the configured instance.
* @return a new instance of {@link IdentityProviderDetailsProperty}
* @throws NullPointerException if any required attribute was not provided
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@Override
public IdentityProviderDetailsProperty build() {
return new Jsii$Proxy(invocationRole, url);
}
}
/**
* An implementation for {@link IdentityProviderDetailsProperty}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@software.amazon.jsii.Internal
final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements IdentityProviderDetailsProperty {
private final java.lang.String invocationRole;
private final java.lang.String url;
/**
* Constructor that initializes the object based on values retrieved from the JsiiObject.
* @param objRef Reference to the JSII managed object.
*/
protected Jsii$Proxy(final software.amazon.jsii.JsiiObjectRef objRef) {
super(objRef);
this.invocationRole = software.amazon.jsii.Kernel.get(this, "invocationRole", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.url = software.amazon.jsii.Kernel.get(this, "url", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
}
/**
* Constructor that initializes the object based on literal property values passed by the {@link Builder}.
*/
protected Jsii$Proxy(final java.lang.String invocationRole, final java.lang.String url) {
super(software.amazon.jsii.JsiiObject.InitializationMode.JSII);
this.invocationRole = java.util.Objects.requireNonNull(invocationRole, "invocationRole is required");
this.url = java.util.Objects.requireNonNull(url, "url is required");
}
@Override
public final java.lang.String getInvocationRole() {
return this.invocationRole;
}
@Override
public final java.lang.String getUrl() {
return this.url;
}
@Override
@software.amazon.jsii.Internal
public com.fasterxml.jackson.databind.JsonNode $jsii$toJson() {
final com.fasterxml.jackson.databind.ObjectMapper om = software.amazon.jsii.JsiiObjectMapper.INSTANCE;
final com.fasterxml.jackson.databind.node.ObjectNode data = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
data.set("invocationRole", om.valueToTree(this.getInvocationRole()));
data.set("url", om.valueToTree(this.getUrl()));
final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
struct.set("fqn", om.valueToTree("@aws-cdk/aws-transfer.CfnServer.IdentityProviderDetailsProperty"));
struct.set("data", data);
final com.fasterxml.jackson.databind.node.ObjectNode obj = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
obj.set("$jsii.struct", struct);
return obj;
}
@Override
public final boolean equals(final Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
IdentityProviderDetailsProperty.Jsii$Proxy that = (IdentityProviderDetailsProperty.Jsii$Proxy) o;
if (!invocationRole.equals(that.invocationRole)) return false;
return this.url.equals(that.url);
}
@Override
public final int hashCode() {
int result = this.invocationRole.hashCode();
result = 31 * result + (this.url.hashCode());
return result;
}
}
}
/**
* A fluent builder for {@link software.amazon.awscdk.services.transfer.CfnServer}.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public static final class Builder implements software.amazon.jsii.Builder {
/**
* @return a new instance of {@link Builder}.
* @param scope - scope in which this resource is defined. This parameter is required.
* @param id - scoped id of the resource. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public static Builder create(final software.amazon.awscdk.core.Construct scope, final java.lang.String id) {
return new Builder(scope, id);
}
private final software.amazon.awscdk.core.Construct scope;
private final java.lang.String id;
private software.amazon.awscdk.services.transfer.CfnServerProps.Builder props;
private Builder(final software.amazon.awscdk.core.Construct scope, final java.lang.String id) {
this.scope = scope;
this.id = id;
}
/**
* `AWS::Transfer::Server.Certificate`.
*
* @return {@code this}
* @param certificate `AWS::Transfer::Server.Certificate`. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder certificate(final java.lang.String certificate) {
this.props().certificate(certificate);
return this;
}
/**
* `AWS::Transfer::Server.Domain`.
*
* @return {@code this}
* @param domain `AWS::Transfer::Server.Domain`. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder domain(final java.lang.String domain) {
this.props().domain(domain);
return this;
}
/**
* `AWS::Transfer::Server.EndpointDetails`.
*
* @return {@code this}
* @param endpointDetails `AWS::Transfer::Server.EndpointDetails`. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder endpointDetails(final software.amazon.awscdk.services.transfer.CfnServer.EndpointDetailsProperty endpointDetails) {
this.props().endpointDetails(endpointDetails);
return this;
}
/**
* `AWS::Transfer::Server.EndpointDetails`.
*
* @return {@code this}
* @param endpointDetails `AWS::Transfer::Server.EndpointDetails`. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder endpointDetails(final software.amazon.awscdk.core.IResolvable endpointDetails) {
this.props().endpointDetails(endpointDetails);
return this;
}
/**
* `AWS::Transfer::Server.EndpointType`.
*
* @return {@code this}
* @param endpointType `AWS::Transfer::Server.EndpointType`. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder endpointType(final java.lang.String endpointType) {
this.props().endpointType(endpointType);
return this;
}
/**
* `AWS::Transfer::Server.IdentityProviderDetails`.
*
* @return {@code this}
* @param identityProviderDetails `AWS::Transfer::Server.IdentityProviderDetails`. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder identityProviderDetails(final software.amazon.awscdk.core.IResolvable identityProviderDetails) {
this.props().identityProviderDetails(identityProviderDetails);
return this;
}
/**
* `AWS::Transfer::Server.IdentityProviderDetails`.
*
* @return {@code this}
* @param identityProviderDetails `AWS::Transfer::Server.IdentityProviderDetails`. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder identityProviderDetails(final software.amazon.awscdk.services.transfer.CfnServer.IdentityProviderDetailsProperty identityProviderDetails) {
this.props().identityProviderDetails(identityProviderDetails);
return this;
}
/**
* `AWS::Transfer::Server.IdentityProviderType`.
*
* @return {@code this}
* @param identityProviderType `AWS::Transfer::Server.IdentityProviderType`. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder identityProviderType(final java.lang.String identityProviderType) {
this.props().identityProviderType(identityProviderType);
return this;
}
/**
* `AWS::Transfer::Server.LoggingRole`.
*
* @return {@code this}
* @param loggingRole `AWS::Transfer::Server.LoggingRole`. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder loggingRole(final java.lang.String loggingRole) {
this.props().loggingRole(loggingRole);
return this;
}
/**
* `AWS::Transfer::Server.Protocols`.
*
* @return {@code this}
* @param protocols `AWS::Transfer::Server.Protocols`. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder protocols(final java.util.List protocols) {
this.props().protocols(protocols);
return this;
}
/**
* `AWS::Transfer::Server.SecurityPolicyName`.
*
* @return {@code this}
* @param securityPolicyName `AWS::Transfer::Server.SecurityPolicyName`. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder securityPolicyName(final java.lang.String securityPolicyName) {
this.props().securityPolicyName(securityPolicyName);
return this;
}
/**
* `AWS::Transfer::Server.Tags`.
*
* @return {@code this}
* @param tags `AWS::Transfer::Server.Tags`. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder tags(final java.util.List extends software.amazon.awscdk.core.CfnTag> tags) {
this.props().tags(tags);
return this;
}
/**
* @returns a newly built instance of {@link software.amazon.awscdk.services.transfer.CfnServer}.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@Override
public software.amazon.awscdk.services.transfer.CfnServer build() {
return new software.amazon.awscdk.services.transfer.CfnServer(
this.scope,
this.id,
this.props != null ? this.props.build() : null
);
}
private software.amazon.awscdk.services.transfer.CfnServerProps.Builder props() {
if (this.props == null) {
this.props = new software.amazon.awscdk.services.transfer.CfnServerProps.Builder();
}
return this.props;
}
}
}