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

com.google.api.services.backupdr.v1.model.ComputeInstanceBackupProperties Maven / Gradle / Ivy

There is a newer version: v1-rev20241030-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.backupdr.v1.model;

/**
 * ComputeInstanceBackupProperties represents Compute Engine instance backup properties.
 *
 * 

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 Backup and DR Service 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 ComputeInstanceBackupProperties extends com.google.api.client.json.GenericJson { /** * Enables instances created based on these properties to send packets with source IP addresses * other than their own and receive packets with destination IP addresses other than their own. If * these instances will be used as an IP gateway or it will be set as the next-hop in a Route * resource, specify `true`. If unsure, leave this set to `false`. See the * https://cloud.google.com/vpc/docs/using-routes#canipforward documentation for more information. * The value may be {@code null}. */ @com.google.api.client.util.Key private java.lang.Boolean canIpForward; /** * An optional text description for the instances that are created from these properties. * The value may be {@code null}. */ @com.google.api.client.util.Key private java.lang.String description; /** * An array of disks that are associated with the instances that are created from these * properties. * The value may be {@code null}. */ @com.google.api.client.util.Key private java.util.List disk; static { // hack to force ProGuard to consider AttachedDisk used, since otherwise it would be stripped out // see https://github.com/google/google-api-java-client/issues/543 com.google.api.client.util.Data.nullOf(AttachedDisk.class); } /** * A list of guest accelerator cards' type and count to use for instances created from these * properties. * The value may be {@code null}. */ @com.google.api.client.util.Key private java.util.List guestAccelerator; static { // hack to force ProGuard to consider AcceleratorConfig used, since otherwise it would be stripped out // see https://github.com/google/google-api-java-client/issues/543 com.google.api.client.util.Data.nullOf(AcceleratorConfig.class); } /** * KeyRevocationActionType of the instance. Supported options are "STOP" and "NONE". The default * value is "NONE" if it is not specified. * The value may be {@code null}. */ @com.google.api.client.util.Key private java.lang.String keyRevocationActionType; /** * The machine type to use for instances that are created from these properties. * The value may be {@code null}. */ @com.google.api.client.util.Key private java.lang.String machineType; /** * The metadata key/value pairs to assign to instances that are created from these properties. * These pairs can consist of custom metadata or predefined keys. See * https://cloud.google.com/compute/docs/metadata/overview for more information. * The value may be {@code null}. */ @com.google.api.client.util.Key private Metadata metadata; /** * Minimum cpu/platform to be used by instances. The instance may be scheduled on the specified or * newer cpu/platform. Applicable values are the friendly names of CPU platforms, such as * `minCpuPlatform: Intel Haswell` or `minCpuPlatform: Intel Sandy Bridge`. For more information, * read https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform. * The value may be {@code null}. */ @com.google.api.client.util.Key private java.lang.String minCpuPlatform; /** * An array of network access configurations for this interface. * The value may be {@code null}. */ @com.google.api.client.util.Key private java.util.List networkInterface; /** * Specifies the scheduling options for the instances that are created from these properties. * The value may be {@code null}. */ @com.google.api.client.util.Key private Scheduling scheduling; /** * A list of service accounts with specified scopes. Access tokens for these service accounts are * available to the instances that are created from these properties. Use metadata queries to * obtain the access tokens for these instances. * The value may be {@code null}. */ @com.google.api.client.util.Key private java.util.List serviceAccount; /** * The source instance used to create this backup. This can be a partial or full URL to the * resource. For example, the following are valid values: * -https://www.googleapis.com/compute/v1/projects/project/zones/zone/instances/instance * -projects/project/zones/zone/instances/instance * The value may be {@code null}. */ @com.google.api.client.util.Key private java.lang.String sourceInstance; /** * A list of tags to apply to the instances that are created from these properties. The tags * identify valid sources or targets for network firewalls. The setTags method can modify this * list of tags. Each tag within the list must comply with RFC1035 * (https://www.ietf.org/rfc/rfc1035.txt). * The value may be {@code null}. */ @com.google.api.client.util.Key private Tags tags; /** * Enables instances created based on these properties to send packets with source IP addresses * other than their own and receive packets with destination IP addresses other than their own. If * these instances will be used as an IP gateway or it will be set as the next-hop in a Route * resource, specify `true`. If unsure, leave this set to `false`. See the * https://cloud.google.com/vpc/docs/using-routes#canipforward documentation for more information. * @return value or {@code null} for none */ public java.lang.Boolean getCanIpForward() { return canIpForward; } /** * Enables instances created based on these properties to send packets with source IP addresses * other than their own and receive packets with destination IP addresses other than their own. If * these instances will be used as an IP gateway or it will be set as the next-hop in a Route * resource, specify `true`. If unsure, leave this set to `false`. See the * https://cloud.google.com/vpc/docs/using-routes#canipforward documentation for more information. * @param canIpForward canIpForward or {@code null} for none */ public ComputeInstanceBackupProperties setCanIpForward(java.lang.Boolean canIpForward) { this.canIpForward = canIpForward; return this; } /** * An optional text description for the instances that are created from these properties. * @return value or {@code null} for none */ public java.lang.String getDescription() { return description; } /** * An optional text description for the instances that are created from these properties. * @param description description or {@code null} for none */ public ComputeInstanceBackupProperties setDescription(java.lang.String description) { this.description = description; return this; } /** * An array of disks that are associated with the instances that are created from these * properties. * @return value or {@code null} for none */ public java.util.List getDisk() { return disk; } /** * An array of disks that are associated with the instances that are created from these * properties. * @param disk disk or {@code null} for none */ public ComputeInstanceBackupProperties setDisk(java.util.List disk) { this.disk = disk; return this; } /** * A list of guest accelerator cards' type and count to use for instances created from these * properties. * @return value or {@code null} for none */ public java.util.List getGuestAccelerator() { return guestAccelerator; } /** * A list of guest accelerator cards' type and count to use for instances created from these * properties. * @param guestAccelerator guestAccelerator or {@code null} for none */ public ComputeInstanceBackupProperties setGuestAccelerator(java.util.List guestAccelerator) { this.guestAccelerator = guestAccelerator; return this; } /** * KeyRevocationActionType of the instance. Supported options are "STOP" and "NONE". The default * value is "NONE" if it is not specified. * @return value or {@code null} for none */ public java.lang.String getKeyRevocationActionType() { return keyRevocationActionType; } /** * KeyRevocationActionType of the instance. Supported options are "STOP" and "NONE". The default * value is "NONE" if it is not specified. * @param keyRevocationActionType keyRevocationActionType or {@code null} for none */ public ComputeInstanceBackupProperties setKeyRevocationActionType(java.lang.String keyRevocationActionType) { this.keyRevocationActionType = keyRevocationActionType; return this; } /** * The machine type to use for instances that are created from these properties. * @return value or {@code null} for none */ public java.lang.String getMachineType() { return machineType; } /** * The machine type to use for instances that are created from these properties. * @param machineType machineType or {@code null} for none */ public ComputeInstanceBackupProperties setMachineType(java.lang.String machineType) { this.machineType = machineType; return this; } /** * The metadata key/value pairs to assign to instances that are created from these properties. * These pairs can consist of custom metadata or predefined keys. See * https://cloud.google.com/compute/docs/metadata/overview for more information. * @return value or {@code null} for none */ public Metadata getMetadata() { return metadata; } /** * The metadata key/value pairs to assign to instances that are created from these properties. * These pairs can consist of custom metadata or predefined keys. See * https://cloud.google.com/compute/docs/metadata/overview for more information. * @param metadata metadata or {@code null} for none */ public ComputeInstanceBackupProperties setMetadata(Metadata metadata) { this.metadata = metadata; return this; } /** * Minimum cpu/platform to be used by instances. The instance may be scheduled on the specified or * newer cpu/platform. Applicable values are the friendly names of CPU platforms, such as * `minCpuPlatform: Intel Haswell` or `minCpuPlatform: Intel Sandy Bridge`. For more information, * read https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform. * @return value or {@code null} for none */ public java.lang.String getMinCpuPlatform() { return minCpuPlatform; } /** * Minimum cpu/platform to be used by instances. The instance may be scheduled on the specified or * newer cpu/platform. Applicable values are the friendly names of CPU platforms, such as * `minCpuPlatform: Intel Haswell` or `minCpuPlatform: Intel Sandy Bridge`. For more information, * read https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform. * @param minCpuPlatform minCpuPlatform or {@code null} for none */ public ComputeInstanceBackupProperties setMinCpuPlatform(java.lang.String minCpuPlatform) { this.minCpuPlatform = minCpuPlatform; return this; } /** * An array of network access configurations for this interface. * @return value or {@code null} for none */ public java.util.List getNetworkInterface() { return networkInterface; } /** * An array of network access configurations for this interface. * @param networkInterface networkInterface or {@code null} for none */ public ComputeInstanceBackupProperties setNetworkInterface(java.util.List networkInterface) { this.networkInterface = networkInterface; return this; } /** * Specifies the scheduling options for the instances that are created from these properties. * @return value or {@code null} for none */ public Scheduling getScheduling() { return scheduling; } /** * Specifies the scheduling options for the instances that are created from these properties. * @param scheduling scheduling or {@code null} for none */ public ComputeInstanceBackupProperties setScheduling(Scheduling scheduling) { this.scheduling = scheduling; return this; } /** * A list of service accounts with specified scopes. Access tokens for these service accounts are * available to the instances that are created from these properties. Use metadata queries to * obtain the access tokens for these instances. * @return value or {@code null} for none */ public java.util.List getServiceAccount() { return serviceAccount; } /** * A list of service accounts with specified scopes. Access tokens for these service accounts are * available to the instances that are created from these properties. Use metadata queries to * obtain the access tokens for these instances. * @param serviceAccount serviceAccount or {@code null} for none */ public ComputeInstanceBackupProperties setServiceAccount(java.util.List serviceAccount) { this.serviceAccount = serviceAccount; return this; } /** * The source instance used to create this backup. This can be a partial or full URL to the * resource. For example, the following are valid values: * -https://www.googleapis.com/compute/v1/projects/project/zones/zone/instances/instance * -projects/project/zones/zone/instances/instance * @return value or {@code null} for none */ public java.lang.String getSourceInstance() { return sourceInstance; } /** * The source instance used to create this backup. This can be a partial or full URL to the * resource. For example, the following are valid values: * -https://www.googleapis.com/compute/v1/projects/project/zones/zone/instances/instance * -projects/project/zones/zone/instances/instance * @param sourceInstance sourceInstance or {@code null} for none */ public ComputeInstanceBackupProperties setSourceInstance(java.lang.String sourceInstance) { this.sourceInstance = sourceInstance; return this; } /** * A list of tags to apply to the instances that are created from these properties. The tags * identify valid sources or targets for network firewalls. The setTags method can modify this * list of tags. Each tag within the list must comply with RFC1035 * (https://www.ietf.org/rfc/rfc1035.txt). * @return value or {@code null} for none */ public Tags getTags() { return tags; } /** * A list of tags to apply to the instances that are created from these properties. The tags * identify valid sources or targets for network firewalls. The setTags method can modify this * list of tags. Each tag within the list must comply with RFC1035 * (https://www.ietf.org/rfc/rfc1035.txt). * @param tags tags or {@code null} for none */ public ComputeInstanceBackupProperties setTags(Tags tags) { this.tags = tags; return this; } @Override public ComputeInstanceBackupProperties set(String fieldName, Object value) { return (ComputeInstanceBackupProperties) super.set(fieldName, value); } @Override public ComputeInstanceBackupProperties clone() { return (ComputeInstanceBackupProperties) super.clone(); } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy