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

com.google.api.services.dns.model.Policy Maven / Gradle / Ivy

There is a newer version: v2-rev20220505-1.32.1
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.dns.model;

/**
 * A policy is a collection of DNS rules applied to one or more Virtual Private Cloud resources.
 *
 * 

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 Cloud DNS 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 Policy extends com.google.api.client.json.GenericJson { /** * Sets an alternative name server for the associated networks. When specified, all DNS queries * are forwarded to a name server that you choose. Names such as .internal are not available when * an alternative name server is specified. * The value may be {@code null}. */ @com.google.api.client.util.Key private PolicyAlternativeNameServerConfig alternativeNameServerConfig; /** * A mutable string of at most 1024 characters associated with this resource for the user's * convenience. Has no effect on the policy's function. * The value may be {@code null}. */ @com.google.api.client.util.Key private java.lang.String description; /** * Allows networks bound to this policy to receive DNS queries sent by VMs or applications over * VPN connections. When enabled, a virtual IP address is allocated from each of the subnetworks * that are bound to this policy. * The value may be {@code null}. */ @com.google.api.client.util.Key private java.lang.Boolean enableInboundForwarding; /** * Controls whether logging is enabled for the networks bound to this policy. Defaults to no * logging if not set. * The value may be {@code null}. */ @com.google.api.client.util.Key private java.lang.Boolean enableLogging; /** * Unique identifier for the resource; defined by the server (output only). * The value may be {@code null}. */ @com.google.api.client.util.Key @com.google.api.client.json.JsonString private java.math.BigInteger id; /** * The value may be {@code null}. */ @com.google.api.client.util.Key private java.lang.String kind; /** * User-assigned name for this policy. * The value may be {@code null}. */ @com.google.api.client.util.Key private java.lang.String name; /** * List of network names specifying networks to which this policy is applied. * The value may be {@code null}. */ @com.google.api.client.util.Key private java.util.List networks; /** * Sets an alternative name server for the associated networks. When specified, all DNS queries * are forwarded to a name server that you choose. Names such as .internal are not available when * an alternative name server is specified. * @return value or {@code null} for none */ public PolicyAlternativeNameServerConfig getAlternativeNameServerConfig() { return alternativeNameServerConfig; } /** * Sets an alternative name server for the associated networks. When specified, all DNS queries * are forwarded to a name server that you choose. Names such as .internal are not available when * an alternative name server is specified. * @param alternativeNameServerConfig alternativeNameServerConfig or {@code null} for none */ public Policy setAlternativeNameServerConfig(PolicyAlternativeNameServerConfig alternativeNameServerConfig) { this.alternativeNameServerConfig = alternativeNameServerConfig; return this; } /** * A mutable string of at most 1024 characters associated with this resource for the user's * convenience. Has no effect on the policy's function. * @return value or {@code null} for none */ public java.lang.String getDescription() { return description; } /** * A mutable string of at most 1024 characters associated with this resource for the user's * convenience. Has no effect on the policy's function. * @param description description or {@code null} for none */ public Policy setDescription(java.lang.String description) { this.description = description; return this; } /** * Allows networks bound to this policy to receive DNS queries sent by VMs or applications over * VPN connections. When enabled, a virtual IP address is allocated from each of the subnetworks * that are bound to this policy. * @return value or {@code null} for none */ public java.lang.Boolean getEnableInboundForwarding() { return enableInboundForwarding; } /** * Allows networks bound to this policy to receive DNS queries sent by VMs or applications over * VPN connections. When enabled, a virtual IP address is allocated from each of the subnetworks * that are bound to this policy. * @param enableInboundForwarding enableInboundForwarding or {@code null} for none */ public Policy setEnableInboundForwarding(java.lang.Boolean enableInboundForwarding) { this.enableInboundForwarding = enableInboundForwarding; return this; } /** * Controls whether logging is enabled for the networks bound to this policy. Defaults to no * logging if not set. * @return value or {@code null} for none */ public java.lang.Boolean getEnableLogging() { return enableLogging; } /** * Controls whether logging is enabled for the networks bound to this policy. Defaults to no * logging if not set. * @param enableLogging enableLogging or {@code null} for none */ public Policy setEnableLogging(java.lang.Boolean enableLogging) { this.enableLogging = enableLogging; return this; } /** * Unique identifier for the resource; defined by the server (output only). * @return value or {@code null} for none */ public java.math.BigInteger getId() { return id; } /** * Unique identifier for the resource; defined by the server (output only). * @param id id or {@code null} for none */ public Policy setId(java.math.BigInteger id) { this.id = id; return this; } /** * @return value or {@code null} for none */ public java.lang.String getKind() { return kind; } /** * @param kind kind or {@code null} for none */ public Policy setKind(java.lang.String kind) { this.kind = kind; return this; } /** * User-assigned name for this policy. * @return value or {@code null} for none */ public java.lang.String getName() { return name; } /** * User-assigned name for this policy. * @param name name or {@code null} for none */ public Policy setName(java.lang.String name) { this.name = name; return this; } /** * List of network names specifying networks to which this policy is applied. * @return value or {@code null} for none */ public java.util.List getNetworks() { return networks; } /** * List of network names specifying networks to which this policy is applied. * @param networks networks or {@code null} for none */ public Policy setNetworks(java.util.List networks) { this.networks = networks; return this; } @Override public Policy set(String fieldName, Object value) { return (Policy) super.set(fieldName, value); } @Override public Policy clone() { return (Policy) super.clone(); } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy