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

com.google.api.services.backupdr.v1.model.ComputeInstanceRestoreProperties 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;

/**
 * ComputeInstanceRestoreProperties represents Compute Engine instance properties to be overridden
 * during restore.
 *
 * 

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 ComputeInstanceRestoreProperties extends com.google.api.client.json.GenericJson { /** * Optional. Controls for advanced machine-related behavior features. * The value may be {@code null}. */ @com.google.api.client.util.Key private AdvancedMachineFeatures advancedMachineFeatures; /** * Optional. Allows this instance to send and receive packets with non-matching destination or * source IPs. * The value may be {@code null}. */ @com.google.api.client.util.Key private java.lang.Boolean canIpForward; /** * Optional. Controls Confidential compute options on the instance * The value may be {@code null}. */ @com.google.api.client.util.Key private ConfidentialInstanceConfig confidentialInstanceConfig; /** * Optional. Whether the resource should be protected against deletion. * The value may be {@code null}. */ @com.google.api.client.util.Key private java.lang.Boolean deletionProtection; /** * Optional. An optional description of this resource. Provide this property when you create the * resource. * The value may be {@code null}. */ @com.google.api.client.util.Key private java.lang.String description; /** * Optional. Array of disks associated with this instance. Persistent disks must be created before * you can assign them. * The value may be {@code null}. */ @com.google.api.client.util.Key private java.util.List disks; 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); } /** * Optional. Enables display device for the instance. * The value may be {@code null}. */ @com.google.api.client.util.Key private DisplayDevice displayDevice; /** * Optional. A list of the type and count of accelerator cards attached to the instance. * The value may be {@code null}. */ @com.google.api.client.util.Key private java.util.List guestAccelerators; 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); } /** * Optional. Specifies the hostname of the instance. The specified hostname must be RFC1035 * compliant. If hostname is not specified, the default hostname is * [INSTANCE_NAME].c.[PROJECT_ID].internal when using the global DNS, and * [INSTANCE_NAME].[ZONE].c.[PROJECT_ID].internal when using zonal DNS. * The value may be {@code null}. */ @com.google.api.client.util.Key private java.lang.String hostname; /** * Optional. Encrypts suspended data for an instance with a customer-managed encryption key. * The value may be {@code null}. */ @com.google.api.client.util.Key private CustomerEncryptionKey instanceEncryptionKey; /** * Optional. KeyRevocationActionType of the instance. * The value may be {@code null}. */ @com.google.api.client.util.Key private java.lang.String keyRevocationActionType; /** * Optional. Labels to apply to this instance. * The value may be {@code null}. */ @com.google.api.client.util.Key private java.util.Map labels; /** * Optional. Full or partial URL of the machine type resource to use for this instance. * The value may be {@code null}. */ @com.google.api.client.util.Key private java.lang.String machineType; /** * Optional. This includes custom metadata and predefined keys. * The value may be {@code null}. */ @com.google.api.client.util.Key private Metadata metadata; /** * Optional. Minimum CPU platform to use for this instance. * The value may be {@code null}. */ @com.google.api.client.util.Key private java.lang.String minCpuPlatform; /** * Required. Name of the compute instance. * The value may be {@code null}. */ @com.google.api.client.util.Key private java.lang.String name; /** * Optional. An array of network configurations for this instance. These specify how interfaces * are configured to interact with other network services, such as connecting to the internet. * Multiple interfaces are supported per instance. * The value may be {@code null}. */ @com.google.api.client.util.Key private java.util.List networkInterfaces; /** * Optional. Configure network performance such as egress bandwidth tier. * The value may be {@code null}. */ @com.google.api.client.util.Key private NetworkPerformanceConfig networkPerformanceConfig; /** * Input only. Additional params passed with the request, but not persisted as part of resource * payload. * The value may be {@code null}. */ @com.google.api.client.util.Key private InstanceParams params; /** * Optional. The private IPv6 google access type for the VM. If not specified, use * INHERIT_FROM_SUBNETWORK as default. * The value may be {@code null}. */ @com.google.api.client.util.Key private java.lang.String privateIpv6GoogleAccess; /** * Optional. Specifies the reservations that this instance can consume from. * The value may be {@code null}. */ @com.google.api.client.util.Key private AllocationAffinity reservationAffinity; /** * Optional. Resource policies applied to this instance. * The value may be {@code null}. */ @com.google.api.client.util.Key private java.util.List resourcePolicies; /** * Optional. Sets the scheduling options for this instance. * The value may be {@code null}. */ @com.google.api.client.util.Key private Scheduling scheduling; /** * Optional. A list of service accounts, with their specified scopes, authorized for this * instance. Only one service account per VM instance is supported. * The value may be {@code null}. */ @com.google.api.client.util.Key private java.util.List serviceAccounts; /** * Optional. Tags to apply to this instance. Tags are used to identify valid sources or targets * for network firewalls and are specified by the client during instance creation. * The value may be {@code null}. */ @com.google.api.client.util.Key private Tags tags; /** * Optional. Controls for advanced machine-related behavior features. * @return value or {@code null} for none */ public AdvancedMachineFeatures getAdvancedMachineFeatures() { return advancedMachineFeatures; } /** * Optional. Controls for advanced machine-related behavior features. * @param advancedMachineFeatures advancedMachineFeatures or {@code null} for none */ public ComputeInstanceRestoreProperties setAdvancedMachineFeatures(AdvancedMachineFeatures advancedMachineFeatures) { this.advancedMachineFeatures = advancedMachineFeatures; return this; } /** * Optional. Allows this instance to send and receive packets with non-matching destination or * source IPs. * @return value or {@code null} for none */ public java.lang.Boolean getCanIpForward() { return canIpForward; } /** * Optional. Allows this instance to send and receive packets with non-matching destination or * source IPs. * @param canIpForward canIpForward or {@code null} for none */ public ComputeInstanceRestoreProperties setCanIpForward(java.lang.Boolean canIpForward) { this.canIpForward = canIpForward; return this; } /** * Optional. Controls Confidential compute options on the instance * @return value or {@code null} for none */ public ConfidentialInstanceConfig getConfidentialInstanceConfig() { return confidentialInstanceConfig; } /** * Optional. Controls Confidential compute options on the instance * @param confidentialInstanceConfig confidentialInstanceConfig or {@code null} for none */ public ComputeInstanceRestoreProperties setConfidentialInstanceConfig(ConfidentialInstanceConfig confidentialInstanceConfig) { this.confidentialInstanceConfig = confidentialInstanceConfig; return this; } /** * Optional. Whether the resource should be protected against deletion. * @return value or {@code null} for none */ public java.lang.Boolean getDeletionProtection() { return deletionProtection; } /** * Optional. Whether the resource should be protected against deletion. * @param deletionProtection deletionProtection or {@code null} for none */ public ComputeInstanceRestoreProperties setDeletionProtection(java.lang.Boolean deletionProtection) { this.deletionProtection = deletionProtection; return this; } /** * Optional. An optional description of this resource. Provide this property when you create the * resource. * @return value or {@code null} for none */ public java.lang.String getDescription() { return description; } /** * Optional. An optional description of this resource. Provide this property when you create the * resource. * @param description description or {@code null} for none */ public ComputeInstanceRestoreProperties setDescription(java.lang.String description) { this.description = description; return this; } /** * Optional. Array of disks associated with this instance. Persistent disks must be created before * you can assign them. * @return value or {@code null} for none */ public java.util.List getDisks() { return disks; } /** * Optional. Array of disks associated with this instance. Persistent disks must be created before * you can assign them. * @param disks disks or {@code null} for none */ public ComputeInstanceRestoreProperties setDisks(java.util.List disks) { this.disks = disks; return this; } /** * Optional. Enables display device for the instance. * @return value or {@code null} for none */ public DisplayDevice getDisplayDevice() { return displayDevice; } /** * Optional. Enables display device for the instance. * @param displayDevice displayDevice or {@code null} for none */ public ComputeInstanceRestoreProperties setDisplayDevice(DisplayDevice displayDevice) { this.displayDevice = displayDevice; return this; } /** * Optional. A list of the type and count of accelerator cards attached to the instance. * @return value or {@code null} for none */ public java.util.List getGuestAccelerators() { return guestAccelerators; } /** * Optional. A list of the type and count of accelerator cards attached to the instance. * @param guestAccelerators guestAccelerators or {@code null} for none */ public ComputeInstanceRestoreProperties setGuestAccelerators(java.util.List guestAccelerators) { this.guestAccelerators = guestAccelerators; return this; } /** * Optional. Specifies the hostname of the instance. The specified hostname must be RFC1035 * compliant. If hostname is not specified, the default hostname is * [INSTANCE_NAME].c.[PROJECT_ID].internal when using the global DNS, and * [INSTANCE_NAME].[ZONE].c.[PROJECT_ID].internal when using zonal DNS. * @return value or {@code null} for none */ public java.lang.String getHostname() { return hostname; } /** * Optional. Specifies the hostname of the instance. The specified hostname must be RFC1035 * compliant. If hostname is not specified, the default hostname is * [INSTANCE_NAME].c.[PROJECT_ID].internal when using the global DNS, and * [INSTANCE_NAME].[ZONE].c.[PROJECT_ID].internal when using zonal DNS. * @param hostname hostname or {@code null} for none */ public ComputeInstanceRestoreProperties setHostname(java.lang.String hostname) { this.hostname = hostname; return this; } /** * Optional. Encrypts suspended data for an instance with a customer-managed encryption key. * @return value or {@code null} for none */ public CustomerEncryptionKey getInstanceEncryptionKey() { return instanceEncryptionKey; } /** * Optional. Encrypts suspended data for an instance with a customer-managed encryption key. * @param instanceEncryptionKey instanceEncryptionKey or {@code null} for none */ public ComputeInstanceRestoreProperties setInstanceEncryptionKey(CustomerEncryptionKey instanceEncryptionKey) { this.instanceEncryptionKey = instanceEncryptionKey; return this; } /** * Optional. KeyRevocationActionType of the instance. * @return value or {@code null} for none */ public java.lang.String getKeyRevocationActionType() { return keyRevocationActionType; } /** * Optional. KeyRevocationActionType of the instance. * @param keyRevocationActionType keyRevocationActionType or {@code null} for none */ public ComputeInstanceRestoreProperties setKeyRevocationActionType(java.lang.String keyRevocationActionType) { this.keyRevocationActionType = keyRevocationActionType; return this; } /** * Optional. Labels to apply to this instance. * @return value or {@code null} for none */ public java.util.Map getLabels() { return labels; } /** * Optional. Labels to apply to this instance. * @param labels labels or {@code null} for none */ public ComputeInstanceRestoreProperties setLabels(java.util.Map labels) { this.labels = labels; return this; } /** * Optional. Full or partial URL of the machine type resource to use for this instance. * @return value or {@code null} for none */ public java.lang.String getMachineType() { return machineType; } /** * Optional. Full or partial URL of the machine type resource to use for this instance. * @param machineType machineType or {@code null} for none */ public ComputeInstanceRestoreProperties setMachineType(java.lang.String machineType) { this.machineType = machineType; return this; } /** * Optional. This includes custom metadata and predefined keys. * @return value or {@code null} for none */ public Metadata getMetadata() { return metadata; } /** * Optional. This includes custom metadata and predefined keys. * @param metadata metadata or {@code null} for none */ public ComputeInstanceRestoreProperties setMetadata(Metadata metadata) { this.metadata = metadata; return this; } /** * Optional. Minimum CPU platform to use for this instance. * @return value or {@code null} for none */ public java.lang.String getMinCpuPlatform() { return minCpuPlatform; } /** * Optional. Minimum CPU platform to use for this instance. * @param minCpuPlatform minCpuPlatform or {@code null} for none */ public ComputeInstanceRestoreProperties setMinCpuPlatform(java.lang.String minCpuPlatform) { this.minCpuPlatform = minCpuPlatform; return this; } /** * Required. Name of the compute instance. * @return value or {@code null} for none */ public java.lang.String getName() { return name; } /** * Required. Name of the compute instance. * @param name name or {@code null} for none */ public ComputeInstanceRestoreProperties setName(java.lang.String name) { this.name = name; return this; } /** * Optional. An array of network configurations for this instance. These specify how interfaces * are configured to interact with other network services, such as connecting to the internet. * Multiple interfaces are supported per instance. * @return value or {@code null} for none */ public java.util.List getNetworkInterfaces() { return networkInterfaces; } /** * Optional. An array of network configurations for this instance. These specify how interfaces * are configured to interact with other network services, such as connecting to the internet. * Multiple interfaces are supported per instance. * @param networkInterfaces networkInterfaces or {@code null} for none */ public ComputeInstanceRestoreProperties setNetworkInterfaces(java.util.List networkInterfaces) { this.networkInterfaces = networkInterfaces; return this; } /** * Optional. Configure network performance such as egress bandwidth tier. * @return value or {@code null} for none */ public NetworkPerformanceConfig getNetworkPerformanceConfig() { return networkPerformanceConfig; } /** * Optional. Configure network performance such as egress bandwidth tier. * @param networkPerformanceConfig networkPerformanceConfig or {@code null} for none */ public ComputeInstanceRestoreProperties setNetworkPerformanceConfig(NetworkPerformanceConfig networkPerformanceConfig) { this.networkPerformanceConfig = networkPerformanceConfig; return this; } /** * Input only. Additional params passed with the request, but not persisted as part of resource * payload. * @return value or {@code null} for none */ public InstanceParams getParams() { return params; } /** * Input only. Additional params passed with the request, but not persisted as part of resource * payload. * @param params params or {@code null} for none */ public ComputeInstanceRestoreProperties setParams(InstanceParams params) { this.params = params; return this; } /** * Optional. The private IPv6 google access type for the VM. If not specified, use * INHERIT_FROM_SUBNETWORK as default. * @return value or {@code null} for none */ public java.lang.String getPrivateIpv6GoogleAccess() { return privateIpv6GoogleAccess; } /** * Optional. The private IPv6 google access type for the VM. If not specified, use * INHERIT_FROM_SUBNETWORK as default. * @param privateIpv6GoogleAccess privateIpv6GoogleAccess or {@code null} for none */ public ComputeInstanceRestoreProperties setPrivateIpv6GoogleAccess(java.lang.String privateIpv6GoogleAccess) { this.privateIpv6GoogleAccess = privateIpv6GoogleAccess; return this; } /** * Optional. Specifies the reservations that this instance can consume from. * @return value or {@code null} for none */ public AllocationAffinity getReservationAffinity() { return reservationAffinity; } /** * Optional. Specifies the reservations that this instance can consume from. * @param reservationAffinity reservationAffinity or {@code null} for none */ public ComputeInstanceRestoreProperties setReservationAffinity(AllocationAffinity reservationAffinity) { this.reservationAffinity = reservationAffinity; return this; } /** * Optional. Resource policies applied to this instance. * @return value or {@code null} for none */ public java.util.List getResourcePolicies() { return resourcePolicies; } /** * Optional. Resource policies applied to this instance. * @param resourcePolicies resourcePolicies or {@code null} for none */ public ComputeInstanceRestoreProperties setResourcePolicies(java.util.List resourcePolicies) { this.resourcePolicies = resourcePolicies; return this; } /** * Optional. Sets the scheduling options for this instance. * @return value or {@code null} for none */ public Scheduling getScheduling() { return scheduling; } /** * Optional. Sets the scheduling options for this instance. * @param scheduling scheduling or {@code null} for none */ public ComputeInstanceRestoreProperties setScheduling(Scheduling scheduling) { this.scheduling = scheduling; return this; } /** * Optional. A list of service accounts, with their specified scopes, authorized for this * instance. Only one service account per VM instance is supported. * @return value or {@code null} for none */ public java.util.List getServiceAccounts() { return serviceAccounts; } /** * Optional. A list of service accounts, with their specified scopes, authorized for this * instance. Only one service account per VM instance is supported. * @param serviceAccounts serviceAccounts or {@code null} for none */ public ComputeInstanceRestoreProperties setServiceAccounts(java.util.List serviceAccounts) { this.serviceAccounts = serviceAccounts; return this; } /** * Optional. Tags to apply to this instance. Tags are used to identify valid sources or targets * for network firewalls and are specified by the client during instance creation. * @return value or {@code null} for none */ public Tags getTags() { return tags; } /** * Optional. Tags to apply to this instance. Tags are used to identify valid sources or targets * for network firewalls and are specified by the client during instance creation. * @param tags tags or {@code null} for none */ public ComputeInstanceRestoreProperties setTags(Tags tags) { this.tags = tags; return this; } @Override public ComputeInstanceRestoreProperties set(String fieldName, Object value) { return (ComputeInstanceRestoreProperties) super.set(fieldName, value); } @Override public ComputeInstanceRestoreProperties clone() { return (ComputeInstanceRestoreProperties) super.clone(); } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy