All Downloads are FREE. Search and download functionalities are using the official Maven repository.

scala.googleapis.storage.BucketIamConfigurationUniformBucketLevelAccess.scala Maven / Gradle / Ivy

The newest version!
package googleapis.storage

import io.circe._
import io.circe.syntax._

final case class BucketIamConfigurationUniformBucketLevelAccess(
    /** If set, access is controlled only by bucket-level or above IAM policies.
      */
    enabled: Option[Boolean] = None,
    /** The deadline for changing iamConfiguration.uniformBucketLevelAccess.enabled from true to false in RFC 3339  format. iamConfiguration.uniformBucketLevelAccess.enabled may be changed from true to false until the locked time, after which the field is immutable.
      */
    lockedTime: Option[String] = None,
)
object BucketIamConfigurationUniformBucketLevelAccess {
  implicit val encoder: Encoder[
    BucketIamConfigurationUniformBucketLevelAccess
  ] = Encoder.instance { x =>
    Json.obj("enabled" := x.enabled, "lockedTime" := x.lockedTime)
  }
  implicit val decoder: Decoder[
    BucketIamConfigurationUniformBucketLevelAccess
  ] = Decoder.instance { c =>
    for {
      v0 <- c.get[Option[Boolean]]("enabled")
      v1 <- c.get[Option[String]]("lockedTime")
    } yield BucketIamConfigurationUniformBucketLevelAccess(v0, v1)
  }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy