@Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append("{");
        if (getTargetResource() != null)
            sb.append("TargetResource: ").append(getTargetResource()).append(",");
        if (getCannedAccessControlList() != null)
            sb.append("CannedAccessControlList: ").append(getCannedAccessControlList()).append(",");
        if (getAccessControlGrants() != null)
            sb.append("AccessControlGrants: ").append(getAccessControlGrants()).append(",");
        if (getMetadataDirective() != null)
            sb.append("MetadataDirective: ").append(getMetadataDirective()).append(",");
        if (getModifiedSinceConstraint() != null)
            sb.append("ModifiedSinceConstraint: ").append(getModifiedSinceConstraint()).append(",");
        if (getNewObjectMetadata() != null)
            sb.append("NewObjectMetadata: ").append(getNewObjectMetadata()).append(",");
        if (getNewObjectTagging() != null)
            sb.append("NewObjectTagging: ").append(getNewObjectTagging()).append(",");
        if (getRedirectLocation() != null)
            sb.append("RedirectLocation: ").append(getRedirectLocation()).append(",");
        if (getRequesterPays() != null)
            sb.append("RequesterPays: ").append(getRequesterPays()).append(",");
        if (getStorageClass() != null)
            sb.append("StorageClass: ").append(getStorageClass()).append(",");
        if (getUnModifiedSinceConstraint() != null)
            sb.append("UnModifiedSinceConstraint: ").append(getUnModifiedSinceConstraint()).append(",");
        if (getSSEAwsKmsKeyId() != null)
            sb.append("SSEAwsKmsKeyId: ").append(getSSEAwsKmsKeyId()).append(",");
        if (getTargetKeyPrefix() != null)
            sb.append("TargetKeyPrefix: ").append(getTargetKeyPrefix()).append(",");
        if (getObjectLockLegalHoldStatus() != null)
            sb.append("ObjectLockLegalHoldStatus: ").append(getObjectLockLegalHoldStatus()).append(",");
        if (getObjectLockMode() != null)
            sb.append("ObjectLockMode: ").append(getObjectLockMode()).append(",");
        if (getObjectLockRetainUntilDate() != null)
            sb.append("ObjectLockRetainUntilDate: ").append(getObjectLockRetainUntilDate()).append(",");
        if (getBucketKeyEnabled() != null)
            sb.append("BucketKeyEnabled: ").append(getBucketKeyEnabled()).append(",");
        if (getChecksumAlgorithm() != null)
            sb.append("ChecksumAlgorithm: ").append(getChecksumAlgorithm());
        sb.append("}");
        return sb.toString();
    }
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()
aws-java-sdk-s3control/src/main/java/com/amazonaws/services/s3control/model/S3CopyObjectOperation.java