PatchBucketOptions
Options for PatchBucket operations.
using Google.Api.Gax;
using Google.Apis.Storage.v1;
using System;
namespace Google.Cloud.Storage.V1
{
public sealed class PatchBucketOptions
{
public long? IfMetagenerationMatch { get; set; }
public long? IfMetagenerationNotMatch { get; set; }
public Projection? Projection { get; set; }
public PredefinedBucketAcl? PredefinedAcl { get; set; }
public PredefinedObjectAcl? PredefinedDefaultObjectAcl { get; set; }
internal void ModifyRequest(BucketsResource.PatchRequest request)
{
if (IfMetagenerationMatch.HasValue && IfMetagenerationNotMatch.HasValue)
throw new ArgumentException(string.Format("Cannot specify {0} and {1} in the same options", "IfMetagenerationMatch", "IfMetagenerationNotMatch"), "options");
if (IfMetagenerationMatch.HasValue)
request.IfMetagenerationMatch = IfMetagenerationMatch;
if (IfMetagenerationNotMatch.HasValue)
request.IfMetagenerationNotMatch = IfMetagenerationNotMatch;
if (Projection.HasValue)
request.Projection = GaxPreconditions.CheckEnumValue<BucketsResource.PatchRequest.ProjectionEnum>((BucketsResource.PatchRequest.ProjectionEnum)Projection.Value, "Projection");
if (PredefinedAcl.HasValue)
request.PredefinedAcl = GaxPreconditions.CheckEnumValue<BucketsResource.PatchRequest.PredefinedAclEnum>((BucketsResource.PatchRequest.PredefinedAclEnum)PredefinedAcl.Value, "PredefinedAcl");
if (PredefinedDefaultObjectAcl.HasValue)
request.PredefinedDefaultObjectAcl = GaxPreconditions.CheckEnumValue<BucketsResource.PatchRequest.PredefinedDefaultObjectAclEnum>((BucketsResource.PatchRequest.PredefinedDefaultObjectAclEnum)PredefinedDefaultObjectAcl.Value, "PredefinedDefaultObjectAcl");
}
}
}