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

com.google.api.services.serviceusage.v1.model.FieldPolicy Maven / Gradle / Ivy

There is a newer version: v1-rev20241025-2.0.0
Show newest version
/*
 * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
 * in compliance with the License. You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software distributed under the License
 * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
 * or implied. See the License for the specific language governing permissions and limitations under
 * the License.
 */
/*
 * This code was generated by https://github.com/googleapis/google-api-java-client-services/
 * Modify at your own risk.
 */

package com.google.api.services.serviceusage.v1.model;

/**
 * Google API Policy Annotation This message defines a simple API policy annotation that can be used
 * to annotate API request and response message fields with applicable policies. One field may have
 * multiple applicable policies that must all be satisfied before a request can be processed. This
 * policy annotation is used to generate the overall policy that will be used for automatic runtime
 * policy enforcement and documentation generation.
 *
 * 

This is the Java data model class that specifies how to parse/serialize into the JSON that is * transmitted over HTTP when working with the Service Usage API. For a detailed explanation see: * https://developers.google.com/api-client-library/java/google-http-java-client/json *

* * @author Google, Inc. */ @SuppressWarnings("javadoc") public final class FieldPolicy extends com.google.api.client.json.GenericJson { /** * Specifies the required permission(s) for the resource referred to by the field. It requires the * field contains a valid resource reference, and the request must pass the permission checks to * proceed. For example, "resourcemanager.projects.get". * The value may be {@code null}. */ @com.google.api.client.util.Key private java.lang.String resourcePermission; /** * Specifies the resource type for the resource referred to by the field. * The value may be {@code null}. */ @com.google.api.client.util.Key private java.lang.String resourceType; /** * Selects one or more request or response message fields to apply this `FieldPolicy`. When a * `FieldPolicy` is used in proto annotation, the selector must be left as empty. The service * config generator will automatically fill the correct value. When a `FieldPolicy` is used in * service config, the selector must be a comma-separated string with valid request or response * field paths, such as "foo.bar" or "foo.bar,foo.baz". * The value may be {@code null}. */ @com.google.api.client.util.Key private java.lang.String selector; /** * Specifies the required permission(s) for the resource referred to by the field. It requires the * field contains a valid resource reference, and the request must pass the permission checks to * proceed. For example, "resourcemanager.projects.get". * @return value or {@code null} for none */ public java.lang.String getResourcePermission() { return resourcePermission; } /** * Specifies the required permission(s) for the resource referred to by the field. It requires the * field contains a valid resource reference, and the request must pass the permission checks to * proceed. For example, "resourcemanager.projects.get". * @param resourcePermission resourcePermission or {@code null} for none */ public FieldPolicy setResourcePermission(java.lang.String resourcePermission) { this.resourcePermission = resourcePermission; return this; } /** * Specifies the resource type for the resource referred to by the field. * @return value or {@code null} for none */ public java.lang.String getResourceType() { return resourceType; } /** * Specifies the resource type for the resource referred to by the field. * @param resourceType resourceType or {@code null} for none */ public FieldPolicy setResourceType(java.lang.String resourceType) { this.resourceType = resourceType; return this; } /** * Selects one or more request or response message fields to apply this `FieldPolicy`. When a * `FieldPolicy` is used in proto annotation, the selector must be left as empty. The service * config generator will automatically fill the correct value. When a `FieldPolicy` is used in * service config, the selector must be a comma-separated string with valid request or response * field paths, such as "foo.bar" or "foo.bar,foo.baz". * @return value or {@code null} for none */ public java.lang.String getSelector() { return selector; } /** * Selects one or more request or response message fields to apply this `FieldPolicy`. When a * `FieldPolicy` is used in proto annotation, the selector must be left as empty. The service * config generator will automatically fill the correct value. When a `FieldPolicy` is used in * service config, the selector must be a comma-separated string with valid request or response * field paths, such as "foo.bar" or "foo.bar,foo.baz". * @param selector selector or {@code null} for none */ public FieldPolicy setSelector(java.lang.String selector) { this.selector = selector; return this; } @Override public FieldPolicy set(String fieldName, Object value) { return (FieldPolicy) super.set(fieldName, value); } @Override public FieldPolicy clone() { return (FieldPolicy) super.clone(); } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy