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

com.google.api.MonitoredResourceKt.kt Maven / Gradle / Ivy

// Generated by the protocol buffer compiler. DO NOT EDIT!
// source: google/api/monitored_resource.proto

// Generated files should ignore deprecation warnings
@file:Suppress("DEPRECATION")
package com.google.api;

@kotlin.jvm.JvmName("-initializemonitoredResource")
public inline fun monitoredResource(block: com.google.api.MonitoredResourceKt.Dsl.() -> kotlin.Unit): com.google.api.MonitoredResource =
  com.google.api.MonitoredResourceKt.Dsl._create(com.google.api.MonitoredResource.newBuilder()).apply { block() }._build()
/**
 * ```
 * An object representing a resource that can be used for monitoring, logging,
 * billing, or other purposes. Examples include virtual machine instances,
 * databases, and storage devices such as disks. The `type` field identifies a
 * [MonitoredResourceDescriptor][google.api.MonitoredResourceDescriptor] object that describes the resource's
 * schema. Information in the `labels` field identifies the actual resource and
 * its attributes according to the schema. For example, a particular Compute
 * Engine VM instance could be represented by the following object, because the
 * [MonitoredResourceDescriptor][google.api.MonitoredResourceDescriptor] for `"gce_instance"` has labels
 * `"instance_id"` and `"zone"`:
 *
 *     { "type": "gce_instance",
 *       "labels": { "instance_id": "12345678901234",
 *                   "zone": "us-central1-a" }}
 * ```
 *
 * Protobuf type `google.api.MonitoredResource`
 */
public object MonitoredResourceKt {
  @kotlin.OptIn(com.google.protobuf.kotlin.OnlyForUseByGeneratedProtoCode::class)
  @com.google.protobuf.kotlin.ProtoDslMarker
  public class Dsl private constructor(
    private val _builder: com.google.api.MonitoredResource.Builder
  ) {
    public companion object {
      @kotlin.jvm.JvmSynthetic
      @kotlin.PublishedApi
      internal fun _create(builder: com.google.api.MonitoredResource.Builder): Dsl = Dsl(builder)
    }

    @kotlin.jvm.JvmSynthetic
    @kotlin.PublishedApi
    internal fun _build(): com.google.api.MonitoredResource = _builder.build()

    /**
     * ```
     * Required. The monitored resource type. This field must match
     * the `type` field of a [MonitoredResourceDescriptor][google.api.MonitoredResourceDescriptor] object. For
     * example, the type of a Compute Engine VM instance is `gce_instance`.
     * ```
     *
     * `string type = 1;`
     */
    public var type: kotlin.String
      @JvmName("getType")
      get() = _builder.getType()
      @JvmName("setType")
      set(value) {
        _builder.setType(value)
      }
    /**
     * ```
     * Required. The monitored resource type. This field must match
     * the `type` field of a [MonitoredResourceDescriptor][google.api.MonitoredResourceDescriptor] object. For
     * example, the type of a Compute Engine VM instance is `gce_instance`.
     * ```
     *
     * `string type = 1;`
     */
    public fun clearType() {
      _builder.clearType()
    }

    /**
     * An uninstantiable, behaviorless type to represent the field in
     * generics.
     */
    @kotlin.OptIn(com.google.protobuf.kotlin.OnlyForUseByGeneratedProtoCode::class)
    public class LabelsProxy private constructor() : com.google.protobuf.kotlin.DslProxy()
    /**
     * ```
     * Required. Values for all of the labels listed in the associated monitored
     * resource descriptor. For example, Compute Engine VM instances use the
     * labels `"project_id"`, `"instance_id"`, and `"zone"`.
     * ```
     *
     * `map labels = 2;`
     */
     public val labels: com.google.protobuf.kotlin.DslMap
      @kotlin.jvm.JvmSynthetic
      @JvmName("getLabelsMap")
      get() = com.google.protobuf.kotlin.DslMap(
        _builder.getLabelsMap()
      )
    /**
     * ```
     * Required. Values for all of the labels listed in the associated monitored
     * resource descriptor. For example, Compute Engine VM instances use the
     * labels `"project_id"`, `"instance_id"`, and `"zone"`.
     * ```
     *
     * `map labels = 2;`
     */
    @JvmName("putLabels")
    public fun com.google.protobuf.kotlin.DslMap
      .put(key: kotlin.String, value: kotlin.String) {
         _builder.putLabels(key, value)
       }
    /**
     * ```
     * Required. Values for all of the labels listed in the associated monitored
     * resource descriptor. For example, Compute Engine VM instances use the
     * labels `"project_id"`, `"instance_id"`, and `"zone"`.
     * ```
     *
     * `map labels = 2;`
     */
    @kotlin.jvm.JvmSynthetic
    @JvmName("setLabels")
    @Suppress("NOTHING_TO_INLINE")
    public inline operator fun com.google.protobuf.kotlin.DslMap
      .set(key: kotlin.String, value: kotlin.String) {
         put(key, value)
       }
    /**
     * ```
     * Required. Values for all of the labels listed in the associated monitored
     * resource descriptor. For example, Compute Engine VM instances use the
     * labels `"project_id"`, `"instance_id"`, and `"zone"`.
     * ```
     *
     * `map labels = 2;`
     */
    @kotlin.jvm.JvmSynthetic
    @JvmName("removeLabels")
    public fun com.google.protobuf.kotlin.DslMap
      .remove(key: kotlin.String) {
         _builder.removeLabels(key)
       }
    /**
     * ```
     * Required. Values for all of the labels listed in the associated monitored
     * resource descriptor. For example, Compute Engine VM instances use the
     * labels `"project_id"`, `"instance_id"`, and `"zone"`.
     * ```
     *
     * `map labels = 2;`
     */
    @kotlin.jvm.JvmSynthetic
    @JvmName("putAllLabels")
    public fun com.google.protobuf.kotlin.DslMap
      .putAll(map: kotlin.collections.Map) {
         _builder.putAllLabels(map)
       }
    /**
     * ```
     * Required. Values for all of the labels listed in the associated monitored
     * resource descriptor. For example, Compute Engine VM instances use the
     * labels `"project_id"`, `"instance_id"`, and `"zone"`.
     * ```
     *
     * `map labels = 2;`
     */
    @kotlin.jvm.JvmSynthetic
    @JvmName("clearLabels")
    public fun com.google.protobuf.kotlin.DslMap
      .clear() {
         _builder.clearLabels()
       }
  }
}
@kotlin.jvm.JvmSynthetic
public inline fun com.google.api.MonitoredResource.copy(block: `com.google.api`.MonitoredResourceKt.Dsl.() -> kotlin.Unit): com.google.api.MonitoredResource =
  `com.google.api`.MonitoredResourceKt.Dsl._create(this.toBuilder()).apply { block() }._build()





© 2015 - 2024 Weber Informatics LLC | Privacy Policy