Class: Google::Apis::StoragetransferV1::MetadataOptions

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/storagetransfer_v1/classes.rb,
lib/google/apis/storagetransfer_v1/representations.rb,
lib/google/apis/storagetransfer_v1/representations.rb

Overview

Specifies the metadata options for running a transfer.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ MetadataOptions

Returns a new instance of MetadataOptions.



801
802
803
# File 'lib/google/apis/storagetransfer_v1/classes.rb', line 801

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#aclString

Specifies how each object's ACLs should be preserved for transfers between Google Cloud Storage buckets. If unspecified, the default behavior is the same as ACL_DESTINATION_BUCKET_DEFAULT. Corresponds to the JSON property acl

Returns:

  • (String)


741
742
743
# File 'lib/google/apis/storagetransfer_v1/classes.rb', line 741

def acl
  @acl
end

#gidString

Specifies how each file's POSIX group ID (GID) attribute should be handled by the transfer. By default, GID is not preserved. Only applicable to transfers involving POSIX file systems, and ignored for other transfers. Corresponds to the JSON property gid

Returns:

  • (String)


748
749
750
# File 'lib/google/apis/storagetransfer_v1/classes.rb', line 748

def gid
  @gid
end

#kms_keyString

Specifies how each object's Cloud KMS customer-managed encryption key (CMEK) is preserved for transfers between Google Cloud Storage buckets. If unspecified, the default behavior is the same as KMS_KEY_DESTINATION_BUCKET_DEFAULT. Corresponds to the JSON property kmsKey

Returns:

  • (String)


756
757
758
# File 'lib/google/apis/storagetransfer_v1/classes.rb', line 756

def kms_key
  @kms_key
end

#modeString

Specifies how each file's mode attribute should be handled by the transfer. By default, mode is not preserved. Only applicable to transfers involving POSIX file systems, and ignored for other transfers. Corresponds to the JSON property mode

Returns:

  • (String)


763
764
765
# File 'lib/google/apis/storagetransfer_v1/classes.rb', line 763

def mode
  @mode
end

#storage_classString

Specifies the storage class to set on objects being transferred to Google Cloud Storage buckets. If unspecified, the default behavior is the same as STORAGE_CLASS_DESTINATION_BUCKET_DEFAULT. Corresponds to the JSON property storageClass

Returns:

  • (String)


770
771
772
# File 'lib/google/apis/storagetransfer_v1/classes.rb', line 770

def storage_class
  @storage_class
end

Specifies how symlinks should be handled by the transfer. By default, symlinks are not preserved. Only applicable to transfers involving POSIX file systems, and ignored for other transfers. Corresponds to the JSON property symlink

Returns:

  • (String)


777
778
779
# File 'lib/google/apis/storagetransfer_v1/classes.rb', line 777

def symlink
  @symlink
end

#temporary_holdString

Specifies how each object's temporary hold status should be preserved for transfers between Google Cloud Storage buckets. If unspecified, the default behavior is the same as TEMPORARY_HOLD_PRESERVE. Corresponds to the JSON property temporaryHold

Returns:

  • (String)


784
785
786
# File 'lib/google/apis/storagetransfer_v1/classes.rb', line 784

def temporary_hold
  @temporary_hold
end

#time_createdString

Specifies how each object's timeCreated metadata is preserved for transfers. If unspecified, the default behavior is the same as TIME_CREATED_SKIP. This behavior is supported for transfers to GCS buckets from GCS, S3, Azure, S3 Compatible, and Azure sources. Corresponds to the JSON property timeCreated

Returns:

  • (String)


792
793
794
# File 'lib/google/apis/storagetransfer_v1/classes.rb', line 792

def time_created
  @time_created
end

#uidString

Specifies how each file's POSIX user ID (UID) attribute should be handled by the transfer. By default, UID is not preserved. Only applicable to transfers involving POSIX file systems, and ignored for other transfers. Corresponds to the JSON property uid

Returns:

  • (String)


799
800
801
# File 'lib/google/apis/storagetransfer_v1/classes.rb', line 799

def uid
  @uid
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



806
807
808
809
810
811
812
813
814
815
816
# File 'lib/google/apis/storagetransfer_v1/classes.rb', line 806

def update!(**args)
  @acl = args[:acl] if args.key?(:acl)
  @gid = args[:gid] if args.key?(:gid)
  @kms_key = args[:kms_key] if args.key?(:kms_key)
  @mode = args[:mode] if args.key?(:mode)
  @storage_class = args[:storage_class] if args.key?(:storage_class)
  @symlink = args[:symlink] if args.key?(:symlink)
  @temporary_hold = args[:temporary_hold] if args.key?(:temporary_hold)
  @time_created = args[:time_created] if args.key?(:time_created)
  @uid = args[:uid] if args.key?(:uid)
end