com.amazonaws.services.storagegateway.model.CreateSMBFileShareRequest Maven / Gradle / Ivy
Show all versions of aws-java-sdk-storagegateway Show documentation
/*
* Copyright 2017-2022 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.storagegateway.model;
import java.io.Serializable;
import javax.annotation.Generated;
import com.amazonaws.AmazonWebServiceRequest;
/**
*
* CreateSMBFileShareInput
*
*
* @see AWS
* API Documentation
*/
@Generated("com.amazonaws:aws-java-sdk-code-generator")
public class CreateSMBFileShareRequest extends com.amazonaws.AmazonWebServiceRequest implements Serializable, Cloneable {
/**
*
* A unique string value that you supply that is used by S3 File Gateway to ensure idempotent file share creation.
*
*/
private String clientToken;
/**
*
* The ARN of the S3 File Gateway on which you want to create a file share.
*
*/
private String gatewayARN;
/**
*
* Set to true
to use Amazon S3 server-side encryption with your own KMS key, or false
to
* use a key managed by Amazon S3. Optional.
*
*
* Valid Values: true
| false
*
*/
private Boolean kMSEncrypted;
/**
*
* The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used for Amazon S3 server-side
* encryption. Storage Gateway does not support asymmetric CMKs. This value can only be set when
* KMSEncrypted
is true
. Optional.
*
*/
private String kMSKey;
/**
*
* The ARN of the Identity and Access Management (IAM) role that an S3 File Gateway assumes when it accesses the
* underlying storage.
*
*/
private String role;
/**
*
* A custom ARN for the backend storage used for storing data for file shares. It includes a resource ARN with an
* optional prefix concatenation. The prefix must end with a forward slash (/).
*
*
*
* You can specify LocationARN as a bucket ARN, access point ARN or access point alias, as shown in the following
* examples.
*
*
* Bucket ARN:
*
*
* arn:aws:s3:::my-bucket/prefix/
*
*
* Access point ARN:
*
*
* arn:aws:s3:region:account-id:accesspoint/access-point-name/prefix/
*
*
* If you specify an access point, the bucket policy must be configured to delegate access control to the access
* point. For information, see Delegating access control to access points in the Amazon S3 User Guide.
*
*
* Access point alias:
*
*
* test-ap-ab123cdef4gehijklmn5opqrstuvuse1a-s3alias
*
*
*/
private String locationARN;
/**
*
* The default storage class for objects put into an Amazon S3 bucket by the S3 File Gateway. The default value is
* S3_STANDARD
. Optional.
*
*
* Valid Values: S3_STANDARD
| S3_INTELLIGENT_TIERING
| S3_STANDARD_IA
|
* S3_ONEZONE_IA
*
*/
private String defaultStorageClass;
/**
*
* A value that sets the access control list (ACL) permission for objects in the S3 bucket that a S3 File Gateway
* puts objects into. The default value is private
.
*
*/
private String objectACL;
/**
*
* A value that sets the write status of a file share. Set this value to true
to set the write status
* to read-only, otherwise set to false
.
*
*
* Valid Values: true
| false
*
*/
private Boolean readOnly;
/**
*
* A value that enables guessing of the MIME type for uploaded objects based on file extensions. Set this value to
* true
to enable MIME type guessing, otherwise set to false
. The default value is
* true
.
*
*
* Valid Values: true
| false
*
*/
private Boolean guessMIMETypeEnabled;
/**
*
* A value that sets who pays the cost of the request and the cost associated with data download from the S3 bucket.
* If this value is set to true
, the requester pays the costs; otherwise, the S3 bucket owner pays.
* However, the S3 bucket owner always pays the cost of storing data.
*
*
*
* RequesterPays
is a configuration for the S3 bucket that backs the file share, so make sure that the
* configuration on the file share is the same as the S3 bucket configuration.
*
*
*
* Valid Values: true
| false
*
*/
private Boolean requesterPays;
/**
*
* Set this value to true
to enable access control list (ACL) on the SMB file share. Set it to
* false
to map file and directory permissions to the POSIX permissions.
*
*
* For more information, see Using Microsoft Windows ACLs to
* control access to an SMB file share in the Storage Gateway User Guide.
*
*
* Valid Values: true
| false
*
*/
private Boolean sMBACLEnabled;
/**
*
* The files and folders on this share will only be visible to users with read access.
*
*/
private Boolean accessBasedEnumeration;
/**
*
* A list of users or groups in the Active Directory that will be granted administrator privileges on the file
* share. These users can do all file operations as the super-user. Acceptable formats include:
* DOMAIN\User1
, user1
, @group1
, and @DOMAIN\group1
.
*
*
*
* Use this option very carefully, because any user in this list can do anything they like on the file share,
* regardless of file permissions.
*
*
*/
private com.amazonaws.internal.SdkInternalList adminUserList;
/**
*
* A list of users or groups in the Active Directory that are allowed to access the file share. A group
* must be prefixed with the @ character. Acceptable formats include: DOMAIN\User1
, user1
,
* @group1
, and @DOMAIN\group1
. Can only be set if Authentication is set to
* ActiveDirectory
.
*
*/
private com.amazonaws.internal.SdkInternalList validUserList;
/**
*
* A list of users or groups in the Active Directory that are not allowed to access the file share. A group must be
* prefixed with the @ character. Acceptable formats include: DOMAIN\User1
, user1
,
* @group1
, and @DOMAIN\group1
. Can only be set if Authentication is set to
* ActiveDirectory
.
*
*/
private com.amazonaws.internal.SdkInternalList invalidUserList;
/**
*
* The Amazon Resource Name (ARN) of the storage used for audit logs.
*
*/
private String auditDestinationARN;
/**
*
* The authentication method that users use to access the file share. The default is ActiveDirectory
.
*
*
* Valid Values: ActiveDirectory
| GuestAccess
*
*/
private String authentication;
/**
*
* The case of an object name in an Amazon S3 bucket. For ClientSpecified
, the client determines the
* case sensitivity. For CaseSensitive
, the gateway determines the case sensitivity. The default value
* is ClientSpecified
.
*
*/
private String caseSensitivity;
/**
*
* A list of up to 50 tags that can be assigned to the NFS file share. Each tag is a key-value pair.
*
*
*
* Valid characters for key and value are letters, spaces, and numbers representable in UTF-8 format, and the
* following special characters: + - = . _ : / @. The maximum length of a tag's key is 128 characters, and the
* maximum length for a tag's value is 256.
*
*
*/
private com.amazonaws.internal.SdkInternalList tags;
/**
*
* The name of the file share. Optional.
*
*
*
* FileShareName
must be set if an S3 prefix name is set in LocationARN
, or if an access
* point or access point alias is used.
*
*
*/
private String fileShareName;
/**
*
* Specifies refresh cache information for the file share.
*
*/
private CacheAttributes cacheAttributes;
/**
*
* The notification policy of the file share. SettlingTimeInSeconds
controls the number of seconds to
* wait after the last point in time a client wrote to a file before generating an ObjectUploaded
* notification. Because clients can make many small writes to files, it's best to set this parameter for as long as
* possible to avoid generating multiple notifications for the same file in a small time period.
*
*
*
* SettlingTimeInSeconds
has no effect on the timing of the object uploading to Amazon S3, only the
* timing of the notification.
*
*
*
* The following example sets NotificationPolicy
on with SettlingTimeInSeconds
set to 60.
*
*
* {\"Upload\": {\"SettlingTimeInSeconds\": 60}}
*
*
* The following example sets NotificationPolicy
off.
*
*
* {}
*
*/
private String notificationPolicy;
/**
*
* Specifies the DNS name for the VPC endpoint that the SMB file share uses to connect to Amazon S3.
*
*
*
* This parameter is required for SMB file shares that connect to Amazon S3 through a VPC endpoint, a VPC access
* point, or an access point alias that points to a VPC access point.
*
*
*/
private String vPCEndpointDNSName;
/**
*
* Specifies the Region of the S3 bucket where the SMB file share stores files.
*
*
*
* This parameter is required for SMB file shares that connect to Amazon S3 through a VPC endpoint, a VPC access
* point, or an access point alias that points to a VPC access point.
*
*
*/
private String bucketRegion;
/**
*
* Specifies whether opportunistic locking is enabled for the SMB file share.
*
*
*
* Enabling opportunistic locking on case-sensitive shares is not recommended for workloads that involve access to
* files with the same name in different case.
*
*
*
* Valid Values: true
| false
*
*/
private Boolean oplocksEnabled;
/**
*
* A unique string value that you supply that is used by S3 File Gateway to ensure idempotent file share creation.
*
*
* @param clientToken
* A unique string value that you supply that is used by S3 File Gateway to ensure idempotent file share
* creation.
*/
public void setClientToken(String clientToken) {
this.clientToken = clientToken;
}
/**
*
* A unique string value that you supply that is used by S3 File Gateway to ensure idempotent file share creation.
*
*
* @return A unique string value that you supply that is used by S3 File Gateway to ensure idempotent file share
* creation.
*/
public String getClientToken() {
return this.clientToken;
}
/**
*
* A unique string value that you supply that is used by S3 File Gateway to ensure idempotent file share creation.
*
*
* @param clientToken
* A unique string value that you supply that is used by S3 File Gateway to ensure idempotent file share
* creation.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateSMBFileShareRequest withClientToken(String clientToken) {
setClientToken(clientToken);
return this;
}
/**
*
* The ARN of the S3 File Gateway on which you want to create a file share.
*
*
* @param gatewayARN
* The ARN of the S3 File Gateway on which you want to create a file share.
*/
public void setGatewayARN(String gatewayARN) {
this.gatewayARN = gatewayARN;
}
/**
*
* The ARN of the S3 File Gateway on which you want to create a file share.
*
*
* @return The ARN of the S3 File Gateway on which you want to create a file share.
*/
public String getGatewayARN() {
return this.gatewayARN;
}
/**
*
* The ARN of the S3 File Gateway on which you want to create a file share.
*
*
* @param gatewayARN
* The ARN of the S3 File Gateway on which you want to create a file share.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateSMBFileShareRequest withGatewayARN(String gatewayARN) {
setGatewayARN(gatewayARN);
return this;
}
/**
*
* Set to true
to use Amazon S3 server-side encryption with your own KMS key, or false
to
* use a key managed by Amazon S3. Optional.
*
*
* Valid Values: true
| false
*
*
* @param kMSEncrypted
* Set to true
to use Amazon S3 server-side encryption with your own KMS key, or
* false
to use a key managed by Amazon S3. Optional.
*
* Valid Values: true
| false
*/
public void setKMSEncrypted(Boolean kMSEncrypted) {
this.kMSEncrypted = kMSEncrypted;
}
/**
*
* Set to true
to use Amazon S3 server-side encryption with your own KMS key, or false
to
* use a key managed by Amazon S3. Optional.
*
*
* Valid Values: true
| false
*
*
* @return Set to true
to use Amazon S3 server-side encryption with your own KMS key, or
* false
to use a key managed by Amazon S3. Optional.
*
* Valid Values: true
| false
*/
public Boolean getKMSEncrypted() {
return this.kMSEncrypted;
}
/**
*
* Set to true
to use Amazon S3 server-side encryption with your own KMS key, or false
to
* use a key managed by Amazon S3. Optional.
*
*
* Valid Values: true
| false
*
*
* @param kMSEncrypted
* Set to true
to use Amazon S3 server-side encryption with your own KMS key, or
* false
to use a key managed by Amazon S3. Optional.
*
* Valid Values: true
| false
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateSMBFileShareRequest withKMSEncrypted(Boolean kMSEncrypted) {
setKMSEncrypted(kMSEncrypted);
return this;
}
/**
*
* Set to true
to use Amazon S3 server-side encryption with your own KMS key, or false
to
* use a key managed by Amazon S3. Optional.
*
*
* Valid Values: true
| false
*
*
* @return Set to true
to use Amazon S3 server-side encryption with your own KMS key, or
* false
to use a key managed by Amazon S3. Optional.
*
* Valid Values: true
| false
*/
public Boolean isKMSEncrypted() {
return this.kMSEncrypted;
}
/**
*
* The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used for Amazon S3 server-side
* encryption. Storage Gateway does not support asymmetric CMKs. This value can only be set when
* KMSEncrypted
is true
. Optional.
*
*
* @param kMSKey
* The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used for Amazon S3 server-side
* encryption. Storage Gateway does not support asymmetric CMKs. This value can only be set when
* KMSEncrypted
is true
. Optional.
*/
public void setKMSKey(String kMSKey) {
this.kMSKey = kMSKey;
}
/**
*
* The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used for Amazon S3 server-side
* encryption. Storage Gateway does not support asymmetric CMKs. This value can only be set when
* KMSEncrypted
is true
. Optional.
*
*
* @return The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used for Amazon S3 server-side
* encryption. Storage Gateway does not support asymmetric CMKs. This value can only be set when
* KMSEncrypted
is true
. Optional.
*/
public String getKMSKey() {
return this.kMSKey;
}
/**
*
* The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used for Amazon S3 server-side
* encryption. Storage Gateway does not support asymmetric CMKs. This value can only be set when
* KMSEncrypted
is true
. Optional.
*
*
* @param kMSKey
* The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used for Amazon S3 server-side
* encryption. Storage Gateway does not support asymmetric CMKs. This value can only be set when
* KMSEncrypted
is true
. Optional.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateSMBFileShareRequest withKMSKey(String kMSKey) {
setKMSKey(kMSKey);
return this;
}
/**
*
* The ARN of the Identity and Access Management (IAM) role that an S3 File Gateway assumes when it accesses the
* underlying storage.
*
*
* @param role
* The ARN of the Identity and Access Management (IAM) role that an S3 File Gateway assumes when it accesses
* the underlying storage.
*/
public void setRole(String role) {
this.role = role;
}
/**
*
* The ARN of the Identity and Access Management (IAM) role that an S3 File Gateway assumes when it accesses the
* underlying storage.
*
*
* @return The ARN of the Identity and Access Management (IAM) role that an S3 File Gateway assumes when it accesses
* the underlying storage.
*/
public String getRole() {
return this.role;
}
/**
*
* The ARN of the Identity and Access Management (IAM) role that an S3 File Gateway assumes when it accesses the
* underlying storage.
*
*
* @param role
* The ARN of the Identity and Access Management (IAM) role that an S3 File Gateway assumes when it accesses
* the underlying storage.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateSMBFileShareRequest withRole(String role) {
setRole(role);
return this;
}
/**
*
* A custom ARN for the backend storage used for storing data for file shares. It includes a resource ARN with an
* optional prefix concatenation. The prefix must end with a forward slash (/).
*
*
*
* You can specify LocationARN as a bucket ARN, access point ARN or access point alias, as shown in the following
* examples.
*
*
* Bucket ARN:
*
*
* arn:aws:s3:::my-bucket/prefix/
*
*
* Access point ARN:
*
*
* arn:aws:s3:region:account-id:accesspoint/access-point-name/prefix/
*
*
* If you specify an access point, the bucket policy must be configured to delegate access control to the access
* point. For information, see Delegating access control to access points in the Amazon S3 User Guide.
*
*
* Access point alias:
*
*
* test-ap-ab123cdef4gehijklmn5opqrstuvuse1a-s3alias
*
*
*
* @param locationARN
* A custom ARN for the backend storage used for storing data for file shares. It includes a resource ARN
* with an optional prefix concatenation. The prefix must end with a forward slash (/).
*
* You can specify LocationARN as a bucket ARN, access point ARN or access point alias, as shown in the
* following examples.
*
*
* Bucket ARN:
*
*
* arn:aws:s3:::my-bucket/prefix/
*
*
* Access point ARN:
*
*
* arn:aws:s3:region:account-id:accesspoint/access-point-name/prefix/
*
*
* If you specify an access point, the bucket policy must be configured to delegate access control to the
* access point. For information, see Delegating access control to access points in the Amazon S3 User Guide.
*
*
* Access point alias:
*
*
* test-ap-ab123cdef4gehijklmn5opqrstuvuse1a-s3alias
*
*/
public void setLocationARN(String locationARN) {
this.locationARN = locationARN;
}
/**
*
* A custom ARN for the backend storage used for storing data for file shares. It includes a resource ARN with an
* optional prefix concatenation. The prefix must end with a forward slash (/).
*
*
*
* You can specify LocationARN as a bucket ARN, access point ARN or access point alias, as shown in the following
* examples.
*
*
* Bucket ARN:
*
*
* arn:aws:s3:::my-bucket/prefix/
*
*
* Access point ARN:
*
*
* arn:aws:s3:region:account-id:accesspoint/access-point-name/prefix/
*
*
* If you specify an access point, the bucket policy must be configured to delegate access control to the access
* point. For information, see Delegating access control to access points in the Amazon S3 User Guide.
*
*
* Access point alias:
*
*
* test-ap-ab123cdef4gehijklmn5opqrstuvuse1a-s3alias
*
*
*
* @return A custom ARN for the backend storage used for storing data for file shares. It includes a resource ARN
* with an optional prefix concatenation. The prefix must end with a forward slash (/).
*
* You can specify LocationARN as a bucket ARN, access point ARN or access point alias, as shown in the
* following examples.
*
*
* Bucket ARN:
*
*
* arn:aws:s3:::my-bucket/prefix/
*
*
* Access point ARN:
*
*
* arn:aws:s3:region:account-id:accesspoint/access-point-name/prefix/
*
*
* If you specify an access point, the bucket policy must be configured to delegate access control to the
* access point. For information, see Delegating access control to access points in the Amazon S3 User Guide.
*
*
* Access point alias:
*
*
* test-ap-ab123cdef4gehijklmn5opqrstuvuse1a-s3alias
*
*/
public String getLocationARN() {
return this.locationARN;
}
/**
*
* A custom ARN for the backend storage used for storing data for file shares. It includes a resource ARN with an
* optional prefix concatenation. The prefix must end with a forward slash (/).
*
*
*
* You can specify LocationARN as a bucket ARN, access point ARN or access point alias, as shown in the following
* examples.
*
*
* Bucket ARN:
*
*
* arn:aws:s3:::my-bucket/prefix/
*
*
* Access point ARN:
*
*
* arn:aws:s3:region:account-id:accesspoint/access-point-name/prefix/
*
*
* If you specify an access point, the bucket policy must be configured to delegate access control to the access
* point. For information, see Delegating access control to access points in the Amazon S3 User Guide.
*
*
* Access point alias:
*
*
* test-ap-ab123cdef4gehijklmn5opqrstuvuse1a-s3alias
*
*
*
* @param locationARN
* A custom ARN for the backend storage used for storing data for file shares. It includes a resource ARN
* with an optional prefix concatenation. The prefix must end with a forward slash (/).
*
* You can specify LocationARN as a bucket ARN, access point ARN or access point alias, as shown in the
* following examples.
*
*
* Bucket ARN:
*
*
* arn:aws:s3:::my-bucket/prefix/
*
*
* Access point ARN:
*
*
* arn:aws:s3:region:account-id:accesspoint/access-point-name/prefix/
*
*
* If you specify an access point, the bucket policy must be configured to delegate access control to the
* access point. For information, see Delegating access control to access points in the Amazon S3 User Guide.
*
*
* Access point alias:
*
*
* test-ap-ab123cdef4gehijklmn5opqrstuvuse1a-s3alias
*
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateSMBFileShareRequest withLocationARN(String locationARN) {
setLocationARN(locationARN);
return this;
}
/**
*
* The default storage class for objects put into an Amazon S3 bucket by the S3 File Gateway. The default value is
* S3_STANDARD
. Optional.
*
*
* Valid Values: S3_STANDARD
| S3_INTELLIGENT_TIERING
| S3_STANDARD_IA
|
* S3_ONEZONE_IA
*
*
* @param defaultStorageClass
* The default storage class for objects put into an Amazon S3 bucket by the S3 File Gateway. The default
* value is S3_STANDARD
. Optional.
*
* Valid Values: S3_STANDARD
| S3_INTELLIGENT_TIERING
| S3_STANDARD_IA
* | S3_ONEZONE_IA
*/
public void setDefaultStorageClass(String defaultStorageClass) {
this.defaultStorageClass = defaultStorageClass;
}
/**
*
* The default storage class for objects put into an Amazon S3 bucket by the S3 File Gateway. The default value is
* S3_STANDARD
. Optional.
*
*
* Valid Values: S3_STANDARD
| S3_INTELLIGENT_TIERING
| S3_STANDARD_IA
|
* S3_ONEZONE_IA
*
*
* @return The default storage class for objects put into an Amazon S3 bucket by the S3 File Gateway. The default
* value is S3_STANDARD
. Optional.
*
* Valid Values: S3_STANDARD
| S3_INTELLIGENT_TIERING
|
* S3_STANDARD_IA
| S3_ONEZONE_IA
*/
public String getDefaultStorageClass() {
return this.defaultStorageClass;
}
/**
*
* The default storage class for objects put into an Amazon S3 bucket by the S3 File Gateway. The default value is
* S3_STANDARD
. Optional.
*
*
* Valid Values: S3_STANDARD
| S3_INTELLIGENT_TIERING
| S3_STANDARD_IA
|
* S3_ONEZONE_IA
*
*
* @param defaultStorageClass
* The default storage class for objects put into an Amazon S3 bucket by the S3 File Gateway. The default
* value is S3_STANDARD
. Optional.
*
* Valid Values: S3_STANDARD
| S3_INTELLIGENT_TIERING
| S3_STANDARD_IA
* | S3_ONEZONE_IA
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateSMBFileShareRequest withDefaultStorageClass(String defaultStorageClass) {
setDefaultStorageClass(defaultStorageClass);
return this;
}
/**
*
* A value that sets the access control list (ACL) permission for objects in the S3 bucket that a S3 File Gateway
* puts objects into. The default value is private
.
*
*
* @param objectACL
* A value that sets the access control list (ACL) permission for objects in the S3 bucket that a S3 File
* Gateway puts objects into. The default value is private
.
* @see ObjectACL
*/
public void setObjectACL(String objectACL) {
this.objectACL = objectACL;
}
/**
*
* A value that sets the access control list (ACL) permission for objects in the S3 bucket that a S3 File Gateway
* puts objects into. The default value is private
.
*
*
* @return A value that sets the access control list (ACL) permission for objects in the S3 bucket that a S3 File
* Gateway puts objects into. The default value is private
.
* @see ObjectACL
*/
public String getObjectACL() {
return this.objectACL;
}
/**
*
* A value that sets the access control list (ACL) permission for objects in the S3 bucket that a S3 File Gateway
* puts objects into. The default value is private
.
*
*
* @param objectACL
* A value that sets the access control list (ACL) permission for objects in the S3 bucket that a S3 File
* Gateway puts objects into. The default value is private
.
* @return Returns a reference to this object so that method calls can be chained together.
* @see ObjectACL
*/
public CreateSMBFileShareRequest withObjectACL(String objectACL) {
setObjectACL(objectACL);
return this;
}
/**
*
* A value that sets the access control list (ACL) permission for objects in the S3 bucket that a S3 File Gateway
* puts objects into. The default value is private
.
*
*
* @param objectACL
* A value that sets the access control list (ACL) permission for objects in the S3 bucket that a S3 File
* Gateway puts objects into. The default value is private
.
* @return Returns a reference to this object so that method calls can be chained together.
* @see ObjectACL
*/
public CreateSMBFileShareRequest withObjectACL(ObjectACL objectACL) {
this.objectACL = objectACL.toString();
return this;
}
/**
*
* A value that sets the write status of a file share. Set this value to true
to set the write status
* to read-only, otherwise set to false
.
*
*
* Valid Values: true
| false
*
*
* @param readOnly
* A value that sets the write status of a file share. Set this value to true
to set the write
* status to read-only, otherwise set to false
.
*
* Valid Values: true
| false
*/
public void setReadOnly(Boolean readOnly) {
this.readOnly = readOnly;
}
/**
*
* A value that sets the write status of a file share. Set this value to true
to set the write status
* to read-only, otherwise set to false
.
*
*
* Valid Values: true
| false
*
*
* @return A value that sets the write status of a file share. Set this value to true
to set the write
* status to read-only, otherwise set to false
.
*
* Valid Values: true
| false
*/
public Boolean getReadOnly() {
return this.readOnly;
}
/**
*
* A value that sets the write status of a file share. Set this value to true
to set the write status
* to read-only, otherwise set to false
.
*
*
* Valid Values: true
| false
*
*
* @param readOnly
* A value that sets the write status of a file share. Set this value to true
to set the write
* status to read-only, otherwise set to false
.
*
* Valid Values: true
| false
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateSMBFileShareRequest withReadOnly(Boolean readOnly) {
setReadOnly(readOnly);
return this;
}
/**
*
* A value that sets the write status of a file share. Set this value to true
to set the write status
* to read-only, otherwise set to false
.
*
*
* Valid Values: true
| false
*
*
* @return A value that sets the write status of a file share. Set this value to true
to set the write
* status to read-only, otherwise set to false
.
*
* Valid Values: true
| false
*/
public Boolean isReadOnly() {
return this.readOnly;
}
/**
*
* A value that enables guessing of the MIME type for uploaded objects based on file extensions. Set this value to
* true
to enable MIME type guessing, otherwise set to false
. The default value is
* true
.
*
*
* Valid Values: true
| false
*
*
* @param guessMIMETypeEnabled
* A value that enables guessing of the MIME type for uploaded objects based on file extensions. Set this
* value to true
to enable MIME type guessing, otherwise set to false
. The default
* value is true
.
*
* Valid Values: true
| false
*/
public void setGuessMIMETypeEnabled(Boolean guessMIMETypeEnabled) {
this.guessMIMETypeEnabled = guessMIMETypeEnabled;
}
/**
*
* A value that enables guessing of the MIME type for uploaded objects based on file extensions. Set this value to
* true
to enable MIME type guessing, otherwise set to false
. The default value is
* true
.
*
*
* Valid Values: true
| false
*
*
* @return A value that enables guessing of the MIME type for uploaded objects based on file extensions. Set this
* value to true
to enable MIME type guessing, otherwise set to false
. The default
* value is true
.
*
* Valid Values: true
| false
*/
public Boolean getGuessMIMETypeEnabled() {
return this.guessMIMETypeEnabled;
}
/**
*
* A value that enables guessing of the MIME type for uploaded objects based on file extensions. Set this value to
* true
to enable MIME type guessing, otherwise set to false
. The default value is
* true
.
*
*
* Valid Values: true
| false
*
*
* @param guessMIMETypeEnabled
* A value that enables guessing of the MIME type for uploaded objects based on file extensions. Set this
* value to true
to enable MIME type guessing, otherwise set to false
. The default
* value is true
.
*
* Valid Values: true
| false
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateSMBFileShareRequest withGuessMIMETypeEnabled(Boolean guessMIMETypeEnabled) {
setGuessMIMETypeEnabled(guessMIMETypeEnabled);
return this;
}
/**
*
* A value that enables guessing of the MIME type for uploaded objects based on file extensions. Set this value to
* true
to enable MIME type guessing, otherwise set to false
. The default value is
* true
.
*
*
* Valid Values: true
| false
*
*
* @return A value that enables guessing of the MIME type for uploaded objects based on file extensions. Set this
* value to true
to enable MIME type guessing, otherwise set to false
. The default
* value is true
.
*
* Valid Values: true
| false
*/
public Boolean isGuessMIMETypeEnabled() {
return this.guessMIMETypeEnabled;
}
/**
*
* A value that sets who pays the cost of the request and the cost associated with data download from the S3 bucket.
* If this value is set to true
, the requester pays the costs; otherwise, the S3 bucket owner pays.
* However, the S3 bucket owner always pays the cost of storing data.
*
*
*
* RequesterPays
is a configuration for the S3 bucket that backs the file share, so make sure that the
* configuration on the file share is the same as the S3 bucket configuration.
*
*
*
* Valid Values: true
| false
*
*
* @param requesterPays
* A value that sets who pays the cost of the request and the cost associated with data download from the S3
* bucket. If this value is set to true
, the requester pays the costs; otherwise, the S3 bucket
* owner pays. However, the S3 bucket owner always pays the cost of storing data.
*
* RequesterPays
is a configuration for the S3 bucket that backs the file share, so make sure
* that the configuration on the file share is the same as the S3 bucket configuration.
*
*
*
* Valid Values: true
| false
*/
public void setRequesterPays(Boolean requesterPays) {
this.requesterPays = requesterPays;
}
/**
*
* A value that sets who pays the cost of the request and the cost associated with data download from the S3 bucket.
* If this value is set to true
, the requester pays the costs; otherwise, the S3 bucket owner pays.
* However, the S3 bucket owner always pays the cost of storing data.
*
*
*
* RequesterPays
is a configuration for the S3 bucket that backs the file share, so make sure that the
* configuration on the file share is the same as the S3 bucket configuration.
*
*
*
* Valid Values: true
| false
*
*
* @return A value that sets who pays the cost of the request and the cost associated with data download from the S3
* bucket. If this value is set to true
, the requester pays the costs; otherwise, the S3 bucket
* owner pays. However, the S3 bucket owner always pays the cost of storing data.
*
* RequesterPays
is a configuration for the S3 bucket that backs the file share, so make sure
* that the configuration on the file share is the same as the S3 bucket configuration.
*
*
*
* Valid Values: true
| false
*/
public Boolean getRequesterPays() {
return this.requesterPays;
}
/**
*
* A value that sets who pays the cost of the request and the cost associated with data download from the S3 bucket.
* If this value is set to true
, the requester pays the costs; otherwise, the S3 bucket owner pays.
* However, the S3 bucket owner always pays the cost of storing data.
*
*
*
* RequesterPays
is a configuration for the S3 bucket that backs the file share, so make sure that the
* configuration on the file share is the same as the S3 bucket configuration.
*
*
*
* Valid Values: true
| false
*
*
* @param requesterPays
* A value that sets who pays the cost of the request and the cost associated with data download from the S3
* bucket. If this value is set to true
, the requester pays the costs; otherwise, the S3 bucket
* owner pays. However, the S3 bucket owner always pays the cost of storing data.
*
* RequesterPays
is a configuration for the S3 bucket that backs the file share, so make sure
* that the configuration on the file share is the same as the S3 bucket configuration.
*
*
*
* Valid Values: true
| false
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateSMBFileShareRequest withRequesterPays(Boolean requesterPays) {
setRequesterPays(requesterPays);
return this;
}
/**
*
* A value that sets who pays the cost of the request and the cost associated with data download from the S3 bucket.
* If this value is set to true
, the requester pays the costs; otherwise, the S3 bucket owner pays.
* However, the S3 bucket owner always pays the cost of storing data.
*
*
*
* RequesterPays
is a configuration for the S3 bucket that backs the file share, so make sure that the
* configuration on the file share is the same as the S3 bucket configuration.
*
*
*
* Valid Values: true
| false
*
*
* @return A value that sets who pays the cost of the request and the cost associated with data download from the S3
* bucket. If this value is set to true
, the requester pays the costs; otherwise, the S3 bucket
* owner pays. However, the S3 bucket owner always pays the cost of storing data.
*
* RequesterPays
is a configuration for the S3 bucket that backs the file share, so make sure
* that the configuration on the file share is the same as the S3 bucket configuration.
*
*
*
* Valid Values: true
| false
*/
public Boolean isRequesterPays() {
return this.requesterPays;
}
/**
*
* Set this value to true
to enable access control list (ACL) on the SMB file share. Set it to
* false
to map file and directory permissions to the POSIX permissions.
*
*
* For more information, see Using Microsoft Windows ACLs to
* control access to an SMB file share in the Storage Gateway User Guide.
*
*
* Valid Values: true
| false
*
*
* @param sMBACLEnabled
* Set this value to true
to enable access control list (ACL) on the SMB file share. Set it to
* false
to map file and directory permissions to the POSIX permissions.
*
* For more information, see Using Microsoft Windows
* ACLs to control access to an SMB file share in the Storage Gateway User Guide.
*
*
* Valid Values: true
| false
*/
public void setSMBACLEnabled(Boolean sMBACLEnabled) {
this.sMBACLEnabled = sMBACLEnabled;
}
/**
*
* Set this value to true
to enable access control list (ACL) on the SMB file share. Set it to
* false
to map file and directory permissions to the POSIX permissions.
*
*
* For more information, see Using Microsoft Windows ACLs to
* control access to an SMB file share in the Storage Gateway User Guide.
*
*
* Valid Values: true
| false
*
*
* @return Set this value to true
to enable access control list (ACL) on the SMB file share. Set it to
* false
to map file and directory permissions to the POSIX permissions.
*
* For more information, see Using Microsoft Windows
* ACLs to control access to an SMB file share in the Storage Gateway User Guide.
*
*
* Valid Values: true
| false
*/
public Boolean getSMBACLEnabled() {
return this.sMBACLEnabled;
}
/**
*
* Set this value to true
to enable access control list (ACL) on the SMB file share. Set it to
* false
to map file and directory permissions to the POSIX permissions.
*
*
* For more information, see Using Microsoft Windows ACLs to
* control access to an SMB file share in the Storage Gateway User Guide.
*
*
* Valid Values: true
| false
*
*
* @param sMBACLEnabled
* Set this value to true
to enable access control list (ACL) on the SMB file share. Set it to
* false
to map file and directory permissions to the POSIX permissions.
*
* For more information, see Using Microsoft Windows
* ACLs to control access to an SMB file share in the Storage Gateway User Guide.
*
*
* Valid Values: true
| false
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateSMBFileShareRequest withSMBACLEnabled(Boolean sMBACLEnabled) {
setSMBACLEnabled(sMBACLEnabled);
return this;
}
/**
*
* Set this value to true
to enable access control list (ACL) on the SMB file share. Set it to
* false
to map file and directory permissions to the POSIX permissions.
*
*
* For more information, see Using Microsoft Windows ACLs to
* control access to an SMB file share in the Storage Gateway User Guide.
*
*
* Valid Values: true
| false
*
*
* @return Set this value to true
to enable access control list (ACL) on the SMB file share. Set it to
* false
to map file and directory permissions to the POSIX permissions.
*
* For more information, see Using Microsoft Windows
* ACLs to control access to an SMB file share in the Storage Gateway User Guide.
*
*
* Valid Values: true
| false
*/
public Boolean isSMBACLEnabled() {
return this.sMBACLEnabled;
}
/**
*
* The files and folders on this share will only be visible to users with read access.
*
*
* @param accessBasedEnumeration
* The files and folders on this share will only be visible to users with read access.
*/
public void setAccessBasedEnumeration(Boolean accessBasedEnumeration) {
this.accessBasedEnumeration = accessBasedEnumeration;
}
/**
*
* The files and folders on this share will only be visible to users with read access.
*
*
* @return The files and folders on this share will only be visible to users with read access.
*/
public Boolean getAccessBasedEnumeration() {
return this.accessBasedEnumeration;
}
/**
*
* The files and folders on this share will only be visible to users with read access.
*
*
* @param accessBasedEnumeration
* The files and folders on this share will only be visible to users with read access.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateSMBFileShareRequest withAccessBasedEnumeration(Boolean accessBasedEnumeration) {
setAccessBasedEnumeration(accessBasedEnumeration);
return this;
}
/**
*
* The files and folders on this share will only be visible to users with read access.
*
*
* @return The files and folders on this share will only be visible to users with read access.
*/
public Boolean isAccessBasedEnumeration() {
return this.accessBasedEnumeration;
}
/**
*
* A list of users or groups in the Active Directory that will be granted administrator privileges on the file
* share. These users can do all file operations as the super-user. Acceptable formats include:
* DOMAIN\User1
, user1
, @group1
, and @DOMAIN\group1
.
*
*
*
* Use this option very carefully, because any user in this list can do anything they like on the file share,
* regardless of file permissions.
*
*
*
* @return A list of users or groups in the Active Directory that will be granted administrator privileges on the
* file share. These users can do all file operations as the super-user. Acceptable formats include:
* DOMAIN\User1
, user1
, @group1
, and @DOMAIN\group1
.
*
*
* Use this option very carefully, because any user in this list can do anything they like on the file
* share, regardless of file permissions.
*
*/
public java.util.List getAdminUserList() {
if (adminUserList == null) {
adminUserList = new com.amazonaws.internal.SdkInternalList();
}
return adminUserList;
}
/**
*
* A list of users or groups in the Active Directory that will be granted administrator privileges on the file
* share. These users can do all file operations as the super-user. Acceptable formats include:
* DOMAIN\User1
, user1
, @group1
, and @DOMAIN\group1
.
*
*
*
* Use this option very carefully, because any user in this list can do anything they like on the file share,
* regardless of file permissions.
*
*
*
* @param adminUserList
* A list of users or groups in the Active Directory that will be granted administrator privileges on the
* file share. These users can do all file operations as the super-user. Acceptable formats include:
* DOMAIN\User1
, user1
, @group1
, and @DOMAIN\group1
.
*
*
* Use this option very carefully, because any user in this list can do anything they like on the file share,
* regardless of file permissions.
*
*/
public void setAdminUserList(java.util.Collection adminUserList) {
if (adminUserList == null) {
this.adminUserList = null;
return;
}
this.adminUserList = new com.amazonaws.internal.SdkInternalList(adminUserList);
}
/**
*
* A list of users or groups in the Active Directory that will be granted administrator privileges on the file
* share. These users can do all file operations as the super-user. Acceptable formats include:
* DOMAIN\User1
, user1
, @group1
, and @DOMAIN\group1
.
*
*
*
* Use this option very carefully, because any user in this list can do anything they like on the file share,
* regardless of file permissions.
*
*
*
* NOTE: This method appends the values to the existing list (if any). Use
* {@link #setAdminUserList(java.util.Collection)} or {@link #withAdminUserList(java.util.Collection)} if you want
* to override the existing values.
*
*
* @param adminUserList
* A list of users or groups in the Active Directory that will be granted administrator privileges on the
* file share. These users can do all file operations as the super-user. Acceptable formats include:
* DOMAIN\User1
, user1
, @group1
, and @DOMAIN\group1
.
*
*
* Use this option very carefully, because any user in this list can do anything they like on the file share,
* regardless of file permissions.
*
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateSMBFileShareRequest withAdminUserList(String... adminUserList) {
if (this.adminUserList == null) {
setAdminUserList(new com.amazonaws.internal.SdkInternalList(adminUserList.length));
}
for (String ele : adminUserList) {
this.adminUserList.add(ele);
}
return this;
}
/**
*
* A list of users or groups in the Active Directory that will be granted administrator privileges on the file
* share. These users can do all file operations as the super-user. Acceptable formats include:
* DOMAIN\User1
, user1
, @group1
, and @DOMAIN\group1
.
*
*
*
* Use this option very carefully, because any user in this list can do anything they like on the file share,
* regardless of file permissions.
*
*
*
* @param adminUserList
* A list of users or groups in the Active Directory that will be granted administrator privileges on the
* file share. These users can do all file operations as the super-user. Acceptable formats include:
* DOMAIN\User1
, user1
, @group1
, and @DOMAIN\group1
.
*
*
* Use this option very carefully, because any user in this list can do anything they like on the file share,
* regardless of file permissions.
*
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateSMBFileShareRequest withAdminUserList(java.util.Collection adminUserList) {
setAdminUserList(adminUserList);
return this;
}
/**
*
* A list of users or groups in the Active Directory that are allowed to access the file share. A group
* must be prefixed with the @ character. Acceptable formats include: DOMAIN\User1
, user1
,
* @group1
, and @DOMAIN\group1
. Can only be set if Authentication is set to
* ActiveDirectory
.
*
*
* @return A list of users or groups in the Active Directory that are allowed to access the file share.
* A group must be prefixed with the @ character. Acceptable formats include: DOMAIN\User1
,
* user1
, @group1
, and @DOMAIN\group1
. Can only be set if
* Authentication is set to ActiveDirectory
.
*/
public java.util.List getValidUserList() {
if (validUserList == null) {
validUserList = new com.amazonaws.internal.SdkInternalList();
}
return validUserList;
}
/**
*
* A list of users or groups in the Active Directory that are allowed to access the file share. A group
* must be prefixed with the @ character. Acceptable formats include: DOMAIN\User1
, user1
,
* @group1
, and @DOMAIN\group1
. Can only be set if Authentication is set to
* ActiveDirectory
.
*
*
* @param validUserList
* A list of users or groups in the Active Directory that are allowed to access the file share.
* A group must be prefixed with the @ character. Acceptable formats include: DOMAIN\User1
,
* user1
, @group1
, and @DOMAIN\group1
. Can only be set if
* Authentication is set to ActiveDirectory
.
*/
public void setValidUserList(java.util.Collection validUserList) {
if (validUserList == null) {
this.validUserList = null;
return;
}
this.validUserList = new com.amazonaws.internal.SdkInternalList(validUserList);
}
/**
*
* A list of users or groups in the Active Directory that are allowed to access the file share. A group
* must be prefixed with the @ character. Acceptable formats include: DOMAIN\User1
, user1
,
* @group1
, and @DOMAIN\group1
. Can only be set if Authentication is set to
* ActiveDirectory
.
*
*
* NOTE: This method appends the values to the existing list (if any). Use
* {@link #setValidUserList(java.util.Collection)} or {@link #withValidUserList(java.util.Collection)} if you want
* to override the existing values.
*
*
* @param validUserList
* A list of users or groups in the Active Directory that are allowed to access the file share.
* A group must be prefixed with the @ character. Acceptable formats include: DOMAIN\User1
,
* user1
, @group1
, and @DOMAIN\group1
. Can only be set if
* Authentication is set to ActiveDirectory
.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateSMBFileShareRequest withValidUserList(String... validUserList) {
if (this.validUserList == null) {
setValidUserList(new com.amazonaws.internal.SdkInternalList(validUserList.length));
}
for (String ele : validUserList) {
this.validUserList.add(ele);
}
return this;
}
/**
*
* A list of users or groups in the Active Directory that are allowed to access the file share. A group
* must be prefixed with the @ character. Acceptable formats include: DOMAIN\User1
, user1
,
* @group1
, and @DOMAIN\group1
. Can only be set if Authentication is set to
* ActiveDirectory
.
*
*
* @param validUserList
* A list of users or groups in the Active Directory that are allowed to access the file share.
* A group must be prefixed with the @ character. Acceptable formats include: DOMAIN\User1
,
* user1
, @group1
, and @DOMAIN\group1
. Can only be set if
* Authentication is set to ActiveDirectory
.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateSMBFileShareRequest withValidUserList(java.util.Collection validUserList) {
setValidUserList(validUserList);
return this;
}
/**
*
* A list of users or groups in the Active Directory that are not allowed to access the file share. A group must be
* prefixed with the @ character. Acceptable formats include: DOMAIN\User1
, user1
,
* @group1
, and @DOMAIN\group1
. Can only be set if Authentication is set to
* ActiveDirectory
.
*
*
* @return A list of users or groups in the Active Directory that are not allowed to access the file share. A group
* must be prefixed with the @ character. Acceptable formats include: DOMAIN\User1
,
* user1
, @group1
, and @DOMAIN\group1
. Can only be set if
* Authentication is set to ActiveDirectory
.
*/
public java.util.List getInvalidUserList() {
if (invalidUserList == null) {
invalidUserList = new com.amazonaws.internal.SdkInternalList();
}
return invalidUserList;
}
/**
*
* A list of users or groups in the Active Directory that are not allowed to access the file share. A group must be
* prefixed with the @ character. Acceptable formats include: DOMAIN\User1
, user1
,
* @group1
, and @DOMAIN\group1
. Can only be set if Authentication is set to
* ActiveDirectory
.
*
*
* @param invalidUserList
* A list of users or groups in the Active Directory that are not allowed to access the file share. A group
* must be prefixed with the @ character. Acceptable formats include: DOMAIN\User1
,
* user1
, @group1
, and @DOMAIN\group1
. Can only be set if
* Authentication is set to ActiveDirectory
.
*/
public void setInvalidUserList(java.util.Collection invalidUserList) {
if (invalidUserList == null) {
this.invalidUserList = null;
return;
}
this.invalidUserList = new com.amazonaws.internal.SdkInternalList(invalidUserList);
}
/**
*
* A list of users or groups in the Active Directory that are not allowed to access the file share. A group must be
* prefixed with the @ character. Acceptable formats include: DOMAIN\User1
, user1
,
* @group1
, and @DOMAIN\group1
. Can only be set if Authentication is set to
* ActiveDirectory
.
*
*
* NOTE: This method appends the values to the existing list (if any). Use
* {@link #setInvalidUserList(java.util.Collection)} or {@link #withInvalidUserList(java.util.Collection)} if you
* want to override the existing values.
*
*
* @param invalidUserList
* A list of users or groups in the Active Directory that are not allowed to access the file share. A group
* must be prefixed with the @ character. Acceptable formats include: DOMAIN\User1
,
* user1
, @group1
, and @DOMAIN\group1
. Can only be set if
* Authentication is set to ActiveDirectory
.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateSMBFileShareRequest withInvalidUserList(String... invalidUserList) {
if (this.invalidUserList == null) {
setInvalidUserList(new com.amazonaws.internal.SdkInternalList(invalidUserList.length));
}
for (String ele : invalidUserList) {
this.invalidUserList.add(ele);
}
return this;
}
/**
*
* A list of users or groups in the Active Directory that are not allowed to access the file share. A group must be
* prefixed with the @ character. Acceptable formats include: DOMAIN\User1
, user1
,
* @group1
, and @DOMAIN\group1
. Can only be set if Authentication is set to
* ActiveDirectory
.
*
*
* @param invalidUserList
* A list of users or groups in the Active Directory that are not allowed to access the file share. A group
* must be prefixed with the @ character. Acceptable formats include: DOMAIN\User1
,
* user1
, @group1
, and @DOMAIN\group1
. Can only be set if
* Authentication is set to ActiveDirectory
.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateSMBFileShareRequest withInvalidUserList(java.util.Collection invalidUserList) {
setInvalidUserList(invalidUserList);
return this;
}
/**
*
* The Amazon Resource Name (ARN) of the storage used for audit logs.
*
*
* @param auditDestinationARN
* The Amazon Resource Name (ARN) of the storage used for audit logs.
*/
public void setAuditDestinationARN(String auditDestinationARN) {
this.auditDestinationARN = auditDestinationARN;
}
/**
*
* The Amazon Resource Name (ARN) of the storage used for audit logs.
*
*
* @return The Amazon Resource Name (ARN) of the storage used for audit logs.
*/
public String getAuditDestinationARN() {
return this.auditDestinationARN;
}
/**
*
* The Amazon Resource Name (ARN) of the storage used for audit logs.
*
*
* @param auditDestinationARN
* The Amazon Resource Name (ARN) of the storage used for audit logs.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateSMBFileShareRequest withAuditDestinationARN(String auditDestinationARN) {
setAuditDestinationARN(auditDestinationARN);
return this;
}
/**
*
* The authentication method that users use to access the file share. The default is ActiveDirectory
.
*
*
* Valid Values: ActiveDirectory
| GuestAccess
*
*
* @param authentication
* The authentication method that users use to access the file share. The default is
* ActiveDirectory
.
*
* Valid Values: ActiveDirectory
| GuestAccess
*/
public void setAuthentication(String authentication) {
this.authentication = authentication;
}
/**
*
* The authentication method that users use to access the file share. The default is ActiveDirectory
.
*
*
* Valid Values: ActiveDirectory
| GuestAccess
*
*
* @return The authentication method that users use to access the file share. The default is
* ActiveDirectory
.
*
* Valid Values: ActiveDirectory
| GuestAccess
*/
public String getAuthentication() {
return this.authentication;
}
/**
*
* The authentication method that users use to access the file share. The default is ActiveDirectory
.
*
*
* Valid Values: ActiveDirectory
| GuestAccess
*
*
* @param authentication
* The authentication method that users use to access the file share. The default is
* ActiveDirectory
.
*
* Valid Values: ActiveDirectory
| GuestAccess
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateSMBFileShareRequest withAuthentication(String authentication) {
setAuthentication(authentication);
return this;
}
/**
*
* The case of an object name in an Amazon S3 bucket. For ClientSpecified
, the client determines the
* case sensitivity. For CaseSensitive
, the gateway determines the case sensitivity. The default value
* is ClientSpecified
.
*
*
* @param caseSensitivity
* The case of an object name in an Amazon S3 bucket. For ClientSpecified
, the client determines
* the case sensitivity. For CaseSensitive
, the gateway determines the case sensitivity. The
* default value is ClientSpecified
.
* @see CaseSensitivity
*/
public void setCaseSensitivity(String caseSensitivity) {
this.caseSensitivity = caseSensitivity;
}
/**
*
* The case of an object name in an Amazon S3 bucket. For ClientSpecified
, the client determines the
* case sensitivity. For CaseSensitive
, the gateway determines the case sensitivity. The default value
* is ClientSpecified
.
*
*
* @return The case of an object name in an Amazon S3 bucket. For ClientSpecified
, the client
* determines the case sensitivity. For CaseSensitive
, the gateway determines the case
* sensitivity. The default value is ClientSpecified
.
* @see CaseSensitivity
*/
public String getCaseSensitivity() {
return this.caseSensitivity;
}
/**
*
* The case of an object name in an Amazon S3 bucket. For ClientSpecified
, the client determines the
* case sensitivity. For CaseSensitive
, the gateway determines the case sensitivity. The default value
* is ClientSpecified
.
*
*
* @param caseSensitivity
* The case of an object name in an Amazon S3 bucket. For ClientSpecified
, the client determines
* the case sensitivity. For CaseSensitive
, the gateway determines the case sensitivity. The
* default value is ClientSpecified
.
* @return Returns a reference to this object so that method calls can be chained together.
* @see CaseSensitivity
*/
public CreateSMBFileShareRequest withCaseSensitivity(String caseSensitivity) {
setCaseSensitivity(caseSensitivity);
return this;
}
/**
*
* The case of an object name in an Amazon S3 bucket. For ClientSpecified
, the client determines the
* case sensitivity. For CaseSensitive
, the gateway determines the case sensitivity. The default value
* is ClientSpecified
.
*
*
* @param caseSensitivity
* The case of an object name in an Amazon S3 bucket. For ClientSpecified
, the client determines
* the case sensitivity. For CaseSensitive
, the gateway determines the case sensitivity. The
* default value is ClientSpecified
.
* @return Returns a reference to this object so that method calls can be chained together.
* @see CaseSensitivity
*/
public CreateSMBFileShareRequest withCaseSensitivity(CaseSensitivity caseSensitivity) {
this.caseSensitivity = caseSensitivity.toString();
return this;
}
/**
*
* A list of up to 50 tags that can be assigned to the NFS file share. Each tag is a key-value pair.
*
*
*
* Valid characters for key and value are letters, spaces, and numbers representable in UTF-8 format, and the
* following special characters: + - = . _ : / @. The maximum length of a tag's key is 128 characters, and the
* maximum length for a tag's value is 256.
*
*
*
* @return A list of up to 50 tags that can be assigned to the NFS file share. Each tag is a key-value pair.
*
*
* Valid characters for key and value are letters, spaces, and numbers representable in UTF-8 format, and
* the following special characters: + - = . _ : / @. The maximum length of a tag's key is 128 characters,
* and the maximum length for a tag's value is 256.
*
*/
public java.util.List getTags() {
if (tags == null) {
tags = new com.amazonaws.internal.SdkInternalList();
}
return tags;
}
/**
*
* A list of up to 50 tags that can be assigned to the NFS file share. Each tag is a key-value pair.
*
*
*
* Valid characters for key and value are letters, spaces, and numbers representable in UTF-8 format, and the
* following special characters: + - = . _ : / @. The maximum length of a tag's key is 128 characters, and the
* maximum length for a tag's value is 256.
*
*
*
* @param tags
* A list of up to 50 tags that can be assigned to the NFS file share. Each tag is a key-value pair.
*
*
* Valid characters for key and value are letters, spaces, and numbers representable in UTF-8 format, and the
* following special characters: + - = . _ : / @. The maximum length of a tag's key is 128 characters, and
* the maximum length for a tag's value is 256.
*
*/
public void setTags(java.util.Collection tags) {
if (tags == null) {
this.tags = null;
return;
}
this.tags = new com.amazonaws.internal.SdkInternalList(tags);
}
/**
*
* A list of up to 50 tags that can be assigned to the NFS file share. Each tag is a key-value pair.
*
*
*
* Valid characters for key and value are letters, spaces, and numbers representable in UTF-8 format, and the
* following special characters: + - = . _ : / @. The maximum length of a tag's key is 128 characters, and the
* maximum length for a tag's value is 256.
*
*
*
* NOTE: This method appends the values to the existing list (if any). Use
* {@link #setTags(java.util.Collection)} or {@link #withTags(java.util.Collection)} if you want to override the
* existing values.
*
*
* @param tags
* A list of up to 50 tags that can be assigned to the NFS file share. Each tag is a key-value pair.
*
*
* Valid characters for key and value are letters, spaces, and numbers representable in UTF-8 format, and the
* following special characters: + - = . _ : / @. The maximum length of a tag's key is 128 characters, and
* the maximum length for a tag's value is 256.
*
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateSMBFileShareRequest withTags(Tag... tags) {
if (this.tags == null) {
setTags(new com.amazonaws.internal.SdkInternalList(tags.length));
}
for (Tag ele : tags) {
this.tags.add(ele);
}
return this;
}
/**
*
* A list of up to 50 tags that can be assigned to the NFS file share. Each tag is a key-value pair.
*
*
*
* Valid characters for key and value are letters, spaces, and numbers representable in UTF-8 format, and the
* following special characters: + - = . _ : / @. The maximum length of a tag's key is 128 characters, and the
* maximum length for a tag's value is 256.
*
*
*
* @param tags
* A list of up to 50 tags that can be assigned to the NFS file share. Each tag is a key-value pair.
*
*
* Valid characters for key and value are letters, spaces, and numbers representable in UTF-8 format, and the
* following special characters: + - = . _ : / @. The maximum length of a tag's key is 128 characters, and
* the maximum length for a tag's value is 256.
*
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateSMBFileShareRequest withTags(java.util.Collection tags) {
setTags(tags);
return this;
}
/**
*
* The name of the file share. Optional.
*
*
*
* FileShareName
must be set if an S3 prefix name is set in LocationARN
, or if an access
* point or access point alias is used.
*
*
*
* @param fileShareName
* The name of the file share. Optional.
*
* FileShareName
must be set if an S3 prefix name is set in LocationARN
, or if an
* access point or access point alias is used.
*
*/
public void setFileShareName(String fileShareName) {
this.fileShareName = fileShareName;
}
/**
*
* The name of the file share. Optional.
*
*
*
* FileShareName
must be set if an S3 prefix name is set in LocationARN
, or if an access
* point or access point alias is used.
*
*
*
* @return The name of the file share. Optional.
*
* FileShareName
must be set if an S3 prefix name is set in LocationARN
, or if an
* access point or access point alias is used.
*
*/
public String getFileShareName() {
return this.fileShareName;
}
/**
*
* The name of the file share. Optional.
*
*
*
* FileShareName
must be set if an S3 prefix name is set in LocationARN
, or if an access
* point or access point alias is used.
*
*
*
* @param fileShareName
* The name of the file share. Optional.
*
* FileShareName
must be set if an S3 prefix name is set in LocationARN
, or if an
* access point or access point alias is used.
*
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateSMBFileShareRequest withFileShareName(String fileShareName) {
setFileShareName(fileShareName);
return this;
}
/**
*
* Specifies refresh cache information for the file share.
*
*
* @param cacheAttributes
* Specifies refresh cache information for the file share.
*/
public void setCacheAttributes(CacheAttributes cacheAttributes) {
this.cacheAttributes = cacheAttributes;
}
/**
*
* Specifies refresh cache information for the file share.
*
*
* @return Specifies refresh cache information for the file share.
*/
public CacheAttributes getCacheAttributes() {
return this.cacheAttributes;
}
/**
*
* Specifies refresh cache information for the file share.
*
*
* @param cacheAttributes
* Specifies refresh cache information for the file share.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateSMBFileShareRequest withCacheAttributes(CacheAttributes cacheAttributes) {
setCacheAttributes(cacheAttributes);
return this;
}
/**
*
* The notification policy of the file share. SettlingTimeInSeconds
controls the number of seconds to
* wait after the last point in time a client wrote to a file before generating an ObjectUploaded
* notification. Because clients can make many small writes to files, it's best to set this parameter for as long as
* possible to avoid generating multiple notifications for the same file in a small time period.
*
*
*
* SettlingTimeInSeconds
has no effect on the timing of the object uploading to Amazon S3, only the
* timing of the notification.
*
*
*
* The following example sets NotificationPolicy
on with SettlingTimeInSeconds
set to 60.
*
*
* {\"Upload\": {\"SettlingTimeInSeconds\": 60}}
*
*
* The following example sets NotificationPolicy
off.
*
*
* {}
*
*
* @param notificationPolicy
* The notification policy of the file share. SettlingTimeInSeconds
controls the number of
* seconds to wait after the last point in time a client wrote to a file before generating an
* ObjectUploaded
notification. Because clients can make many small writes to files, it's best
* to set this parameter for as long as possible to avoid generating multiple notifications for the same file
* in a small time period.
*
* SettlingTimeInSeconds
has no effect on the timing of the object uploading to Amazon S3, only
* the timing of the notification.
*
*
*
* The following example sets NotificationPolicy
on with SettlingTimeInSeconds
set
* to 60.
*
*
* {\"Upload\": {\"SettlingTimeInSeconds\": 60}}
*
*
* The following example sets NotificationPolicy
off.
*
*
* {}
*/
public void setNotificationPolicy(String notificationPolicy) {
this.notificationPolicy = notificationPolicy;
}
/**
*
* The notification policy of the file share. SettlingTimeInSeconds
controls the number of seconds to
* wait after the last point in time a client wrote to a file before generating an ObjectUploaded
* notification. Because clients can make many small writes to files, it's best to set this parameter for as long as
* possible to avoid generating multiple notifications for the same file in a small time period.
*
*
*
* SettlingTimeInSeconds
has no effect on the timing of the object uploading to Amazon S3, only the
* timing of the notification.
*
*
*
* The following example sets NotificationPolicy
on with SettlingTimeInSeconds
set to 60.
*
*
* {\"Upload\": {\"SettlingTimeInSeconds\": 60}}
*
*
* The following example sets NotificationPolicy
off.
*
*
* {}
*
*
* @return The notification policy of the file share. SettlingTimeInSeconds
controls the number of
* seconds to wait after the last point in time a client wrote to a file before generating an
* ObjectUploaded
notification. Because clients can make many small writes to files, it's best
* to set this parameter for as long as possible to avoid generating multiple notifications for the same
* file in a small time period.
*
* SettlingTimeInSeconds
has no effect on the timing of the object uploading to Amazon S3, only
* the timing of the notification.
*
*
*
* The following example sets NotificationPolicy
on with SettlingTimeInSeconds
set
* to 60.
*
*
* {\"Upload\": {\"SettlingTimeInSeconds\": 60}}
*
*
* The following example sets NotificationPolicy
off.
*
*
* {}
*/
public String getNotificationPolicy() {
return this.notificationPolicy;
}
/**
*
* The notification policy of the file share. SettlingTimeInSeconds
controls the number of seconds to
* wait after the last point in time a client wrote to a file before generating an ObjectUploaded
* notification. Because clients can make many small writes to files, it's best to set this parameter for as long as
* possible to avoid generating multiple notifications for the same file in a small time period.
*
*
*
* SettlingTimeInSeconds
has no effect on the timing of the object uploading to Amazon S3, only the
* timing of the notification.
*
*
*
* The following example sets NotificationPolicy
on with SettlingTimeInSeconds
set to 60.
*
*
* {\"Upload\": {\"SettlingTimeInSeconds\": 60}}
*
*
* The following example sets NotificationPolicy
off.
*
*
* {}
*
*
* @param notificationPolicy
* The notification policy of the file share. SettlingTimeInSeconds
controls the number of
* seconds to wait after the last point in time a client wrote to a file before generating an
* ObjectUploaded
notification. Because clients can make many small writes to files, it's best
* to set this parameter for as long as possible to avoid generating multiple notifications for the same file
* in a small time period.
*
* SettlingTimeInSeconds
has no effect on the timing of the object uploading to Amazon S3, only
* the timing of the notification.
*
*
*
* The following example sets NotificationPolicy
on with SettlingTimeInSeconds
set
* to 60.
*
*
* {\"Upload\": {\"SettlingTimeInSeconds\": 60}}
*
*
* The following example sets NotificationPolicy
off.
*
*
* {}
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateSMBFileShareRequest withNotificationPolicy(String notificationPolicy) {
setNotificationPolicy(notificationPolicy);
return this;
}
/**
*
* Specifies the DNS name for the VPC endpoint that the SMB file share uses to connect to Amazon S3.
*
*
*
* This parameter is required for SMB file shares that connect to Amazon S3 through a VPC endpoint, a VPC access
* point, or an access point alias that points to a VPC access point.
*
*
*
* @param vPCEndpointDNSName
* Specifies the DNS name for the VPC endpoint that the SMB file share uses to connect to Amazon S3.
*
*
* This parameter is required for SMB file shares that connect to Amazon S3 through a VPC endpoint, a VPC
* access point, or an access point alias that points to a VPC access point.
*
*/
public void setVPCEndpointDNSName(String vPCEndpointDNSName) {
this.vPCEndpointDNSName = vPCEndpointDNSName;
}
/**
*
* Specifies the DNS name for the VPC endpoint that the SMB file share uses to connect to Amazon S3.
*
*
*
* This parameter is required for SMB file shares that connect to Amazon S3 through a VPC endpoint, a VPC access
* point, or an access point alias that points to a VPC access point.
*
*
*
* @return Specifies the DNS name for the VPC endpoint that the SMB file share uses to connect to Amazon S3.
*
*
* This parameter is required for SMB file shares that connect to Amazon S3 through a VPC endpoint, a VPC
* access point, or an access point alias that points to a VPC access point.
*
*/
public String getVPCEndpointDNSName() {
return this.vPCEndpointDNSName;
}
/**
*
* Specifies the DNS name for the VPC endpoint that the SMB file share uses to connect to Amazon S3.
*
*
*
* This parameter is required for SMB file shares that connect to Amazon S3 through a VPC endpoint, a VPC access
* point, or an access point alias that points to a VPC access point.
*
*
*
* @param vPCEndpointDNSName
* Specifies the DNS name for the VPC endpoint that the SMB file share uses to connect to Amazon S3.
*
*
* This parameter is required for SMB file shares that connect to Amazon S3 through a VPC endpoint, a VPC
* access point, or an access point alias that points to a VPC access point.
*
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateSMBFileShareRequest withVPCEndpointDNSName(String vPCEndpointDNSName) {
setVPCEndpointDNSName(vPCEndpointDNSName);
return this;
}
/**
*
* Specifies the Region of the S3 bucket where the SMB file share stores files.
*
*
*
* This parameter is required for SMB file shares that connect to Amazon S3 through a VPC endpoint, a VPC access
* point, or an access point alias that points to a VPC access point.
*
*
*
* @param bucketRegion
* Specifies the Region of the S3 bucket where the SMB file share stores files.
*
* This parameter is required for SMB file shares that connect to Amazon S3 through a VPC endpoint, a VPC
* access point, or an access point alias that points to a VPC access point.
*
*/
public void setBucketRegion(String bucketRegion) {
this.bucketRegion = bucketRegion;
}
/**
*
* Specifies the Region of the S3 bucket where the SMB file share stores files.
*
*
*
* This parameter is required for SMB file shares that connect to Amazon S3 through a VPC endpoint, a VPC access
* point, or an access point alias that points to a VPC access point.
*
*
*
* @return Specifies the Region of the S3 bucket where the SMB file share stores files.
*
* This parameter is required for SMB file shares that connect to Amazon S3 through a VPC endpoint, a VPC
* access point, or an access point alias that points to a VPC access point.
*
*/
public String getBucketRegion() {
return this.bucketRegion;
}
/**
*
* Specifies the Region of the S3 bucket where the SMB file share stores files.
*
*
*
* This parameter is required for SMB file shares that connect to Amazon S3 through a VPC endpoint, a VPC access
* point, or an access point alias that points to a VPC access point.
*
*
*
* @param bucketRegion
* Specifies the Region of the S3 bucket where the SMB file share stores files.
*
* This parameter is required for SMB file shares that connect to Amazon S3 through a VPC endpoint, a VPC
* access point, or an access point alias that points to a VPC access point.
*
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateSMBFileShareRequest withBucketRegion(String bucketRegion) {
setBucketRegion(bucketRegion);
return this;
}
/**
*
* Specifies whether opportunistic locking is enabled for the SMB file share.
*
*
*
* Enabling opportunistic locking on case-sensitive shares is not recommended for workloads that involve access to
* files with the same name in different case.
*
*
*
* Valid Values: true
| false
*
*
* @param oplocksEnabled
* Specifies whether opportunistic locking is enabled for the SMB file share.
*
* Enabling opportunistic locking on case-sensitive shares is not recommended for workloads that involve
* access to files with the same name in different case.
*
*
*
* Valid Values: true
| false
*/
public void setOplocksEnabled(Boolean oplocksEnabled) {
this.oplocksEnabled = oplocksEnabled;
}
/**
*
* Specifies whether opportunistic locking is enabled for the SMB file share.
*
*
*
* Enabling opportunistic locking on case-sensitive shares is not recommended for workloads that involve access to
* files with the same name in different case.
*
*
*
* Valid Values: true
| false
*
*
* @return Specifies whether opportunistic locking is enabled for the SMB file share.
*
* Enabling opportunistic locking on case-sensitive shares is not recommended for workloads that involve
* access to files with the same name in different case.
*
*
*
* Valid Values: true
| false
*/
public Boolean getOplocksEnabled() {
return this.oplocksEnabled;
}
/**
*
* Specifies whether opportunistic locking is enabled for the SMB file share.
*
*
*
* Enabling opportunistic locking on case-sensitive shares is not recommended for workloads that involve access to
* files with the same name in different case.
*
*
*
* Valid Values: true
| false
*
*
* @param oplocksEnabled
* Specifies whether opportunistic locking is enabled for the SMB file share.
*
* Enabling opportunistic locking on case-sensitive shares is not recommended for workloads that involve
* access to files with the same name in different case.
*
*
*
* Valid Values: true
| false
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateSMBFileShareRequest withOplocksEnabled(Boolean oplocksEnabled) {
setOplocksEnabled(oplocksEnabled);
return this;
}
/**
*
* Specifies whether opportunistic locking is enabled for the SMB file share.
*
*
*
* Enabling opportunistic locking on case-sensitive shares is not recommended for workloads that involve access to
* files with the same name in different case.
*
*
*
* Valid Values: true
| false
*
*
* @return Specifies whether opportunistic locking is enabled for the SMB file share.
*
* Enabling opportunistic locking on case-sensitive shares is not recommended for workloads that involve
* access to files with the same name in different case.
*
*
*
* Valid Values: true
| false
*/
public Boolean isOplocksEnabled() {
return this.oplocksEnabled;
}
/**
* 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 (getClientToken() != null)
sb.append("ClientToken: ").append(getClientToken()).append(",");
if (getGatewayARN() != null)
sb.append("GatewayARN: ").append(getGatewayARN()).append(",");
if (getKMSEncrypted() != null)
sb.append("KMSEncrypted: ").append(getKMSEncrypted()).append(",");
if (getKMSKey() != null)
sb.append("KMSKey: ").append(getKMSKey()).append(",");
if (getRole() != null)
sb.append("Role: ").append(getRole()).append(",");
if (getLocationARN() != null)
sb.append("LocationARN: ").append(getLocationARN()).append(",");
if (getDefaultStorageClass() != null)
sb.append("DefaultStorageClass: ").append(getDefaultStorageClass()).append(",");
if (getObjectACL() != null)
sb.append("ObjectACL: ").append(getObjectACL()).append(",");
if (getReadOnly() != null)
sb.append("ReadOnly: ").append(getReadOnly()).append(",");
if (getGuessMIMETypeEnabled() != null)
sb.append("GuessMIMETypeEnabled: ").append(getGuessMIMETypeEnabled()).append(",");
if (getRequesterPays() != null)
sb.append("RequesterPays: ").append(getRequesterPays()).append(",");
if (getSMBACLEnabled() != null)
sb.append("SMBACLEnabled: ").append(getSMBACLEnabled()).append(",");
if (getAccessBasedEnumeration() != null)
sb.append("AccessBasedEnumeration: ").append(getAccessBasedEnumeration()).append(",");
if (getAdminUserList() != null)
sb.append("AdminUserList: ").append(getAdminUserList()).append(",");
if (getValidUserList() != null)
sb.append("ValidUserList: ").append(getValidUserList()).append(",");
if (getInvalidUserList() != null)
sb.append("InvalidUserList: ").append(getInvalidUserList()).append(",");
if (getAuditDestinationARN() != null)
sb.append("AuditDestinationARN: ").append(getAuditDestinationARN()).append(",");
if (getAuthentication() != null)
sb.append("Authentication: ").append(getAuthentication()).append(",");
if (getCaseSensitivity() != null)
sb.append("CaseSensitivity: ").append(getCaseSensitivity()).append(",");
if (getTags() != null)
sb.append("Tags: ").append(getTags()).append(",");
if (getFileShareName() != null)
sb.append("FileShareName: ").append(getFileShareName()).append(",");
if (getCacheAttributes() != null)
sb.append("CacheAttributes: ").append(getCacheAttributes()).append(",");
if (getNotificationPolicy() != null)
sb.append("NotificationPolicy: ").append(getNotificationPolicy()).append(",");
if (getVPCEndpointDNSName() != null)
sb.append("VPCEndpointDNSName: ").append(getVPCEndpointDNSName()).append(",");
if (getBucketRegion() != null)
sb.append("BucketRegion: ").append(getBucketRegion()).append(",");
if (getOplocksEnabled() != null)
sb.append("OplocksEnabled: ").append(getOplocksEnabled());
sb.append("}");
return sb.toString();
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (obj instanceof CreateSMBFileShareRequest == false)
return false;
CreateSMBFileShareRequest other = (CreateSMBFileShareRequest) obj;
if (other.getClientToken() == null ^ this.getClientToken() == null)
return false;
if (other.getClientToken() != null && other.getClientToken().equals(this.getClientToken()) == false)
return false;
if (other.getGatewayARN() == null ^ this.getGatewayARN() == null)
return false;
if (other.getGatewayARN() != null && other.getGatewayARN().equals(this.getGatewayARN()) == false)
return false;
if (other.getKMSEncrypted() == null ^ this.getKMSEncrypted() == null)
return false;
if (other.getKMSEncrypted() != null && other.getKMSEncrypted().equals(this.getKMSEncrypted()) == false)
return false;
if (other.getKMSKey() == null ^ this.getKMSKey() == null)
return false;
if (other.getKMSKey() != null && other.getKMSKey().equals(this.getKMSKey()) == false)
return false;
if (other.getRole() == null ^ this.getRole() == null)
return false;
if (other.getRole() != null && other.getRole().equals(this.getRole()) == false)
return false;
if (other.getLocationARN() == null ^ this.getLocationARN() == null)
return false;
if (other.getLocationARN() != null && other.getLocationARN().equals(this.getLocationARN()) == false)
return false;
if (other.getDefaultStorageClass() == null ^ this.getDefaultStorageClass() == null)
return false;
if (other.getDefaultStorageClass() != null && other.getDefaultStorageClass().equals(this.getDefaultStorageClass()) == false)
return false;
if (other.getObjectACL() == null ^ this.getObjectACL() == null)
return false;
if (other.getObjectACL() != null && other.getObjectACL().equals(this.getObjectACL()) == false)
return false;
if (other.getReadOnly() == null ^ this.getReadOnly() == null)
return false;
if (other.getReadOnly() != null && other.getReadOnly().equals(this.getReadOnly()) == false)
return false;
if (other.getGuessMIMETypeEnabled() == null ^ this.getGuessMIMETypeEnabled() == null)
return false;
if (other.getGuessMIMETypeEnabled() != null && other.getGuessMIMETypeEnabled().equals(this.getGuessMIMETypeEnabled()) == false)
return false;
if (other.getRequesterPays() == null ^ this.getRequesterPays() == null)
return false;
if (other.getRequesterPays() != null && other.getRequesterPays().equals(this.getRequesterPays()) == false)
return false;
if (other.getSMBACLEnabled() == null ^ this.getSMBACLEnabled() == null)
return false;
if (other.getSMBACLEnabled() != null && other.getSMBACLEnabled().equals(this.getSMBACLEnabled()) == false)
return false;
if (other.getAccessBasedEnumeration() == null ^ this.getAccessBasedEnumeration() == null)
return false;
if (other.getAccessBasedEnumeration() != null && other.getAccessBasedEnumeration().equals(this.getAccessBasedEnumeration()) == false)
return false;
if (other.getAdminUserList() == null ^ this.getAdminUserList() == null)
return false;
if (other.getAdminUserList() != null && other.getAdminUserList().equals(this.getAdminUserList()) == false)
return false;
if (other.getValidUserList() == null ^ this.getValidUserList() == null)
return false;
if (other.getValidUserList() != null && other.getValidUserList().equals(this.getValidUserList()) == false)
return false;
if (other.getInvalidUserList() == null ^ this.getInvalidUserList() == null)
return false;
if (other.getInvalidUserList() != null && other.getInvalidUserList().equals(this.getInvalidUserList()) == false)
return false;
if (other.getAuditDestinationARN() == null ^ this.getAuditDestinationARN() == null)
return false;
if (other.getAuditDestinationARN() != null && other.getAuditDestinationARN().equals(this.getAuditDestinationARN()) == false)
return false;
if (other.getAuthentication() == null ^ this.getAuthentication() == null)
return false;
if (other.getAuthentication() != null && other.getAuthentication().equals(this.getAuthentication()) == false)
return false;
if (other.getCaseSensitivity() == null ^ this.getCaseSensitivity() == null)
return false;
if (other.getCaseSensitivity() != null && other.getCaseSensitivity().equals(this.getCaseSensitivity()) == false)
return false;
if (other.getTags() == null ^ this.getTags() == null)
return false;
if (other.getTags() != null && other.getTags().equals(this.getTags()) == false)
return false;
if (other.getFileShareName() == null ^ this.getFileShareName() == null)
return false;
if (other.getFileShareName() != null && other.getFileShareName().equals(this.getFileShareName()) == false)
return false;
if (other.getCacheAttributes() == null ^ this.getCacheAttributes() == null)
return false;
if (other.getCacheAttributes() != null && other.getCacheAttributes().equals(this.getCacheAttributes()) == false)
return false;
if (other.getNotificationPolicy() == null ^ this.getNotificationPolicy() == null)
return false;
if (other.getNotificationPolicy() != null && other.getNotificationPolicy().equals(this.getNotificationPolicy()) == false)
return false;
if (other.getVPCEndpointDNSName() == null ^ this.getVPCEndpointDNSName() == null)
return false;
if (other.getVPCEndpointDNSName() != null && other.getVPCEndpointDNSName().equals(this.getVPCEndpointDNSName()) == false)
return false;
if (other.getBucketRegion() == null ^ this.getBucketRegion() == null)
return false;
if (other.getBucketRegion() != null && other.getBucketRegion().equals(this.getBucketRegion()) == false)
return false;
if (other.getOplocksEnabled() == null ^ this.getOplocksEnabled() == null)
return false;
if (other.getOplocksEnabled() != null && other.getOplocksEnabled().equals(this.getOplocksEnabled()) == false)
return false;
return true;
}
@Override
public int hashCode() {
final int prime = 31;
int hashCode = 1;
hashCode = prime * hashCode + ((getClientToken() == null) ? 0 : getClientToken().hashCode());
hashCode = prime * hashCode + ((getGatewayARN() == null) ? 0 : getGatewayARN().hashCode());
hashCode = prime * hashCode + ((getKMSEncrypted() == null) ? 0 : getKMSEncrypted().hashCode());
hashCode = prime * hashCode + ((getKMSKey() == null) ? 0 : getKMSKey().hashCode());
hashCode = prime * hashCode + ((getRole() == null) ? 0 : getRole().hashCode());
hashCode = prime * hashCode + ((getLocationARN() == null) ? 0 : getLocationARN().hashCode());
hashCode = prime * hashCode + ((getDefaultStorageClass() == null) ? 0 : getDefaultStorageClass().hashCode());
hashCode = prime * hashCode + ((getObjectACL() == null) ? 0 : getObjectACL().hashCode());
hashCode = prime * hashCode + ((getReadOnly() == null) ? 0 : getReadOnly().hashCode());
hashCode = prime * hashCode + ((getGuessMIMETypeEnabled() == null) ? 0 : getGuessMIMETypeEnabled().hashCode());
hashCode = prime * hashCode + ((getRequesterPays() == null) ? 0 : getRequesterPays().hashCode());
hashCode = prime * hashCode + ((getSMBACLEnabled() == null) ? 0 : getSMBACLEnabled().hashCode());
hashCode = prime * hashCode + ((getAccessBasedEnumeration() == null) ? 0 : getAccessBasedEnumeration().hashCode());
hashCode = prime * hashCode + ((getAdminUserList() == null) ? 0 : getAdminUserList().hashCode());
hashCode = prime * hashCode + ((getValidUserList() == null) ? 0 : getValidUserList().hashCode());
hashCode = prime * hashCode + ((getInvalidUserList() == null) ? 0 : getInvalidUserList().hashCode());
hashCode = prime * hashCode + ((getAuditDestinationARN() == null) ? 0 : getAuditDestinationARN().hashCode());
hashCode = prime * hashCode + ((getAuthentication() == null) ? 0 : getAuthentication().hashCode());
hashCode = prime * hashCode + ((getCaseSensitivity() == null) ? 0 : getCaseSensitivity().hashCode());
hashCode = prime * hashCode + ((getTags() == null) ? 0 : getTags().hashCode());
hashCode = prime * hashCode + ((getFileShareName() == null) ? 0 : getFileShareName().hashCode());
hashCode = prime * hashCode + ((getCacheAttributes() == null) ? 0 : getCacheAttributes().hashCode());
hashCode = prime * hashCode + ((getNotificationPolicy() == null) ? 0 : getNotificationPolicy().hashCode());
hashCode = prime * hashCode + ((getVPCEndpointDNSName() == null) ? 0 : getVPCEndpointDNSName().hashCode());
hashCode = prime * hashCode + ((getBucketRegion() == null) ? 0 : getBucketRegion().hashCode());
hashCode = prime * hashCode + ((getOplocksEnabled() == null) ? 0 : getOplocksEnabled().hashCode());
return hashCode;
}
@Override
public CreateSMBFileShareRequest clone() {
return (CreateSMBFileShareRequest) super.clone();
}
}