com.amazonaws.services.datasync.model.Options Maven / Gradle / Ivy
/*
* 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.datasync.model;
import java.io.Serializable;
import javax.annotation.Generated;
import com.amazonaws.protocol.StructuredPojo;
import com.amazonaws.protocol.ProtocolMarshaller;
/**
*
* Represents the options that are available to control the behavior of a StartTaskExecution
* operation. Behavior includes preserving metadata such as user ID (UID), group ID (GID), and file permissions, and
* also overwriting files in the destination, data integrity verification, and so on.
*
*
* A task has a set of default options associated with it. If you don't specify an option in StartTaskExecution, the
* default value is used. You can override the defaults options on each task execution by specifying an overriding
* Options
value to StartTaskExecution.
*
*
* @see AWS API
* Documentation
*/
@Generated("com.amazonaws:aws-java-sdk-code-generator")
public class Options implements Serializable, Cloneable, StructuredPojo {
/**
*
* A value that determines whether a data integrity verification should be performed at the end of a task execution
* after all data and metadata have been transferred. For more information, see Configure task settings.
*
*
* Default value: POINT_IN_TIME_CONSISTENT
*
*
* ONLY_FILES_TRANSFERRED
(recommended): Perform verification only on files that were transferred.
*
*
* POINT_IN_TIME_CONSISTENT
: Scan the entire source and entire destination at the end of the transfer
* to verify that source and destination are fully synchronized. This option isn't supported when transferring to S3
* Glacier Flexible Retrieval or S3 Glacier Deep Archive storage classes.
*
*
* NONE
: No additional verification is done at the end of the transfer, but all data transmissions are
* integrity-checked with checksum verification during the transfer.
*
*/
private String verifyMode;
/**
*
* A value that determines whether files at the destination should be overwritten or preserved when copying files.
* If set to NEVER
a destination file will not be replaced by a source file, even if the destination
* file differs from the source file. If you modify files in the destination and you sync the files, you can use
* this value to protect against overwriting those changes.
*
*
* Some storage classes have specific behaviors that can affect your S3 storage cost. For detailed information, see
*
* Considerations when working with Amazon S3 storage classes in DataSync in the DataSync User Guide.
*
*/
private String overwriteMode;
/**
*
* A file metadata value that shows the last time a file was accessed (that is, when the file was read or written
* to). If you set Atime
to BEST_EFFORT
, DataSync attempts to preserve the original
* Atime
attribute on all source files (that is, the version before the PREPARING
phase).
* However, Atime
's behavior is not fully standard across platforms, so DataSync can only do this on a
* best-effort basis.
*
*
* Default value: BEST_EFFORT
*
*
* BEST_EFFORT
: Attempt to preserve the per-file Atime
value (recommended).
*
*
* NONE
: Ignore Atime
.
*
*
*
* If Atime
is set to BEST_EFFORT
, Mtime
must be set to PRESERVE
* .
*
*
* If Atime
is set to NONE
, Mtime
must also be NONE
.
*
*
*/
private String atime;
/**
*
* A value that indicates the last time that a file was modified (that is, a file was written to) before the
* PREPARING
phase. This option is required for cases when you need to run the same task more than one
* time.
*
*
* Default Value: PRESERVE
*
*
* PRESERVE
: Preserve original Mtime
(recommended)
*
*
* NONE
: Ignore Mtime
.
*
*
*
* If Mtime
is set to PRESERVE
, Atime
must be set to BEST_EFFORT
* .
*
*
* If Mtime
is set to NONE
, Atime
must also be set to NONE
.
*
*
*/
private String mtime;
/**
*
* The POSIX user ID (UID) of the file's owner.
*
*
* For more information, see Metadata copied
* by DataSync.
*
*
* Default value: INT_VALUE
. This preserves the integer value of the ID.
*
*
* INT_VALUE
: Preserve the integer value of UID and group ID (GID) (recommended).
*
*
* NONE
: Ignore UID and GID.
*
*/
private String uid;
/**
*
* The POSIX group ID (GID) of the file's owners.
*
*
* For more information, see Metadata copied
* by DataSync.
*
*
* Default value: INT_VALUE
. This preserves the integer value of the ID.
*
*
* INT_VALUE
: Preserve the integer value of user ID (UID) and GID (recommended).
*
*
* NONE
: Ignore UID and GID.
*
*/
private String gid;
/**
*
* A value that specifies whether files in the destination that don't exist in the source file system should be
* preserved. This option can affect your storage cost. If your task deletes objects, you might incur minimum
* storage duration charges for certain storage classes. For detailed information, see Considerations when working with Amazon S3 storage classes in DataSync in the DataSync User Guide.
*
*
* Default value: PRESERVE
*
*
* PRESERVE
: Ignore such destination files (recommended).
*
*
* REMOVE
: Delete destination files that aren’t present in the source.
*
*/
private String preserveDeletedFiles;
/**
*
* A value that determines whether DataSync should preserve the metadata of block and character devices in the
* source file system, and re-create the files with that device name and metadata on the destination. DataSync does
* not copy the contents of such devices, only the name and metadata.
*
*
*
* DataSync can't sync the actual contents of such devices, because they are nonterminal and don't return an
* end-of-file (EOF) marker.
*
*
*
* Default value: NONE
*
*
* NONE
: Ignore special devices (recommended).
*
*
* PRESERVE
: Preserve character and block device metadata. This option isn't currently supported for
* Amazon EFS.
*
*/
private String preserveDevices;
/**
*
* A value that determines which users or groups can access a file for a specific purpose such as reading, writing,
* or execution of the file.
*
*
* For more information, see Metadata copied
* by DataSync.
*
*
* Default value: PRESERVE
*
*
* PRESERVE
: Preserve POSIX-style permissions (recommended).
*
*
* NONE
: Ignore permissions.
*
*
*
* DataSync can preserve extant permissions of a source location.
*
*
*/
private String posixPermissions;
/**
*
* A value that limits the bandwidth used by DataSync. For example, if you want DataSync to use a maximum of 1 MB,
* set this value to 1048576
(=1024*1024
).
*
*/
private Long bytesPerSecond;
/**
*
* A value that determines whether tasks should be queued before executing the tasks. If set to ENABLED
* , the tasks will be queued. The default is ENABLED
.
*
*
* If you use the same agent to run multiple tasks, you can enable the tasks to run in series. For more information,
* see Queueing
* task executions.
*
*/
private String taskQueueing;
/**
*
* A value that determines the type of logs that DataSync publishes to a log stream in the Amazon CloudWatch log
* group that you provide. For more information about providing a log group for DataSync, see CloudWatchLogGroupArn. If set to OFF
, no logs are published. BASIC
publishes logs
* on errors for individual files transferred, and TRANSFER
publishes logs for every file or object
* that is transferred and integrity checked.
*
*/
private String logLevel;
/**
*
* A value that determines whether DataSync transfers only the data and metadata that differ between the source and
* the destination location, or whether DataSync transfers all the content from the source, without comparing to the
* destination location.
*
*
* CHANGED
: DataSync copies only data or metadata that is new or different content from the source
* location to the destination location.
*
*
* ALL
: DataSync copies all source location content to the destination, without comparing to existing
* content on the destination.
*
*/
private String transferMode;
/**
*
* A value that determines which components of the SMB security descriptor are copied from source to destination
* objects.
*
*
* This value is only used for transfers between SMB and Amazon FSx for Windows File Server locations, or between
* two Amazon FSx for Windows File Server locations. For more information about how DataSync handles metadata, see
* How DataSync Handles Metadata
* and Special Files.
*
*
* Default value: OWNER_DACL
*
*
* OWNER_DACL
: For each copied object, DataSync copies the following metadata:
*
*
* -
*
* Object owner.
*
*
* -
*
* NTFS discretionary access control lists (DACLs), which determine whether to grant access to an object.
*
*
*
*
* When choosing this option, DataSync does NOT copy the NTFS system access control lists (SACLs), which are used by
* administrators to log attempts to access a secured object.
*
*
* OWNER_DACL_SACL
: For each copied object, DataSync copies the following metadata:
*
*
* -
*
* Object owner.
*
*
* -
*
* NTFS discretionary access control lists (DACLs), which determine whether to grant access to an object.
*
*
* -
*
* NTFS system access control lists (SACLs), which are used by administrators to log attempts to access a secured
* object.
*
*
*
*
* Copying SACLs requires granting additional permissions to the Windows user that DataSync uses to access your SMB
* location. For information about choosing a user that ensures sufficient permissions to files, folders, and
* metadata, see user.
*
*
* NONE
: None of the SMB security descriptor components are copied. Destination objects are owned by
* the user that was provided for accessing the destination location. DACLs and SACLs are set based on the
* destination server’s configuration.
*
*/
private String securityDescriptorCopyFlags;
/**
*
* Specifies whether object tags are maintained when transferring between object storage systems. If you want your
* DataSync task to ignore object tags, specify the NONE
value.
*
*
* Default Value: PRESERVE
*
*/
private String objectTags;
/**
*
* A value that determines whether a data integrity verification should be performed at the end of a task execution
* after all data and metadata have been transferred. For more information, see Configure task settings.
*
*
* Default value: POINT_IN_TIME_CONSISTENT
*
*
* ONLY_FILES_TRANSFERRED
(recommended): Perform verification only on files that were transferred.
*
*
* POINT_IN_TIME_CONSISTENT
: Scan the entire source and entire destination at the end of the transfer
* to verify that source and destination are fully synchronized. This option isn't supported when transferring to S3
* Glacier Flexible Retrieval or S3 Glacier Deep Archive storage classes.
*
*
* NONE
: No additional verification is done at the end of the transfer, but all data transmissions are
* integrity-checked with checksum verification during the transfer.
*
*
* @param verifyMode
* A value that determines whether a data integrity verification should be performed at the end of a task
* execution after all data and metadata have been transferred. For more information, see Configure task settings.
*
*
* Default value: POINT_IN_TIME_CONSISTENT
*
*
* ONLY_FILES_TRANSFERRED
(recommended): Perform verification only on files that were
* transferred.
*
*
* POINT_IN_TIME_CONSISTENT
: Scan the entire source and entire destination at the end of the
* transfer to verify that source and destination are fully synchronized. This option isn't supported when
* transferring to S3 Glacier Flexible Retrieval or S3 Glacier Deep Archive storage classes.
*
*
* NONE
: No additional verification is done at the end of the transfer, but all data
* transmissions are integrity-checked with checksum verification during the transfer.
* @see VerifyMode
*/
public void setVerifyMode(String verifyMode) {
this.verifyMode = verifyMode;
}
/**
*
* A value that determines whether a data integrity verification should be performed at the end of a task execution
* after all data and metadata have been transferred. For more information, see Configure task settings.
*
*
* Default value: POINT_IN_TIME_CONSISTENT
*
*
* ONLY_FILES_TRANSFERRED
(recommended): Perform verification only on files that were transferred.
*
*
* POINT_IN_TIME_CONSISTENT
: Scan the entire source and entire destination at the end of the transfer
* to verify that source and destination are fully synchronized. This option isn't supported when transferring to S3
* Glacier Flexible Retrieval or S3 Glacier Deep Archive storage classes.
*
*
* NONE
: No additional verification is done at the end of the transfer, but all data transmissions are
* integrity-checked with checksum verification during the transfer.
*
*
* @return A value that determines whether a data integrity verification should be performed at the end of a task
* execution after all data and metadata have been transferred. For more information, see Configure task
* settings.
*
* Default value: POINT_IN_TIME_CONSISTENT
*
*
* ONLY_FILES_TRANSFERRED
(recommended): Perform verification only on files that were
* transferred.
*
*
* POINT_IN_TIME_CONSISTENT
: Scan the entire source and entire destination at the end of the
* transfer to verify that source and destination are fully synchronized. This option isn't supported when
* transferring to S3 Glacier Flexible Retrieval or S3 Glacier Deep Archive storage classes.
*
*
* NONE
: No additional verification is done at the end of the transfer, but all data
* transmissions are integrity-checked with checksum verification during the transfer.
* @see VerifyMode
*/
public String getVerifyMode() {
return this.verifyMode;
}
/**
*
* A value that determines whether a data integrity verification should be performed at the end of a task execution
* after all data and metadata have been transferred. For more information, see Configure task settings.
*
*
* Default value: POINT_IN_TIME_CONSISTENT
*
*
* ONLY_FILES_TRANSFERRED
(recommended): Perform verification only on files that were transferred.
*
*
* POINT_IN_TIME_CONSISTENT
: Scan the entire source and entire destination at the end of the transfer
* to verify that source and destination are fully synchronized. This option isn't supported when transferring to S3
* Glacier Flexible Retrieval or S3 Glacier Deep Archive storage classes.
*
*
* NONE
: No additional verification is done at the end of the transfer, but all data transmissions are
* integrity-checked with checksum verification during the transfer.
*
*
* @param verifyMode
* A value that determines whether a data integrity verification should be performed at the end of a task
* execution after all data and metadata have been transferred. For more information, see Configure task settings.
*
*
* Default value: POINT_IN_TIME_CONSISTENT
*
*
* ONLY_FILES_TRANSFERRED
(recommended): Perform verification only on files that were
* transferred.
*
*
* POINT_IN_TIME_CONSISTENT
: Scan the entire source and entire destination at the end of the
* transfer to verify that source and destination are fully synchronized. This option isn't supported when
* transferring to S3 Glacier Flexible Retrieval or S3 Glacier Deep Archive storage classes.
*
*
* NONE
: No additional verification is done at the end of the transfer, but all data
* transmissions are integrity-checked with checksum verification during the transfer.
* @return Returns a reference to this object so that method calls can be chained together.
* @see VerifyMode
*/
public Options withVerifyMode(String verifyMode) {
setVerifyMode(verifyMode);
return this;
}
/**
*
* A value that determines whether a data integrity verification should be performed at the end of a task execution
* after all data and metadata have been transferred. For more information, see Configure task settings.
*
*
* Default value: POINT_IN_TIME_CONSISTENT
*
*
* ONLY_FILES_TRANSFERRED
(recommended): Perform verification only on files that were transferred.
*
*
* POINT_IN_TIME_CONSISTENT
: Scan the entire source and entire destination at the end of the transfer
* to verify that source and destination are fully synchronized. This option isn't supported when transferring to S3
* Glacier Flexible Retrieval or S3 Glacier Deep Archive storage classes.
*
*
* NONE
: No additional verification is done at the end of the transfer, but all data transmissions are
* integrity-checked with checksum verification during the transfer.
*
*
* @param verifyMode
* A value that determines whether a data integrity verification should be performed at the end of a task
* execution after all data and metadata have been transferred. For more information, see Configure task settings.
*
*
* Default value: POINT_IN_TIME_CONSISTENT
*
*
* ONLY_FILES_TRANSFERRED
(recommended): Perform verification only on files that were
* transferred.
*
*
* POINT_IN_TIME_CONSISTENT
: Scan the entire source and entire destination at the end of the
* transfer to verify that source and destination are fully synchronized. This option isn't supported when
* transferring to S3 Glacier Flexible Retrieval or S3 Glacier Deep Archive storage classes.
*
*
* NONE
: No additional verification is done at the end of the transfer, but all data
* transmissions are integrity-checked with checksum verification during the transfer.
* @return Returns a reference to this object so that method calls can be chained together.
* @see VerifyMode
*/
public Options withVerifyMode(VerifyMode verifyMode) {
this.verifyMode = verifyMode.toString();
return this;
}
/**
*
* A value that determines whether files at the destination should be overwritten or preserved when copying files.
* If set to NEVER
a destination file will not be replaced by a source file, even if the destination
* file differs from the source file. If you modify files in the destination and you sync the files, you can use
* this value to protect against overwriting those changes.
*
*
* Some storage classes have specific behaviors that can affect your S3 storage cost. For detailed information, see
*
* Considerations when working with Amazon S3 storage classes in DataSync in the DataSync User Guide.
*
*
* @param overwriteMode
* A value that determines whether files at the destination should be overwritten or preserved when copying
* files. If set to NEVER
a destination file will not be replaced by a source file, even if the
* destination file differs from the source file. If you modify files in the destination and you sync the
* files, you can use this value to protect against overwriting those changes.
*
* Some storage classes have specific behaviors that can affect your S3 storage cost. For detailed
* information, see Considerations when working with Amazon S3 storage classes in DataSync in the DataSync User
* Guide.
* @see OverwriteMode
*/
public void setOverwriteMode(String overwriteMode) {
this.overwriteMode = overwriteMode;
}
/**
*
* A value that determines whether files at the destination should be overwritten or preserved when copying files.
* If set to NEVER
a destination file will not be replaced by a source file, even if the destination
* file differs from the source file. If you modify files in the destination and you sync the files, you can use
* this value to protect against overwriting those changes.
*
*
* Some storage classes have specific behaviors that can affect your S3 storage cost. For detailed information, see
*
* Considerations when working with Amazon S3 storage classes in DataSync in the DataSync User Guide.
*
*
* @return A value that determines whether files at the destination should be overwritten or preserved when copying
* files. If set to NEVER
a destination file will not be replaced by a source file, even if the
* destination file differs from the source file. If you modify files in the destination and you sync the
* files, you can use this value to protect against overwriting those changes.
*
* Some storage classes have specific behaviors that can affect your S3 storage cost. For detailed
* information, see Considerations when working with Amazon S3 storage classes in DataSync in the DataSync User
* Guide.
* @see OverwriteMode
*/
public String getOverwriteMode() {
return this.overwriteMode;
}
/**
*
* A value that determines whether files at the destination should be overwritten or preserved when copying files.
* If set to NEVER
a destination file will not be replaced by a source file, even if the destination
* file differs from the source file. If you modify files in the destination and you sync the files, you can use
* this value to protect against overwriting those changes.
*
*
* Some storage classes have specific behaviors that can affect your S3 storage cost. For detailed information, see
*
* Considerations when working with Amazon S3 storage classes in DataSync in the DataSync User Guide.
*
*
* @param overwriteMode
* A value that determines whether files at the destination should be overwritten or preserved when copying
* files. If set to NEVER
a destination file will not be replaced by a source file, even if the
* destination file differs from the source file. If you modify files in the destination and you sync the
* files, you can use this value to protect against overwriting those changes.
*
* Some storage classes have specific behaviors that can affect your S3 storage cost. For detailed
* information, see Considerations when working with Amazon S3 storage classes in DataSync in the DataSync User
* Guide.
* @return Returns a reference to this object so that method calls can be chained together.
* @see OverwriteMode
*/
public Options withOverwriteMode(String overwriteMode) {
setOverwriteMode(overwriteMode);
return this;
}
/**
*
* A value that determines whether files at the destination should be overwritten or preserved when copying files.
* If set to NEVER
a destination file will not be replaced by a source file, even if the destination
* file differs from the source file. If you modify files in the destination and you sync the files, you can use
* this value to protect against overwriting those changes.
*
*
* Some storage classes have specific behaviors that can affect your S3 storage cost. For detailed information, see
*
* Considerations when working with Amazon S3 storage classes in DataSync in the DataSync User Guide.
*
*
* @param overwriteMode
* A value that determines whether files at the destination should be overwritten or preserved when copying
* files. If set to NEVER
a destination file will not be replaced by a source file, even if the
* destination file differs from the source file. If you modify files in the destination and you sync the
* files, you can use this value to protect against overwriting those changes.
*
* Some storage classes have specific behaviors that can affect your S3 storage cost. For detailed
* information, see Considerations when working with Amazon S3 storage classes in DataSync in the DataSync User
* Guide.
* @return Returns a reference to this object so that method calls can be chained together.
* @see OverwriteMode
*/
public Options withOverwriteMode(OverwriteMode overwriteMode) {
this.overwriteMode = overwriteMode.toString();
return this;
}
/**
*
* A file metadata value that shows the last time a file was accessed (that is, when the file was read or written
* to). If you set Atime
to BEST_EFFORT
, DataSync attempts to preserve the original
* Atime
attribute on all source files (that is, the version before the PREPARING
phase).
* However, Atime
's behavior is not fully standard across platforms, so DataSync can only do this on a
* best-effort basis.
*
*
* Default value: BEST_EFFORT
*
*
* BEST_EFFORT
: Attempt to preserve the per-file Atime
value (recommended).
*
*
* NONE
: Ignore Atime
.
*
*
*
* If Atime
is set to BEST_EFFORT
, Mtime
must be set to PRESERVE
* .
*
*
* If Atime
is set to NONE
, Mtime
must also be NONE
.
*
*
*
* @param atime
* A file metadata value that shows the last time a file was accessed (that is, when the file was read or
* written to). If you set Atime
to BEST_EFFORT
, DataSync attempts to preserve the
* original Atime
attribute on all source files (that is, the version before the
* PREPARING
phase). However, Atime
's behavior is not fully standard across
* platforms, so DataSync can only do this on a best-effort basis.
*
* Default value: BEST_EFFORT
*
*
* BEST_EFFORT
: Attempt to preserve the per-file Atime
value (recommended).
*
*
* NONE
: Ignore Atime
.
*
*
*
* If Atime
is set to BEST_EFFORT
, Mtime
must be set to
* PRESERVE
.
*
*
* If Atime
is set to NONE
, Mtime
must also be NONE
.
*
* @see Atime
*/
public void setAtime(String atime) {
this.atime = atime;
}
/**
*
* A file metadata value that shows the last time a file was accessed (that is, when the file was read or written
* to). If you set Atime
to BEST_EFFORT
, DataSync attempts to preserve the original
* Atime
attribute on all source files (that is, the version before the PREPARING
phase).
* However, Atime
's behavior is not fully standard across platforms, so DataSync can only do this on a
* best-effort basis.
*
*
* Default value: BEST_EFFORT
*
*
* BEST_EFFORT
: Attempt to preserve the per-file Atime
value (recommended).
*
*
* NONE
: Ignore Atime
.
*
*
*
* If Atime
is set to BEST_EFFORT
, Mtime
must be set to PRESERVE
* .
*
*
* If Atime
is set to NONE
, Mtime
must also be NONE
.
*
*
*
* @return A file metadata value that shows the last time a file was accessed (that is, when the file was read or
* written to). If you set Atime
to BEST_EFFORT
, DataSync attempts to preserve the
* original Atime
attribute on all source files (that is, the version before the
* PREPARING
phase). However, Atime
's behavior is not fully standard across
* platforms, so DataSync can only do this on a best-effort basis.
*
* Default value: BEST_EFFORT
*
*
* BEST_EFFORT
: Attempt to preserve the per-file Atime
value (recommended).
*
*
* NONE
: Ignore Atime
.
*
*
*
* If Atime
is set to BEST_EFFORT
, Mtime
must be set to
* PRESERVE
.
*
*
* If Atime
is set to NONE
, Mtime
must also be NONE
.
*
* @see Atime
*/
public String getAtime() {
return this.atime;
}
/**
*
* A file metadata value that shows the last time a file was accessed (that is, when the file was read or written
* to). If you set Atime
to BEST_EFFORT
, DataSync attempts to preserve the original
* Atime
attribute on all source files (that is, the version before the PREPARING
phase).
* However, Atime
's behavior is not fully standard across platforms, so DataSync can only do this on a
* best-effort basis.
*
*
* Default value: BEST_EFFORT
*
*
* BEST_EFFORT
: Attempt to preserve the per-file Atime
value (recommended).
*
*
* NONE
: Ignore Atime
.
*
*
*
* If Atime
is set to BEST_EFFORT
, Mtime
must be set to PRESERVE
* .
*
*
* If Atime
is set to NONE
, Mtime
must also be NONE
.
*
*
*
* @param atime
* A file metadata value that shows the last time a file was accessed (that is, when the file was read or
* written to). If you set Atime
to BEST_EFFORT
, DataSync attempts to preserve the
* original Atime
attribute on all source files (that is, the version before the
* PREPARING
phase). However, Atime
's behavior is not fully standard across
* platforms, so DataSync can only do this on a best-effort basis.
*
* Default value: BEST_EFFORT
*
*
* BEST_EFFORT
: Attempt to preserve the per-file Atime
value (recommended).
*
*
* NONE
: Ignore Atime
.
*
*
*
* If Atime
is set to BEST_EFFORT
, Mtime
must be set to
* PRESERVE
.
*
*
* If Atime
is set to NONE
, Mtime
must also be NONE
.
*
* @return Returns a reference to this object so that method calls can be chained together.
* @see Atime
*/
public Options withAtime(String atime) {
setAtime(atime);
return this;
}
/**
*
* A file metadata value that shows the last time a file was accessed (that is, when the file was read or written
* to). If you set Atime
to BEST_EFFORT
, DataSync attempts to preserve the original
* Atime
attribute on all source files (that is, the version before the PREPARING
phase).
* However, Atime
's behavior is not fully standard across platforms, so DataSync can only do this on a
* best-effort basis.
*
*
* Default value: BEST_EFFORT
*
*
* BEST_EFFORT
: Attempt to preserve the per-file Atime
value (recommended).
*
*
* NONE
: Ignore Atime
.
*
*
*
* If Atime
is set to BEST_EFFORT
, Mtime
must be set to PRESERVE
* .
*
*
* If Atime
is set to NONE
, Mtime
must also be NONE
.
*
*
*
* @param atime
* A file metadata value that shows the last time a file was accessed (that is, when the file was read or
* written to). If you set Atime
to BEST_EFFORT
, DataSync attempts to preserve the
* original Atime
attribute on all source files (that is, the version before the
* PREPARING
phase). However, Atime
's behavior is not fully standard across
* platforms, so DataSync can only do this on a best-effort basis.
*
* Default value: BEST_EFFORT
*
*
* BEST_EFFORT
: Attempt to preserve the per-file Atime
value (recommended).
*
*
* NONE
: Ignore Atime
.
*
*
*
* If Atime
is set to BEST_EFFORT
, Mtime
must be set to
* PRESERVE
.
*
*
* If Atime
is set to NONE
, Mtime
must also be NONE
.
*
* @return Returns a reference to this object so that method calls can be chained together.
* @see Atime
*/
public Options withAtime(Atime atime) {
this.atime = atime.toString();
return this;
}
/**
*
* A value that indicates the last time that a file was modified (that is, a file was written to) before the
* PREPARING
phase. This option is required for cases when you need to run the same task more than one
* time.
*
*
* Default Value: PRESERVE
*
*
* PRESERVE
: Preserve original Mtime
(recommended)
*
*
* NONE
: Ignore Mtime
.
*
*
*
* If Mtime
is set to PRESERVE
, Atime
must be set to BEST_EFFORT
* .
*
*
* If Mtime
is set to NONE
, Atime
must also be set to NONE
.
*
*
*
* @param mtime
* A value that indicates the last time that a file was modified (that is, a file was written to) before the
* PREPARING
phase. This option is required for cases when you need to run the same task more
* than one time.
*
* Default Value: PRESERVE
*
*
* PRESERVE
: Preserve original Mtime
(recommended)
*
*
* NONE
: Ignore Mtime
.
*
*
*
* If Mtime
is set to PRESERVE
, Atime
must be set to
* BEST_EFFORT
.
*
*
* If Mtime
is set to NONE
, Atime
must also be set to
* NONE
.
*
* @see Mtime
*/
public void setMtime(String mtime) {
this.mtime = mtime;
}
/**
*
* A value that indicates the last time that a file was modified (that is, a file was written to) before the
* PREPARING
phase. This option is required for cases when you need to run the same task more than one
* time.
*
*
* Default Value: PRESERVE
*
*
* PRESERVE
: Preserve original Mtime
(recommended)
*
*
* NONE
: Ignore Mtime
.
*
*
*
* If Mtime
is set to PRESERVE
, Atime
must be set to BEST_EFFORT
* .
*
*
* If Mtime
is set to NONE
, Atime
must also be set to NONE
.
*
*
*
* @return A value that indicates the last time that a file was modified (that is, a file was written to) before the
* PREPARING
phase. This option is required for cases when you need to run the same task more
* than one time.
*
* Default Value: PRESERVE
*
*
* PRESERVE
: Preserve original Mtime
(recommended)
*
*
* NONE
: Ignore Mtime
.
*
*
*
* If Mtime
is set to PRESERVE
, Atime
must be set to
* BEST_EFFORT
.
*
*
* If Mtime
is set to NONE
, Atime
must also be set to
* NONE
.
*
* @see Mtime
*/
public String getMtime() {
return this.mtime;
}
/**
*
* A value that indicates the last time that a file was modified (that is, a file was written to) before the
* PREPARING
phase. This option is required for cases when you need to run the same task more than one
* time.
*
*
* Default Value: PRESERVE
*
*
* PRESERVE
: Preserve original Mtime
(recommended)
*
*
* NONE
: Ignore Mtime
.
*
*
*
* If Mtime
is set to PRESERVE
, Atime
must be set to BEST_EFFORT
* .
*
*
* If Mtime
is set to NONE
, Atime
must also be set to NONE
.
*
*
*
* @param mtime
* A value that indicates the last time that a file was modified (that is, a file was written to) before the
* PREPARING
phase. This option is required for cases when you need to run the same task more
* than one time.
*
* Default Value: PRESERVE
*
*
* PRESERVE
: Preserve original Mtime
(recommended)
*
*
* NONE
: Ignore Mtime
.
*
*
*
* If Mtime
is set to PRESERVE
, Atime
must be set to
* BEST_EFFORT
.
*
*
* If Mtime
is set to NONE
, Atime
must also be set to
* NONE
.
*
* @return Returns a reference to this object so that method calls can be chained together.
* @see Mtime
*/
public Options withMtime(String mtime) {
setMtime(mtime);
return this;
}
/**
*
* A value that indicates the last time that a file was modified (that is, a file was written to) before the
* PREPARING
phase. This option is required for cases when you need to run the same task more than one
* time.
*
*
* Default Value: PRESERVE
*
*
* PRESERVE
: Preserve original Mtime
(recommended)
*
*
* NONE
: Ignore Mtime
.
*
*
*
* If Mtime
is set to PRESERVE
, Atime
must be set to BEST_EFFORT
* .
*
*
* If Mtime
is set to NONE
, Atime
must also be set to NONE
.
*
*
*
* @param mtime
* A value that indicates the last time that a file was modified (that is, a file was written to) before the
* PREPARING
phase. This option is required for cases when you need to run the same task more
* than one time.
*
* Default Value: PRESERVE
*
*
* PRESERVE
: Preserve original Mtime
(recommended)
*
*
* NONE
: Ignore Mtime
.
*
*
*
* If Mtime
is set to PRESERVE
, Atime
must be set to
* BEST_EFFORT
.
*
*
* If Mtime
is set to NONE
, Atime
must also be set to
* NONE
.
*
* @return Returns a reference to this object so that method calls can be chained together.
* @see Mtime
*/
public Options withMtime(Mtime mtime) {
this.mtime = mtime.toString();
return this;
}
/**
*
* The POSIX user ID (UID) of the file's owner.
*
*
* For more information, see Metadata copied
* by DataSync.
*
*
* Default value: INT_VALUE
. This preserves the integer value of the ID.
*
*
* INT_VALUE
: Preserve the integer value of UID and group ID (GID) (recommended).
*
*
* NONE
: Ignore UID and GID.
*
*
* @param uid
* The POSIX user ID (UID) of the file's owner.
*
* For more information, see Metadata
* copied by DataSync.
*
*
* Default value: INT_VALUE
. This preserves the integer value of the ID.
*
*
* INT_VALUE
: Preserve the integer value of UID and group ID (GID) (recommended).
*
*
* NONE
: Ignore UID and GID.
* @see Uid
*/
public void setUid(String uid) {
this.uid = uid;
}
/**
*
* The POSIX user ID (UID) of the file's owner.
*
*
* For more information, see Metadata copied
* by DataSync.
*
*
* Default value: INT_VALUE
. This preserves the integer value of the ID.
*
*
* INT_VALUE
: Preserve the integer value of UID and group ID (GID) (recommended).
*
*
* NONE
: Ignore UID and GID.
*
*
* @return The POSIX user ID (UID) of the file's owner.
*
* For more information, see Metadata
* copied by DataSync.
*
*
* Default value: INT_VALUE
. This preserves the integer value of the ID.
*
*
* INT_VALUE
: Preserve the integer value of UID and group ID (GID) (recommended).
*
*
* NONE
: Ignore UID and GID.
* @see Uid
*/
public String getUid() {
return this.uid;
}
/**
*
* The POSIX user ID (UID) of the file's owner.
*
*
* For more information, see Metadata copied
* by DataSync.
*
*
* Default value: INT_VALUE
. This preserves the integer value of the ID.
*
*
* INT_VALUE
: Preserve the integer value of UID and group ID (GID) (recommended).
*
*
* NONE
: Ignore UID and GID.
*
*
* @param uid
* The POSIX user ID (UID) of the file's owner.
*
* For more information, see Metadata
* copied by DataSync.
*
*
* Default value: INT_VALUE
. This preserves the integer value of the ID.
*
*
* INT_VALUE
: Preserve the integer value of UID and group ID (GID) (recommended).
*
*
* NONE
: Ignore UID and GID.
* @return Returns a reference to this object so that method calls can be chained together.
* @see Uid
*/
public Options withUid(String uid) {
setUid(uid);
return this;
}
/**
*
* The POSIX user ID (UID) of the file's owner.
*
*
* For more information, see Metadata copied
* by DataSync.
*
*
* Default value: INT_VALUE
. This preserves the integer value of the ID.
*
*
* INT_VALUE
: Preserve the integer value of UID and group ID (GID) (recommended).
*
*
* NONE
: Ignore UID and GID.
*
*
* @param uid
* The POSIX user ID (UID) of the file's owner.
*
* For more information, see Metadata
* copied by DataSync.
*
*
* Default value: INT_VALUE
. This preserves the integer value of the ID.
*
*
* INT_VALUE
: Preserve the integer value of UID and group ID (GID) (recommended).
*
*
* NONE
: Ignore UID and GID.
* @return Returns a reference to this object so that method calls can be chained together.
* @see Uid
*/
public Options withUid(Uid uid) {
this.uid = uid.toString();
return this;
}
/**
*
* The POSIX group ID (GID) of the file's owners.
*
*
* For more information, see Metadata copied
* by DataSync.
*
*
* Default value: INT_VALUE
. This preserves the integer value of the ID.
*
*
* INT_VALUE
: Preserve the integer value of user ID (UID) and GID (recommended).
*
*
* NONE
: Ignore UID and GID.
*
*
* @param gid
* The POSIX group ID (GID) of the file's owners.
*
* For more information, see Metadata
* copied by DataSync.
*
*
* Default value: INT_VALUE
. This preserves the integer value of the ID.
*
*
* INT_VALUE
: Preserve the integer value of user ID (UID) and GID (recommended).
*
*
* NONE
: Ignore UID and GID.
* @see Gid
*/
public void setGid(String gid) {
this.gid = gid;
}
/**
*
* The POSIX group ID (GID) of the file's owners.
*
*
* For more information, see Metadata copied
* by DataSync.
*
*
* Default value: INT_VALUE
. This preserves the integer value of the ID.
*
*
* INT_VALUE
: Preserve the integer value of user ID (UID) and GID (recommended).
*
*
* NONE
: Ignore UID and GID.
*
*
* @return The POSIX group ID (GID) of the file's owners.
*
* For more information, see Metadata
* copied by DataSync.
*
*
* Default value: INT_VALUE
. This preserves the integer value of the ID.
*
*
* INT_VALUE
: Preserve the integer value of user ID (UID) and GID (recommended).
*
*
* NONE
: Ignore UID and GID.
* @see Gid
*/
public String getGid() {
return this.gid;
}
/**
*
* The POSIX group ID (GID) of the file's owners.
*
*
* For more information, see Metadata copied
* by DataSync.
*
*
* Default value: INT_VALUE
. This preserves the integer value of the ID.
*
*
* INT_VALUE
: Preserve the integer value of user ID (UID) and GID (recommended).
*
*
* NONE
: Ignore UID and GID.
*
*
* @param gid
* The POSIX group ID (GID) of the file's owners.
*
* For more information, see Metadata
* copied by DataSync.
*
*
* Default value: INT_VALUE
. This preserves the integer value of the ID.
*
*
* INT_VALUE
: Preserve the integer value of user ID (UID) and GID (recommended).
*
*
* NONE
: Ignore UID and GID.
* @return Returns a reference to this object so that method calls can be chained together.
* @see Gid
*/
public Options withGid(String gid) {
setGid(gid);
return this;
}
/**
*
* The POSIX group ID (GID) of the file's owners.
*
*
* For more information, see Metadata copied
* by DataSync.
*
*
* Default value: INT_VALUE
. This preserves the integer value of the ID.
*
*
* INT_VALUE
: Preserve the integer value of user ID (UID) and GID (recommended).
*
*
* NONE
: Ignore UID and GID.
*
*
* @param gid
* The POSIX group ID (GID) of the file's owners.
*
* For more information, see Metadata
* copied by DataSync.
*
*
* Default value: INT_VALUE
. This preserves the integer value of the ID.
*
*
* INT_VALUE
: Preserve the integer value of user ID (UID) and GID (recommended).
*
*
* NONE
: Ignore UID and GID.
* @return Returns a reference to this object so that method calls can be chained together.
* @see Gid
*/
public Options withGid(Gid gid) {
this.gid = gid.toString();
return this;
}
/**
*
* A value that specifies whether files in the destination that don't exist in the source file system should be
* preserved. This option can affect your storage cost. If your task deletes objects, you might incur minimum
* storage duration charges for certain storage classes. For detailed information, see Considerations when working with Amazon S3 storage classes in DataSync in the DataSync User Guide.
*
*
* Default value: PRESERVE
*
*
* PRESERVE
: Ignore such destination files (recommended).
*
*
* REMOVE
: Delete destination files that aren’t present in the source.
*
*
* @param preserveDeletedFiles
* A value that specifies whether files in the destination that don't exist in the source file system should
* be preserved. This option can affect your storage cost. If your task deletes objects, you might incur
* minimum storage duration charges for certain storage classes. For detailed information, see Considerations when working with Amazon S3 storage classes in DataSync in the DataSync User
* Guide.
*
* Default value: PRESERVE
*
*
* PRESERVE
: Ignore such destination files (recommended).
*
*
* REMOVE
: Delete destination files that aren’t present in the source.
* @see PreserveDeletedFiles
*/
public void setPreserveDeletedFiles(String preserveDeletedFiles) {
this.preserveDeletedFiles = preserveDeletedFiles;
}
/**
*
* A value that specifies whether files in the destination that don't exist in the source file system should be
* preserved. This option can affect your storage cost. If your task deletes objects, you might incur minimum
* storage duration charges for certain storage classes. For detailed information, see Considerations when working with Amazon S3 storage classes in DataSync in the DataSync User Guide.
*
*
* Default value: PRESERVE
*
*
* PRESERVE
: Ignore such destination files (recommended).
*
*
* REMOVE
: Delete destination files that aren’t present in the source.
*
*
* @return A value that specifies whether files in the destination that don't exist in the source file system should
* be preserved. This option can affect your storage cost. If your task deletes objects, you might incur
* minimum storage duration charges for certain storage classes. For detailed information, see Considerations when working with Amazon S3 storage classes in DataSync in the DataSync User
* Guide.
*
* Default value: PRESERVE
*
*
* PRESERVE
: Ignore such destination files (recommended).
*
*
* REMOVE
: Delete destination files that aren’t present in the source.
* @see PreserveDeletedFiles
*/
public String getPreserveDeletedFiles() {
return this.preserveDeletedFiles;
}
/**
*
* A value that specifies whether files in the destination that don't exist in the source file system should be
* preserved. This option can affect your storage cost. If your task deletes objects, you might incur minimum
* storage duration charges for certain storage classes. For detailed information, see Considerations when working with Amazon S3 storage classes in DataSync in the DataSync User Guide.
*
*
* Default value: PRESERVE
*
*
* PRESERVE
: Ignore such destination files (recommended).
*
*
* REMOVE
: Delete destination files that aren’t present in the source.
*
*
* @param preserveDeletedFiles
* A value that specifies whether files in the destination that don't exist in the source file system should
* be preserved. This option can affect your storage cost. If your task deletes objects, you might incur
* minimum storage duration charges for certain storage classes. For detailed information, see Considerations when working with Amazon S3 storage classes in DataSync in the DataSync User
* Guide.
*
* Default value: PRESERVE
*
*
* PRESERVE
: Ignore such destination files (recommended).
*
*
* REMOVE
: Delete destination files that aren’t present in the source.
* @return Returns a reference to this object so that method calls can be chained together.
* @see PreserveDeletedFiles
*/
public Options withPreserveDeletedFiles(String preserveDeletedFiles) {
setPreserveDeletedFiles(preserveDeletedFiles);
return this;
}
/**
*
* A value that specifies whether files in the destination that don't exist in the source file system should be
* preserved. This option can affect your storage cost. If your task deletes objects, you might incur minimum
* storage duration charges for certain storage classes. For detailed information, see Considerations when working with Amazon S3 storage classes in DataSync in the DataSync User Guide.
*
*
* Default value: PRESERVE
*
*
* PRESERVE
: Ignore such destination files (recommended).
*
*
* REMOVE
: Delete destination files that aren’t present in the source.
*
*
* @param preserveDeletedFiles
* A value that specifies whether files in the destination that don't exist in the source file system should
* be preserved. This option can affect your storage cost. If your task deletes objects, you might incur
* minimum storage duration charges for certain storage classes. For detailed information, see Considerations when working with Amazon S3 storage classes in DataSync in the DataSync User
* Guide.
*
* Default value: PRESERVE
*
*
* PRESERVE
: Ignore such destination files (recommended).
*
*
* REMOVE
: Delete destination files that aren’t present in the source.
* @return Returns a reference to this object so that method calls can be chained together.
* @see PreserveDeletedFiles
*/
public Options withPreserveDeletedFiles(PreserveDeletedFiles preserveDeletedFiles) {
this.preserveDeletedFiles = preserveDeletedFiles.toString();
return this;
}
/**
*
* A value that determines whether DataSync should preserve the metadata of block and character devices in the
* source file system, and re-create the files with that device name and metadata on the destination. DataSync does
* not copy the contents of such devices, only the name and metadata.
*
*
*
* DataSync can't sync the actual contents of such devices, because they are nonterminal and don't return an
* end-of-file (EOF) marker.
*
*
*
* Default value: NONE
*
*
* NONE
: Ignore special devices (recommended).
*
*
* PRESERVE
: Preserve character and block device metadata. This option isn't currently supported for
* Amazon EFS.
*
*
* @param preserveDevices
* A value that determines whether DataSync should preserve the metadata of block and character devices in
* the source file system, and re-create the files with that device name and metadata on the destination.
* DataSync does not copy the contents of such devices, only the name and metadata.
*
* DataSync can't sync the actual contents of such devices, because they are nonterminal and don't return an
* end-of-file (EOF) marker.
*
*
*
* Default value: NONE
*
*
* NONE
: Ignore special devices (recommended).
*
*
* PRESERVE
: Preserve character and block device metadata. This option isn't currently supported
* for Amazon EFS.
* @see PreserveDevices
*/
public void setPreserveDevices(String preserveDevices) {
this.preserveDevices = preserveDevices;
}
/**
*
* A value that determines whether DataSync should preserve the metadata of block and character devices in the
* source file system, and re-create the files with that device name and metadata on the destination. DataSync does
* not copy the contents of such devices, only the name and metadata.
*
*
*
* DataSync can't sync the actual contents of such devices, because they are nonterminal and don't return an
* end-of-file (EOF) marker.
*
*
*
* Default value: NONE
*
*
* NONE
: Ignore special devices (recommended).
*
*
* PRESERVE
: Preserve character and block device metadata. This option isn't currently supported for
* Amazon EFS.
*
*
* @return A value that determines whether DataSync should preserve the metadata of block and character devices in
* the source file system, and re-create the files with that device name and metadata on the destination.
* DataSync does not copy the contents of such devices, only the name and metadata.
*
* DataSync can't sync the actual contents of such devices, because they are nonterminal and don't return an
* end-of-file (EOF) marker.
*
*
*
* Default value: NONE
*
*
* NONE
: Ignore special devices (recommended).
*
*
* PRESERVE
: Preserve character and block device metadata. This option isn't currently
* supported for Amazon EFS.
* @see PreserveDevices
*/
public String getPreserveDevices() {
return this.preserveDevices;
}
/**
*
* A value that determines whether DataSync should preserve the metadata of block and character devices in the
* source file system, and re-create the files with that device name and metadata on the destination. DataSync does
* not copy the contents of such devices, only the name and metadata.
*
*
*
* DataSync can't sync the actual contents of such devices, because they are nonterminal and don't return an
* end-of-file (EOF) marker.
*
*
*
* Default value: NONE
*
*
* NONE
: Ignore special devices (recommended).
*
*
* PRESERVE
: Preserve character and block device metadata. This option isn't currently supported for
* Amazon EFS.
*
*
* @param preserveDevices
* A value that determines whether DataSync should preserve the metadata of block and character devices in
* the source file system, and re-create the files with that device name and metadata on the destination.
* DataSync does not copy the contents of such devices, only the name and metadata.
*
* DataSync can't sync the actual contents of such devices, because they are nonterminal and don't return an
* end-of-file (EOF) marker.
*
*
*
* Default value: NONE
*
*
* NONE
: Ignore special devices (recommended).
*
*
* PRESERVE
: Preserve character and block device metadata. This option isn't currently supported
* for Amazon EFS.
* @return Returns a reference to this object so that method calls can be chained together.
* @see PreserveDevices
*/
public Options withPreserveDevices(String preserveDevices) {
setPreserveDevices(preserveDevices);
return this;
}
/**
*
* A value that determines whether DataSync should preserve the metadata of block and character devices in the
* source file system, and re-create the files with that device name and metadata on the destination. DataSync does
* not copy the contents of such devices, only the name and metadata.
*
*
*
* DataSync can't sync the actual contents of such devices, because they are nonterminal and don't return an
* end-of-file (EOF) marker.
*
*
*
* Default value: NONE
*
*
* NONE
: Ignore special devices (recommended).
*
*
* PRESERVE
: Preserve character and block device metadata. This option isn't currently supported for
* Amazon EFS.
*
*
* @param preserveDevices
* A value that determines whether DataSync should preserve the metadata of block and character devices in
* the source file system, and re-create the files with that device name and metadata on the destination.
* DataSync does not copy the contents of such devices, only the name and metadata.
*
* DataSync can't sync the actual contents of such devices, because they are nonterminal and don't return an
* end-of-file (EOF) marker.
*
*
*
* Default value: NONE
*
*
* NONE
: Ignore special devices (recommended).
*
*
* PRESERVE
: Preserve character and block device metadata. This option isn't currently supported
* for Amazon EFS.
* @return Returns a reference to this object so that method calls can be chained together.
* @see PreserveDevices
*/
public Options withPreserveDevices(PreserveDevices preserveDevices) {
this.preserveDevices = preserveDevices.toString();
return this;
}
/**
*
* A value that determines which users or groups can access a file for a specific purpose such as reading, writing,
* or execution of the file.
*
*
* For more information, see Metadata copied
* by DataSync.
*
*
* Default value: PRESERVE
*
*
* PRESERVE
: Preserve POSIX-style permissions (recommended).
*
*
* NONE
: Ignore permissions.
*
*
*
* DataSync can preserve extant permissions of a source location.
*
*
*
* @param posixPermissions
* A value that determines which users or groups can access a file for a specific purpose such as reading,
* writing, or execution of the file.
*
* For more information, see Metadata
* copied by DataSync.
*
*
* Default value: PRESERVE
*
*
* PRESERVE
: Preserve POSIX-style permissions (recommended).
*
*
* NONE
: Ignore permissions.
*
*
*
* DataSync can preserve extant permissions of a source location.
*
* @see PosixPermissions
*/
public void setPosixPermissions(String posixPermissions) {
this.posixPermissions = posixPermissions;
}
/**
*
* A value that determines which users or groups can access a file for a specific purpose such as reading, writing,
* or execution of the file.
*
*
* For more information, see Metadata copied
* by DataSync.
*
*
* Default value: PRESERVE
*
*
* PRESERVE
: Preserve POSIX-style permissions (recommended).
*
*
* NONE
: Ignore permissions.
*
*
*
* DataSync can preserve extant permissions of a source location.
*
*
*
* @return A value that determines which users or groups can access a file for a specific purpose such as reading,
* writing, or execution of the file.
*
* For more information, see Metadata
* copied by DataSync.
*
*
* Default value: PRESERVE
*
*
* PRESERVE
: Preserve POSIX-style permissions (recommended).
*
*
* NONE
: Ignore permissions.
*
*
*
* DataSync can preserve extant permissions of a source location.
*
* @see PosixPermissions
*/
public String getPosixPermissions() {
return this.posixPermissions;
}
/**
*
* A value that determines which users or groups can access a file for a specific purpose such as reading, writing,
* or execution of the file.
*
*
* For more information, see Metadata copied
* by DataSync.
*
*
* Default value: PRESERVE
*
*
* PRESERVE
: Preserve POSIX-style permissions (recommended).
*
*
* NONE
: Ignore permissions.
*
*
*
* DataSync can preserve extant permissions of a source location.
*
*
*
* @param posixPermissions
* A value that determines which users or groups can access a file for a specific purpose such as reading,
* writing, or execution of the file.
*
* For more information, see Metadata
* copied by DataSync.
*
*
* Default value: PRESERVE
*
*
* PRESERVE
: Preserve POSIX-style permissions (recommended).
*
*
* NONE
: Ignore permissions.
*
*
*
* DataSync can preserve extant permissions of a source location.
*
* @return Returns a reference to this object so that method calls can be chained together.
* @see PosixPermissions
*/
public Options withPosixPermissions(String posixPermissions) {
setPosixPermissions(posixPermissions);
return this;
}
/**
*
* A value that determines which users or groups can access a file for a specific purpose such as reading, writing,
* or execution of the file.
*
*
* For more information, see Metadata copied
* by DataSync.
*
*
* Default value: PRESERVE
*
*
* PRESERVE
: Preserve POSIX-style permissions (recommended).
*
*
* NONE
: Ignore permissions.
*
*
*
* DataSync can preserve extant permissions of a source location.
*
*
*
* @param posixPermissions
* A value that determines which users or groups can access a file for a specific purpose such as reading,
* writing, or execution of the file.
*
* For more information, see Metadata
* copied by DataSync.
*
*
* Default value: PRESERVE
*
*
* PRESERVE
: Preserve POSIX-style permissions (recommended).
*
*
* NONE
: Ignore permissions.
*
*
*
* DataSync can preserve extant permissions of a source location.
*
* @return Returns a reference to this object so that method calls can be chained together.
* @see PosixPermissions
*/
public Options withPosixPermissions(PosixPermissions posixPermissions) {
this.posixPermissions = posixPermissions.toString();
return this;
}
/**
*
* A value that limits the bandwidth used by DataSync. For example, if you want DataSync to use a maximum of 1 MB,
* set this value to 1048576
(=1024*1024
).
*
*
* @param bytesPerSecond
* A value that limits the bandwidth used by DataSync. For example, if you want DataSync to use a maximum of
* 1 MB, set this value to 1048576
(=1024*1024
).
*/
public void setBytesPerSecond(Long bytesPerSecond) {
this.bytesPerSecond = bytesPerSecond;
}
/**
*
* A value that limits the bandwidth used by DataSync. For example, if you want DataSync to use a maximum of 1 MB,
* set this value to 1048576
(=1024*1024
).
*
*
* @return A value that limits the bandwidth used by DataSync. For example, if you want DataSync to use a maximum of
* 1 MB, set this value to 1048576
(=1024*1024
).
*/
public Long getBytesPerSecond() {
return this.bytesPerSecond;
}
/**
*
* A value that limits the bandwidth used by DataSync. For example, if you want DataSync to use a maximum of 1 MB,
* set this value to 1048576
(=1024*1024
).
*
*
* @param bytesPerSecond
* A value that limits the bandwidth used by DataSync. For example, if you want DataSync to use a maximum of
* 1 MB, set this value to 1048576
(=1024*1024
).
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Options withBytesPerSecond(Long bytesPerSecond) {
setBytesPerSecond(bytesPerSecond);
return this;
}
/**
*
* A value that determines whether tasks should be queued before executing the tasks. If set to ENABLED
* , the tasks will be queued. The default is ENABLED
.
*
*
* If you use the same agent to run multiple tasks, you can enable the tasks to run in series. For more information,
* see Queueing
* task executions.
*
*
* @param taskQueueing
* A value that determines whether tasks should be queued before executing the tasks. If set to
* ENABLED
, the tasks will be queued. The default is ENABLED
.
*
* If you use the same agent to run multiple tasks, you can enable the tasks to run in series. For more
* information, see Queueing
* task executions.
* @see TaskQueueing
*/
public void setTaskQueueing(String taskQueueing) {
this.taskQueueing = taskQueueing;
}
/**
*
* A value that determines whether tasks should be queued before executing the tasks. If set to ENABLED
* , the tasks will be queued. The default is ENABLED
.
*
*
* If you use the same agent to run multiple tasks, you can enable the tasks to run in series. For more information,
* see Queueing
* task executions.
*
*
* @return A value that determines whether tasks should be queued before executing the tasks. If set to
* ENABLED
, the tasks will be queued. The default is ENABLED
.
*
* If you use the same agent to run multiple tasks, you can enable the tasks to run in series. For more
* information, see Queueing
* task executions.
* @see TaskQueueing
*/
public String getTaskQueueing() {
return this.taskQueueing;
}
/**
*
* A value that determines whether tasks should be queued before executing the tasks. If set to ENABLED
* , the tasks will be queued. The default is ENABLED
.
*
*
* If you use the same agent to run multiple tasks, you can enable the tasks to run in series. For more information,
* see Queueing
* task executions.
*
*
* @param taskQueueing
* A value that determines whether tasks should be queued before executing the tasks. If set to
* ENABLED
, the tasks will be queued. The default is ENABLED
.
*
* If you use the same agent to run multiple tasks, you can enable the tasks to run in series. For more
* information, see Queueing
* task executions.
* @return Returns a reference to this object so that method calls can be chained together.
* @see TaskQueueing
*/
public Options withTaskQueueing(String taskQueueing) {
setTaskQueueing(taskQueueing);
return this;
}
/**
*
* A value that determines whether tasks should be queued before executing the tasks. If set to ENABLED
* , the tasks will be queued. The default is ENABLED
.
*
*
* If you use the same agent to run multiple tasks, you can enable the tasks to run in series. For more information,
* see Queueing
* task executions.
*
*
* @param taskQueueing
* A value that determines whether tasks should be queued before executing the tasks. If set to
* ENABLED
, the tasks will be queued. The default is ENABLED
.
*
* If you use the same agent to run multiple tasks, you can enable the tasks to run in series. For more
* information, see Queueing
* task executions.
* @return Returns a reference to this object so that method calls can be chained together.
* @see TaskQueueing
*/
public Options withTaskQueueing(TaskQueueing taskQueueing) {
this.taskQueueing = taskQueueing.toString();
return this;
}
/**
*
* A value that determines the type of logs that DataSync publishes to a log stream in the Amazon CloudWatch log
* group that you provide. For more information about providing a log group for DataSync, see CloudWatchLogGroupArn. If set to OFF
, no logs are published. BASIC
publishes logs
* on errors for individual files transferred, and TRANSFER
publishes logs for every file or object
* that is transferred and integrity checked.
*
*
* @param logLevel
* A value that determines the type of logs that DataSync publishes to a log stream in the Amazon CloudWatch
* log group that you provide. For more information about providing a log group for DataSync, see CloudWatchLogGroupArn. If set to OFF
, no logs are published. BASIC
* publishes logs on errors for individual files transferred, and TRANSFER
publishes logs for
* every file or object that is transferred and integrity checked.
* @see LogLevel
*/
public void setLogLevel(String logLevel) {
this.logLevel = logLevel;
}
/**
*
* A value that determines the type of logs that DataSync publishes to a log stream in the Amazon CloudWatch log
* group that you provide. For more information about providing a log group for DataSync, see CloudWatchLogGroupArn. If set to OFF
, no logs are published. BASIC
publishes logs
* on errors for individual files transferred, and TRANSFER
publishes logs for every file or object
* that is transferred and integrity checked.
*
*
* @return A value that determines the type of logs that DataSync publishes to a log stream in the Amazon CloudWatch
* log group that you provide. For more information about providing a log group for DataSync, see CloudWatchLogGroupArn. If set to OFF
, no logs are published. BASIC
* publishes logs on errors for individual files transferred, and TRANSFER
publishes logs for
* every file or object that is transferred and integrity checked.
* @see LogLevel
*/
public String getLogLevel() {
return this.logLevel;
}
/**
*
* A value that determines the type of logs that DataSync publishes to a log stream in the Amazon CloudWatch log
* group that you provide. For more information about providing a log group for DataSync, see CloudWatchLogGroupArn. If set to OFF
, no logs are published. BASIC
publishes logs
* on errors for individual files transferred, and TRANSFER
publishes logs for every file or object
* that is transferred and integrity checked.
*
*
* @param logLevel
* A value that determines the type of logs that DataSync publishes to a log stream in the Amazon CloudWatch
* log group that you provide. For more information about providing a log group for DataSync, see CloudWatchLogGroupArn. If set to OFF
, no logs are published. BASIC
* publishes logs on errors for individual files transferred, and TRANSFER
publishes logs for
* every file or object that is transferred and integrity checked.
* @return Returns a reference to this object so that method calls can be chained together.
* @see LogLevel
*/
public Options withLogLevel(String logLevel) {
setLogLevel(logLevel);
return this;
}
/**
*
* A value that determines the type of logs that DataSync publishes to a log stream in the Amazon CloudWatch log
* group that you provide. For more information about providing a log group for DataSync, see CloudWatchLogGroupArn. If set to OFF
, no logs are published. BASIC
publishes logs
* on errors for individual files transferred, and TRANSFER
publishes logs for every file or object
* that is transferred and integrity checked.
*
*
* @param logLevel
* A value that determines the type of logs that DataSync publishes to a log stream in the Amazon CloudWatch
* log group that you provide. For more information about providing a log group for DataSync, see CloudWatchLogGroupArn. If set to OFF
, no logs are published. BASIC
* publishes logs on errors for individual files transferred, and TRANSFER
publishes logs for
* every file or object that is transferred and integrity checked.
* @return Returns a reference to this object so that method calls can be chained together.
* @see LogLevel
*/
public Options withLogLevel(LogLevel logLevel) {
this.logLevel = logLevel.toString();
return this;
}
/**
*
* A value that determines whether DataSync transfers only the data and metadata that differ between the source and
* the destination location, or whether DataSync transfers all the content from the source, without comparing to the
* destination location.
*
*
* CHANGED
: DataSync copies only data or metadata that is new or different content from the source
* location to the destination location.
*
*
* ALL
: DataSync copies all source location content to the destination, without comparing to existing
* content on the destination.
*
*
* @param transferMode
* A value that determines whether DataSync transfers only the data and metadata that differ between the
* source and the destination location, or whether DataSync transfers all the content from the source,
* without comparing to the destination location.
*
* CHANGED
: DataSync copies only data or metadata that is new or different content from the
* source location to the destination location.
*
*
* ALL
: DataSync copies all source location content to the destination, without comparing to
* existing content on the destination.
* @see TransferMode
*/
public void setTransferMode(String transferMode) {
this.transferMode = transferMode;
}
/**
*
* A value that determines whether DataSync transfers only the data and metadata that differ between the source and
* the destination location, or whether DataSync transfers all the content from the source, without comparing to the
* destination location.
*
*
* CHANGED
: DataSync copies only data or metadata that is new or different content from the source
* location to the destination location.
*
*
* ALL
: DataSync copies all source location content to the destination, without comparing to existing
* content on the destination.
*
*
* @return A value that determines whether DataSync transfers only the data and metadata that differ between the
* source and the destination location, or whether DataSync transfers all the content from the source,
* without comparing to the destination location.
*
* CHANGED
: DataSync copies only data or metadata that is new or different content from the
* source location to the destination location.
*
*
* ALL
: DataSync copies all source location content to the destination, without comparing to
* existing content on the destination.
* @see TransferMode
*/
public String getTransferMode() {
return this.transferMode;
}
/**
*
* A value that determines whether DataSync transfers only the data and metadata that differ between the source and
* the destination location, or whether DataSync transfers all the content from the source, without comparing to the
* destination location.
*
*
* CHANGED
: DataSync copies only data or metadata that is new or different content from the source
* location to the destination location.
*
*
* ALL
: DataSync copies all source location content to the destination, without comparing to existing
* content on the destination.
*
*
* @param transferMode
* A value that determines whether DataSync transfers only the data and metadata that differ between the
* source and the destination location, or whether DataSync transfers all the content from the source,
* without comparing to the destination location.
*
* CHANGED
: DataSync copies only data or metadata that is new or different content from the
* source location to the destination location.
*
*
* ALL
: DataSync copies all source location content to the destination, without comparing to
* existing content on the destination.
* @return Returns a reference to this object so that method calls can be chained together.
* @see TransferMode
*/
public Options withTransferMode(String transferMode) {
setTransferMode(transferMode);
return this;
}
/**
*
* A value that determines whether DataSync transfers only the data and metadata that differ between the source and
* the destination location, or whether DataSync transfers all the content from the source, without comparing to the
* destination location.
*
*
* CHANGED
: DataSync copies only data or metadata that is new or different content from the source
* location to the destination location.
*
*
* ALL
: DataSync copies all source location content to the destination, without comparing to existing
* content on the destination.
*
*
* @param transferMode
* A value that determines whether DataSync transfers only the data and metadata that differ between the
* source and the destination location, or whether DataSync transfers all the content from the source,
* without comparing to the destination location.
*
* CHANGED
: DataSync copies only data or metadata that is new or different content from the
* source location to the destination location.
*
*
* ALL
: DataSync copies all source location content to the destination, without comparing to
* existing content on the destination.
* @return Returns a reference to this object so that method calls can be chained together.
* @see TransferMode
*/
public Options withTransferMode(TransferMode transferMode) {
this.transferMode = transferMode.toString();
return this;
}
/**
*
* A value that determines which components of the SMB security descriptor are copied from source to destination
* objects.
*
*
* This value is only used for transfers between SMB and Amazon FSx for Windows File Server locations, or between
* two Amazon FSx for Windows File Server locations. For more information about how DataSync handles metadata, see
* How DataSync Handles Metadata
* and Special Files.
*
*
* Default value: OWNER_DACL
*
*
* OWNER_DACL
: For each copied object, DataSync copies the following metadata:
*
*
* -
*
* Object owner.
*
*
* -
*
* NTFS discretionary access control lists (DACLs), which determine whether to grant access to an object.
*
*
*
*
* When choosing this option, DataSync does NOT copy the NTFS system access control lists (SACLs), which are used by
* administrators to log attempts to access a secured object.
*
*
* OWNER_DACL_SACL
: For each copied object, DataSync copies the following metadata:
*
*
* -
*
* Object owner.
*
*
* -
*
* NTFS discretionary access control lists (DACLs), which determine whether to grant access to an object.
*
*
* -
*
* NTFS system access control lists (SACLs), which are used by administrators to log attempts to access a secured
* object.
*
*
*
*
* Copying SACLs requires granting additional permissions to the Windows user that DataSync uses to access your SMB
* location. For information about choosing a user that ensures sufficient permissions to files, folders, and
* metadata, see user.
*
*
* NONE
: None of the SMB security descriptor components are copied. Destination objects are owned by
* the user that was provided for accessing the destination location. DACLs and SACLs are set based on the
* destination server’s configuration.
*
*
* @param securityDescriptorCopyFlags
* A value that determines which components of the SMB security descriptor are copied from source to
* destination objects.
*
* This value is only used for transfers between SMB and Amazon FSx for Windows File Server locations, or
* between two Amazon FSx for Windows File Server locations. For more information about how DataSync handles
* metadata, see How
* DataSync Handles Metadata and Special Files.
*
*
* Default value: OWNER_DACL
*
*
* OWNER_DACL
: For each copied object, DataSync copies the following metadata:
*
*
* -
*
* Object owner.
*
*
* -
*
* NTFS discretionary access control lists (DACLs), which determine whether to grant access to an object.
*
*
*
*
* When choosing this option, DataSync does NOT copy the NTFS system access control lists (SACLs), which are
* used by administrators to log attempts to access a secured object.
*
*
* OWNER_DACL_SACL
: For each copied object, DataSync copies the following metadata:
*
*
* -
*
* Object owner.
*
*
* -
*
* NTFS discretionary access control lists (DACLs), which determine whether to grant access to an object.
*
*
* -
*
* NTFS system access control lists (SACLs), which are used by administrators to log attempts to access a
* secured object.
*
*
*
*
* Copying SACLs requires granting additional permissions to the Windows user that DataSync uses to access
* your SMB location. For information about choosing a user that ensures sufficient permissions to files,
* folders, and metadata, see user.
*
*
* NONE
: None of the SMB security descriptor components are copied. Destination objects are
* owned by the user that was provided for accessing the destination location. DACLs and SACLs are set based
* on the destination server’s configuration.
* @see SmbSecurityDescriptorCopyFlags
*/
public void setSecurityDescriptorCopyFlags(String securityDescriptorCopyFlags) {
this.securityDescriptorCopyFlags = securityDescriptorCopyFlags;
}
/**
*
* A value that determines which components of the SMB security descriptor are copied from source to destination
* objects.
*
*
* This value is only used for transfers between SMB and Amazon FSx for Windows File Server locations, or between
* two Amazon FSx for Windows File Server locations. For more information about how DataSync handles metadata, see
* How DataSync Handles Metadata
* and Special Files.
*
*
* Default value: OWNER_DACL
*
*
* OWNER_DACL
: For each copied object, DataSync copies the following metadata:
*
*
* -
*
* Object owner.
*
*
* -
*
* NTFS discretionary access control lists (DACLs), which determine whether to grant access to an object.
*
*
*
*
* When choosing this option, DataSync does NOT copy the NTFS system access control lists (SACLs), which are used by
* administrators to log attempts to access a secured object.
*
*
* OWNER_DACL_SACL
: For each copied object, DataSync copies the following metadata:
*
*
* -
*
* Object owner.
*
*
* -
*
* NTFS discretionary access control lists (DACLs), which determine whether to grant access to an object.
*
*
* -
*
* NTFS system access control lists (SACLs), which are used by administrators to log attempts to access a secured
* object.
*
*
*
*
* Copying SACLs requires granting additional permissions to the Windows user that DataSync uses to access your SMB
* location. For information about choosing a user that ensures sufficient permissions to files, folders, and
* metadata, see user.
*
*
* NONE
: None of the SMB security descriptor components are copied. Destination objects are owned by
* the user that was provided for accessing the destination location. DACLs and SACLs are set based on the
* destination server’s configuration.
*
*
* @return A value that determines which components of the SMB security descriptor are copied from source to
* destination objects.
*
* This value is only used for transfers between SMB and Amazon FSx for Windows File Server locations, or
* between two Amazon FSx for Windows File Server locations. For more information about how DataSync handles
* metadata, see How
* DataSync Handles Metadata and Special Files.
*
*
* Default value: OWNER_DACL
*
*
* OWNER_DACL
: For each copied object, DataSync copies the following metadata:
*
*
* -
*
* Object owner.
*
*
* -
*
* NTFS discretionary access control lists (DACLs), which determine whether to grant access to an object.
*
*
*
*
* When choosing this option, DataSync does NOT copy the NTFS system access control lists (SACLs), which are
* used by administrators to log attempts to access a secured object.
*
*
* OWNER_DACL_SACL
: For each copied object, DataSync copies the following metadata:
*
*
* -
*
* Object owner.
*
*
* -
*
* NTFS discretionary access control lists (DACLs), which determine whether to grant access to an object.
*
*
* -
*
* NTFS system access control lists (SACLs), which are used by administrators to log attempts to access a
* secured object.
*
*
*
*
* Copying SACLs requires granting additional permissions to the Windows user that DataSync uses to access
* your SMB location. For information about choosing a user that ensures sufficient permissions to files,
* folders, and metadata, see user.
*
*
* NONE
: None of the SMB security descriptor components are copied. Destination objects are
* owned by the user that was provided for accessing the destination location. DACLs and SACLs are set based
* on the destination server’s configuration.
* @see SmbSecurityDescriptorCopyFlags
*/
public String getSecurityDescriptorCopyFlags() {
return this.securityDescriptorCopyFlags;
}
/**
*
* A value that determines which components of the SMB security descriptor are copied from source to destination
* objects.
*
*
* This value is only used for transfers between SMB and Amazon FSx for Windows File Server locations, or between
* two Amazon FSx for Windows File Server locations. For more information about how DataSync handles metadata, see
* How DataSync Handles Metadata
* and Special Files.
*
*
* Default value: OWNER_DACL
*
*
* OWNER_DACL
: For each copied object, DataSync copies the following metadata:
*
*
* -
*
* Object owner.
*
*
* -
*
* NTFS discretionary access control lists (DACLs), which determine whether to grant access to an object.
*
*
*
*
* When choosing this option, DataSync does NOT copy the NTFS system access control lists (SACLs), which are used by
* administrators to log attempts to access a secured object.
*
*
* OWNER_DACL_SACL
: For each copied object, DataSync copies the following metadata:
*
*
* -
*
* Object owner.
*
*
* -
*
* NTFS discretionary access control lists (DACLs), which determine whether to grant access to an object.
*
*
* -
*
* NTFS system access control lists (SACLs), which are used by administrators to log attempts to access a secured
* object.
*
*
*
*
* Copying SACLs requires granting additional permissions to the Windows user that DataSync uses to access your SMB
* location. For information about choosing a user that ensures sufficient permissions to files, folders, and
* metadata, see user.
*
*
* NONE
: None of the SMB security descriptor components are copied. Destination objects are owned by
* the user that was provided for accessing the destination location. DACLs and SACLs are set based on the
* destination server’s configuration.
*
*
* @param securityDescriptorCopyFlags
* A value that determines which components of the SMB security descriptor are copied from source to
* destination objects.
*
* This value is only used for transfers between SMB and Amazon FSx for Windows File Server locations, or
* between two Amazon FSx for Windows File Server locations. For more information about how DataSync handles
* metadata, see How
* DataSync Handles Metadata and Special Files.
*
*
* Default value: OWNER_DACL
*
*
* OWNER_DACL
: For each copied object, DataSync copies the following metadata:
*
*
* -
*
* Object owner.
*
*
* -
*
* NTFS discretionary access control lists (DACLs), which determine whether to grant access to an object.
*
*
*
*
* When choosing this option, DataSync does NOT copy the NTFS system access control lists (SACLs), which are
* used by administrators to log attempts to access a secured object.
*
*
* OWNER_DACL_SACL
: For each copied object, DataSync copies the following metadata:
*
*
* -
*
* Object owner.
*
*
* -
*
* NTFS discretionary access control lists (DACLs), which determine whether to grant access to an object.
*
*
* -
*
* NTFS system access control lists (SACLs), which are used by administrators to log attempts to access a
* secured object.
*
*
*
*
* Copying SACLs requires granting additional permissions to the Windows user that DataSync uses to access
* your SMB location. For information about choosing a user that ensures sufficient permissions to files,
* folders, and metadata, see user.
*
*
* NONE
: None of the SMB security descriptor components are copied. Destination objects are
* owned by the user that was provided for accessing the destination location. DACLs and SACLs are set based
* on the destination server’s configuration.
* @return Returns a reference to this object so that method calls can be chained together.
* @see SmbSecurityDescriptorCopyFlags
*/
public Options withSecurityDescriptorCopyFlags(String securityDescriptorCopyFlags) {
setSecurityDescriptorCopyFlags(securityDescriptorCopyFlags);
return this;
}
/**
*
* A value that determines which components of the SMB security descriptor are copied from source to destination
* objects.
*
*
* This value is only used for transfers between SMB and Amazon FSx for Windows File Server locations, or between
* two Amazon FSx for Windows File Server locations. For more information about how DataSync handles metadata, see
* How DataSync Handles Metadata
* and Special Files.
*
*
* Default value: OWNER_DACL
*
*
* OWNER_DACL
: For each copied object, DataSync copies the following metadata:
*
*
* -
*
* Object owner.
*
*
* -
*
* NTFS discretionary access control lists (DACLs), which determine whether to grant access to an object.
*
*
*
*
* When choosing this option, DataSync does NOT copy the NTFS system access control lists (SACLs), which are used by
* administrators to log attempts to access a secured object.
*
*
* OWNER_DACL_SACL
: For each copied object, DataSync copies the following metadata:
*
*
* -
*
* Object owner.
*
*
* -
*
* NTFS discretionary access control lists (DACLs), which determine whether to grant access to an object.
*
*
* -
*
* NTFS system access control lists (SACLs), which are used by administrators to log attempts to access a secured
* object.
*
*
*
*
* Copying SACLs requires granting additional permissions to the Windows user that DataSync uses to access your SMB
* location. For information about choosing a user that ensures sufficient permissions to files, folders, and
* metadata, see user.
*
*
* NONE
: None of the SMB security descriptor components are copied. Destination objects are owned by
* the user that was provided for accessing the destination location. DACLs and SACLs are set based on the
* destination server’s configuration.
*
*
* @param securityDescriptorCopyFlags
* A value that determines which components of the SMB security descriptor are copied from source to
* destination objects.
*
* This value is only used for transfers between SMB and Amazon FSx for Windows File Server locations, or
* between two Amazon FSx for Windows File Server locations. For more information about how DataSync handles
* metadata, see How
* DataSync Handles Metadata and Special Files.
*
*
* Default value: OWNER_DACL
*
*
* OWNER_DACL
: For each copied object, DataSync copies the following metadata:
*
*
* -
*
* Object owner.
*
*
* -
*
* NTFS discretionary access control lists (DACLs), which determine whether to grant access to an object.
*
*
*
*
* When choosing this option, DataSync does NOT copy the NTFS system access control lists (SACLs), which are
* used by administrators to log attempts to access a secured object.
*
*
* OWNER_DACL_SACL
: For each copied object, DataSync copies the following metadata:
*
*
* -
*
* Object owner.
*
*
* -
*
* NTFS discretionary access control lists (DACLs), which determine whether to grant access to an object.
*
*
* -
*
* NTFS system access control lists (SACLs), which are used by administrators to log attempts to access a
* secured object.
*
*
*
*
* Copying SACLs requires granting additional permissions to the Windows user that DataSync uses to access
* your SMB location. For information about choosing a user that ensures sufficient permissions to files,
* folders, and metadata, see user.
*
*
* NONE
: None of the SMB security descriptor components are copied. Destination objects are
* owned by the user that was provided for accessing the destination location. DACLs and SACLs are set based
* on the destination server’s configuration.
* @return Returns a reference to this object so that method calls can be chained together.
* @see SmbSecurityDescriptorCopyFlags
*/
public Options withSecurityDescriptorCopyFlags(SmbSecurityDescriptorCopyFlags securityDescriptorCopyFlags) {
this.securityDescriptorCopyFlags = securityDescriptorCopyFlags.toString();
return this;
}
/**
*
* Specifies whether object tags are maintained when transferring between object storage systems. If you want your
* DataSync task to ignore object tags, specify the NONE
value.
*
*
* Default Value: PRESERVE
*
*
* @param objectTags
* Specifies whether object tags are maintained when transferring between object storage systems. If you want
* your DataSync task to ignore object tags, specify the NONE
value.
*
* Default Value: PRESERVE
* @see ObjectTags
*/
public void setObjectTags(String objectTags) {
this.objectTags = objectTags;
}
/**
*
* Specifies whether object tags are maintained when transferring between object storage systems. If you want your
* DataSync task to ignore object tags, specify the NONE
value.
*
*
* Default Value: PRESERVE
*
*
* @return Specifies whether object tags are maintained when transferring between object storage systems. If you
* want your DataSync task to ignore object tags, specify the NONE
value.
*
* Default Value: PRESERVE
* @see ObjectTags
*/
public String getObjectTags() {
return this.objectTags;
}
/**
*
* Specifies whether object tags are maintained when transferring between object storage systems. If you want your
* DataSync task to ignore object tags, specify the NONE
value.
*
*
* Default Value: PRESERVE
*
*
* @param objectTags
* Specifies whether object tags are maintained when transferring between object storage systems. If you want
* your DataSync task to ignore object tags, specify the NONE
value.
*
* Default Value: PRESERVE
* @return Returns a reference to this object so that method calls can be chained together.
* @see ObjectTags
*/
public Options withObjectTags(String objectTags) {
setObjectTags(objectTags);
return this;
}
/**
*
* Specifies whether object tags are maintained when transferring between object storage systems. If you want your
* DataSync task to ignore object tags, specify the NONE
value.
*
*
* Default Value: PRESERVE
*
*
* @param objectTags
* Specifies whether object tags are maintained when transferring between object storage systems. If you want
* your DataSync task to ignore object tags, specify the NONE
value.
*
* Default Value: PRESERVE
* @return Returns a reference to this object so that method calls can be chained together.
* @see ObjectTags
*/
public Options withObjectTags(ObjectTags objectTags) {
this.objectTags = objectTags.toString();
return this;
}
/**
* Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be
* redacted from this string using a placeholder value.
*
* @return A string representation of this object.
*
* @see java.lang.Object#toString()
*/
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("{");
if (getVerifyMode() != null)
sb.append("VerifyMode: ").append(getVerifyMode()).append(",");
if (getOverwriteMode() != null)
sb.append("OverwriteMode: ").append(getOverwriteMode()).append(",");
if (getAtime() != null)
sb.append("Atime: ").append(getAtime()).append(",");
if (getMtime() != null)
sb.append("Mtime: ").append(getMtime()).append(",");
if (getUid() != null)
sb.append("Uid: ").append(getUid()).append(",");
if (getGid() != null)
sb.append("Gid: ").append(getGid()).append(",");
if (getPreserveDeletedFiles() != null)
sb.append("PreserveDeletedFiles: ").append(getPreserveDeletedFiles()).append(",");
if (getPreserveDevices() != null)
sb.append("PreserveDevices: ").append(getPreserveDevices()).append(",");
if (getPosixPermissions() != null)
sb.append("PosixPermissions: ").append(getPosixPermissions()).append(",");
if (getBytesPerSecond() != null)
sb.append("BytesPerSecond: ").append(getBytesPerSecond()).append(",");
if (getTaskQueueing() != null)
sb.append("TaskQueueing: ").append(getTaskQueueing()).append(",");
if (getLogLevel() != null)
sb.append("LogLevel: ").append(getLogLevel()).append(",");
if (getTransferMode() != null)
sb.append("TransferMode: ").append(getTransferMode()).append(",");
if (getSecurityDescriptorCopyFlags() != null)
sb.append("SecurityDescriptorCopyFlags: ").append(getSecurityDescriptorCopyFlags()).append(",");
if (getObjectTags() != null)
sb.append("ObjectTags: ").append(getObjectTags());
sb.append("}");
return sb.toString();
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (obj instanceof Options == false)
return false;
Options other = (Options) obj;
if (other.getVerifyMode() == null ^ this.getVerifyMode() == null)
return false;
if (other.getVerifyMode() != null && other.getVerifyMode().equals(this.getVerifyMode()) == false)
return false;
if (other.getOverwriteMode() == null ^ this.getOverwriteMode() == null)
return false;
if (other.getOverwriteMode() != null && other.getOverwriteMode().equals(this.getOverwriteMode()) == false)
return false;
if (other.getAtime() == null ^ this.getAtime() == null)
return false;
if (other.getAtime() != null && other.getAtime().equals(this.getAtime()) == false)
return false;
if (other.getMtime() == null ^ this.getMtime() == null)
return false;
if (other.getMtime() != null && other.getMtime().equals(this.getMtime()) == false)
return false;
if (other.getUid() == null ^ this.getUid() == null)
return false;
if (other.getUid() != null && other.getUid().equals(this.getUid()) == false)
return false;
if (other.getGid() == null ^ this.getGid() == null)
return false;
if (other.getGid() != null && other.getGid().equals(this.getGid()) == false)
return false;
if (other.getPreserveDeletedFiles() == null ^ this.getPreserveDeletedFiles() == null)
return false;
if (other.getPreserveDeletedFiles() != null && other.getPreserveDeletedFiles().equals(this.getPreserveDeletedFiles()) == false)
return false;
if (other.getPreserveDevices() == null ^ this.getPreserveDevices() == null)
return false;
if (other.getPreserveDevices() != null && other.getPreserveDevices().equals(this.getPreserveDevices()) == false)
return false;
if (other.getPosixPermissions() == null ^ this.getPosixPermissions() == null)
return false;
if (other.getPosixPermissions() != null && other.getPosixPermissions().equals(this.getPosixPermissions()) == false)
return false;
if (other.getBytesPerSecond() == null ^ this.getBytesPerSecond() == null)
return false;
if (other.getBytesPerSecond() != null && other.getBytesPerSecond().equals(this.getBytesPerSecond()) == false)
return false;
if (other.getTaskQueueing() == null ^ this.getTaskQueueing() == null)
return false;
if (other.getTaskQueueing() != null && other.getTaskQueueing().equals(this.getTaskQueueing()) == false)
return false;
if (other.getLogLevel() == null ^ this.getLogLevel() == null)
return false;
if (other.getLogLevel() != null && other.getLogLevel().equals(this.getLogLevel()) == false)
return false;
if (other.getTransferMode() == null ^ this.getTransferMode() == null)
return false;
if (other.getTransferMode() != null && other.getTransferMode().equals(this.getTransferMode()) == false)
return false;
if (other.getSecurityDescriptorCopyFlags() == null ^ this.getSecurityDescriptorCopyFlags() == null)
return false;
if (other.getSecurityDescriptorCopyFlags() != null && other.getSecurityDescriptorCopyFlags().equals(this.getSecurityDescriptorCopyFlags()) == false)
return false;
if (other.getObjectTags() == null ^ this.getObjectTags() == null)
return false;
if (other.getObjectTags() != null && other.getObjectTags().equals(this.getObjectTags()) == false)
return false;
return true;
}
@Override
public int hashCode() {
final int prime = 31;
int hashCode = 1;
hashCode = prime * hashCode + ((getVerifyMode() == null) ? 0 : getVerifyMode().hashCode());
hashCode = prime * hashCode + ((getOverwriteMode() == null) ? 0 : getOverwriteMode().hashCode());
hashCode = prime * hashCode + ((getAtime() == null) ? 0 : getAtime().hashCode());
hashCode = prime * hashCode + ((getMtime() == null) ? 0 : getMtime().hashCode());
hashCode = prime * hashCode + ((getUid() == null) ? 0 : getUid().hashCode());
hashCode = prime * hashCode + ((getGid() == null) ? 0 : getGid().hashCode());
hashCode = prime * hashCode + ((getPreserveDeletedFiles() == null) ? 0 : getPreserveDeletedFiles().hashCode());
hashCode = prime * hashCode + ((getPreserveDevices() == null) ? 0 : getPreserveDevices().hashCode());
hashCode = prime * hashCode + ((getPosixPermissions() == null) ? 0 : getPosixPermissions().hashCode());
hashCode = prime * hashCode + ((getBytesPerSecond() == null) ? 0 : getBytesPerSecond().hashCode());
hashCode = prime * hashCode + ((getTaskQueueing() == null) ? 0 : getTaskQueueing().hashCode());
hashCode = prime * hashCode + ((getLogLevel() == null) ? 0 : getLogLevel().hashCode());
hashCode = prime * hashCode + ((getTransferMode() == null) ? 0 : getTransferMode().hashCode());
hashCode = prime * hashCode + ((getSecurityDescriptorCopyFlags() == null) ? 0 : getSecurityDescriptorCopyFlags().hashCode());
hashCode = prime * hashCode + ((getObjectTags() == null) ? 0 : getObjectTags().hashCode());
return hashCode;
}
@Override
public Options clone() {
try {
return (Options) super.clone();
} catch (CloneNotSupportedException e) {
throw new IllegalStateException("Got a CloneNotSupportedException from Object.clone() " + "even though we're Cloneable!", e);
}
}
@com.amazonaws.annotation.SdkInternalApi
@Override
public void marshall(ProtocolMarshaller protocolMarshaller) {
com.amazonaws.services.datasync.model.transform.OptionsMarshaller.getInstance().marshall(this, protocolMarshaller);
}
}