Class CopyObjectOptions

public sealed class CopyObjectOptions

Options for CopyObject operations.

Inheritance

Object > CopyObjectOptions

Namespace

Google.Cloud.Storage.V1

Assembly

Google.Cloud.Storage.V1.dll

Properties

DestinationPredefinedAcl

public PredefinedObjectAcl? DestinationPredefinedAcl { get; set; }

A predefined set of ACLs for the new object.

Property Value
TypeDescription
Nullable<PredefinedObjectAcl>

EncryptionKey

public EncryptionKey EncryptionKey { get; set; }

The encryption key to use for this operation. If this property is null, the EncryptionKey will be used instead. Use None to remove encryption headers from this request.

Property Value
TypeDescription
EncryptionKey

ExtraMetadata

public Object ExtraMetadata { get; set; }

Additional object metadata for the new object. This can be used to specify the storage class of the new object, the content type etc. If this property is not set, the existing object metadata will be used unchanged.

Property Value
TypeDescription
Object

IfGenerationMatch

public long? IfGenerationMatch { get; set; }

Precondition for copying: the object is only copied if the existing destination object's generation matches the given value.

Property Value
TypeDescription
Nullable<Int64>

IfGenerationNotMatch

public long? IfGenerationNotMatch { get; set; }

Precondition for copying: the object is only copied if the existing destination object's generation does not match the given value.

Property Value
TypeDescription
Nullable<Int64>

IfMetagenerationMatch

public long? IfMetagenerationMatch { get; set; }

Precondition for copying: the object is only copied if the existing destination object's meta-generation matches the given value.

Property Value
TypeDescription
Nullable<Int64>

IfMetagenerationNotMatch

public long? IfMetagenerationNotMatch { get; set; }

Precondition for copying: the object is only copied if the existing destination object's meta-generation does not match the given value.

Property Value
TypeDescription
Nullable<Int64>

IfSourceGenerationMatch

public long? IfSourceGenerationMatch { get; set; }

Precondition for copying: the object is only copied if the source object's generation matches the given value.

Property Value
TypeDescription
Nullable<Int64>

IfSourceGenerationNotMatch

public long? IfSourceGenerationNotMatch { get; set; }

Precondition for copying: the object is only copied if the source object's generation does not match the given value.

Property Value
TypeDescription
Nullable<Int64>

IfSourceMetagenerationMatch

public long? IfSourceMetagenerationMatch { get; set; }

Precondition for copying: the object is only copied if the source object's meta-generation matches the given value.

Property Value
TypeDescription
Nullable<Int64>

IfSourceMetagenerationNotMatch

public long? IfSourceMetagenerationNotMatch { get; set; }

Precondition for copying: the object is only copied if the source object's meta-generation does not match the given value.

Property Value
TypeDescription
Nullable<Int64>

KmsKeyName

public string KmsKeyName { get; set; }

The name of the Cloud KMS key to use to encrypt the new object.

Property Value
TypeDescription
String
Remarks

Currently, either customer-supplied encryption or a Cloud KMS key can be used, but not both. If this property is null and customer-supplied encryption is not being used, the bucket encryption defaults will be used to determine the encryption for the object. If this property is non-null and the client object has a default encryption key, the EncryptionKey property of this options object must be set to None to make the intention clear.

Projection

public Projection? Projection { get; set; }

The projection to retrieve.

Property Value
TypeDescription
Nullable<Projection>

SourceEncryptionKey

public EncryptionKey SourceEncryptionKey { get; set; }

The encryption key to use for the source of the copy. If this property is null, the EncryptionKey will be used instead. Use None if the source is not encrypted.

Property Value
TypeDescription
EncryptionKey

SourceGeneration

public long? SourceGeneration { get; set; }

The generation of the object resource to copy. When not set, the latest generation will be copied.

Property Value
TypeDescription
Nullable<Int64>

UserProject

public string UserProject { get; set; }

If set, this is the ID of the project which will be billed for the request. The caller must have suitable permissions for the project being billed.

Property Value
TypeDescription
String