com.google.api.services.composer.v1.model.PrivateEnvironmentConfig Maven / Gradle / Ivy
The 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.composer.v1.model;
/**
* The configuration information for configuring a Private IP Cloud Composer environment.
*
* 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 Composer 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 PrivateEnvironmentConfig extends com.google.api.client.json.GenericJson {
/**
* Optional. When specified, the environment will use Private Service Connect instead of VPC
* peerings to connect to Cloud SQL in the Tenant Project, and the PSC endpoint in the Customer
* Project will use an IP address from this subnetwork.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private java.lang.String cloudComposerConnectionSubnetwork;
/**
* Optional. The CIDR block from which IP range for Cloud Composer Network in tenant project will
* be reserved. Needs to be disjoint from private_cluster_config.master_ipv4_cidr_block and
* cloud_sql_ipv4_cidr_block. This field is supported for Cloud Composer environments in versions
* composer-2.*.*-airflow-*.*.* and newer.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private java.lang.String cloudComposerNetworkIpv4CidrBlock;
/**
* Output only. The IP range reserved for the tenant project's Cloud Composer network. This field
* is supported for Cloud Composer environments in versions composer-2.*.*-airflow-*.*.* and
* newer.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private java.lang.String cloudComposerNetworkIpv4ReservedRange;
/**
* Optional. The CIDR block from which IP range in tenant project will be reserved for Cloud SQL.
* Needs to be disjoint from `web_server_ipv4_cidr_block`.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private java.lang.String cloudSqlIpv4CidrBlock;
/**
* Optional. If `true`, builds performed during operations that install Python packages have only
* private connectivity to Google services (including Artifact Registry) and VPC network (if
* either `NodeConfig.network` and `NodeConfig.subnetwork` fields or
* `NodeConfig.composer_network_attachment` field are specified). If `false`, the builds also have
* access to the internet. This field is supported for Cloud Composer environments in versions
* composer-3.*.*-airflow-*.*.* and newer.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private java.lang.Boolean enablePrivateBuildsOnly;
/**
* Optional. If `true`, a Private IP Cloud Composer environment is created. If this field is set
* to true, `IPAllocationPolicy.use_ip_aliases` must be set to true for Cloud Composer
* environments in versions composer-1.*.*-airflow-*.*.*.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private java.lang.Boolean enablePrivateEnvironment;
/**
* Optional. When enabled, IPs from public (non-RFC1918) ranges can be used for
* `IPAllocationPolicy.cluster_ipv4_cidr_block` and `IPAllocationPolicy.service_ipv4_cidr_block`.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private java.lang.Boolean enablePrivatelyUsedPublicIps;
/**
* Optional. Configuration for the network connections configuration in the environment.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private NetworkingConfig networkingConfig;
/**
* Optional. Configuration for the private GKE cluster for a Private IP Cloud Composer
* environment.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private PrivateClusterConfig privateClusterConfig;
/**
* Optional. The CIDR block from which IP range for web server will be reserved. Needs to be
* disjoint from `private_cluster_config.master_ipv4_cidr_block` and `cloud_sql_ipv4_cidr_block`.
* This field is supported for Cloud Composer environments in versions
* composer-1.*.*-airflow-*.*.*.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private java.lang.String webServerIpv4CidrBlock;
/**
* Output only. The IP range reserved for the tenant project's App Engine VMs. This field is
* supported for Cloud Composer environments in versions composer-1.*.*-airflow-*.*.*.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private java.lang.String webServerIpv4ReservedRange;
/**
* Optional. When specified, the environment will use Private Service Connect instead of VPC
* peerings to connect to Cloud SQL in the Tenant Project, and the PSC endpoint in the Customer
* Project will use an IP address from this subnetwork.
* @return value or {@code null} for none
*/
public java.lang.String getCloudComposerConnectionSubnetwork() {
return cloudComposerConnectionSubnetwork;
}
/**
* Optional. When specified, the environment will use Private Service Connect instead of VPC
* peerings to connect to Cloud SQL in the Tenant Project, and the PSC endpoint in the Customer
* Project will use an IP address from this subnetwork.
* @param cloudComposerConnectionSubnetwork cloudComposerConnectionSubnetwork or {@code null} for none
*/
public PrivateEnvironmentConfig setCloudComposerConnectionSubnetwork(java.lang.String cloudComposerConnectionSubnetwork) {
this.cloudComposerConnectionSubnetwork = cloudComposerConnectionSubnetwork;
return this;
}
/**
* Optional. The CIDR block from which IP range for Cloud Composer Network in tenant project will
* be reserved. Needs to be disjoint from private_cluster_config.master_ipv4_cidr_block and
* cloud_sql_ipv4_cidr_block. This field is supported for Cloud Composer environments in versions
* composer-2.*.*-airflow-*.*.* and newer.
* @return value or {@code null} for none
*/
public java.lang.String getCloudComposerNetworkIpv4CidrBlock() {
return cloudComposerNetworkIpv4CidrBlock;
}
/**
* Optional. The CIDR block from which IP range for Cloud Composer Network in tenant project will
* be reserved. Needs to be disjoint from private_cluster_config.master_ipv4_cidr_block and
* cloud_sql_ipv4_cidr_block. This field is supported for Cloud Composer environments in versions
* composer-2.*.*-airflow-*.*.* and newer.
* @param cloudComposerNetworkIpv4CidrBlock cloudComposerNetworkIpv4CidrBlock or {@code null} for none
*/
public PrivateEnvironmentConfig setCloudComposerNetworkIpv4CidrBlock(java.lang.String cloudComposerNetworkIpv4CidrBlock) {
this.cloudComposerNetworkIpv4CidrBlock = cloudComposerNetworkIpv4CidrBlock;
return this;
}
/**
* Output only. The IP range reserved for the tenant project's Cloud Composer network. This field
* is supported for Cloud Composer environments in versions composer-2.*.*-airflow-*.*.* and
* newer.
* @return value or {@code null} for none
*/
public java.lang.String getCloudComposerNetworkIpv4ReservedRange() {
return cloudComposerNetworkIpv4ReservedRange;
}
/**
* Output only. The IP range reserved for the tenant project's Cloud Composer network. This field
* is supported for Cloud Composer environments in versions composer-2.*.*-airflow-*.*.* and
* newer.
* @param cloudComposerNetworkIpv4ReservedRange cloudComposerNetworkIpv4ReservedRange or {@code null} for none
*/
public PrivateEnvironmentConfig setCloudComposerNetworkIpv4ReservedRange(java.lang.String cloudComposerNetworkIpv4ReservedRange) {
this.cloudComposerNetworkIpv4ReservedRange = cloudComposerNetworkIpv4ReservedRange;
return this;
}
/**
* Optional. The CIDR block from which IP range in tenant project will be reserved for Cloud SQL.
* Needs to be disjoint from `web_server_ipv4_cidr_block`.
* @return value or {@code null} for none
*/
public java.lang.String getCloudSqlIpv4CidrBlock() {
return cloudSqlIpv4CidrBlock;
}
/**
* Optional. The CIDR block from which IP range in tenant project will be reserved for Cloud SQL.
* Needs to be disjoint from `web_server_ipv4_cidr_block`.
* @param cloudSqlIpv4CidrBlock cloudSqlIpv4CidrBlock or {@code null} for none
*/
public PrivateEnvironmentConfig setCloudSqlIpv4CidrBlock(java.lang.String cloudSqlIpv4CidrBlock) {
this.cloudSqlIpv4CidrBlock = cloudSqlIpv4CidrBlock;
return this;
}
/**
* Optional. If `true`, builds performed during operations that install Python packages have only
* private connectivity to Google services (including Artifact Registry) and VPC network (if
* either `NodeConfig.network` and `NodeConfig.subnetwork` fields or
* `NodeConfig.composer_network_attachment` field are specified). If `false`, the builds also have
* access to the internet. This field is supported for Cloud Composer environments in versions
* composer-3.*.*-airflow-*.*.* and newer.
* @return value or {@code null} for none
*/
public java.lang.Boolean getEnablePrivateBuildsOnly() {
return enablePrivateBuildsOnly;
}
/**
* Optional. If `true`, builds performed during operations that install Python packages have only
* private connectivity to Google services (including Artifact Registry) and VPC network (if
* either `NodeConfig.network` and `NodeConfig.subnetwork` fields or
* `NodeConfig.composer_network_attachment` field are specified). If `false`, the builds also have
* access to the internet. This field is supported for Cloud Composer environments in versions
* composer-3.*.*-airflow-*.*.* and newer.
* @param enablePrivateBuildsOnly enablePrivateBuildsOnly or {@code null} for none
*/
public PrivateEnvironmentConfig setEnablePrivateBuildsOnly(java.lang.Boolean enablePrivateBuildsOnly) {
this.enablePrivateBuildsOnly = enablePrivateBuildsOnly;
return this;
}
/**
* Optional. If `true`, a Private IP Cloud Composer environment is created. If this field is set
* to true, `IPAllocationPolicy.use_ip_aliases` must be set to true for Cloud Composer
* environments in versions composer-1.*.*-airflow-*.*.*.
* @return value or {@code null} for none
*/
public java.lang.Boolean getEnablePrivateEnvironment() {
return enablePrivateEnvironment;
}
/**
* Optional. If `true`, a Private IP Cloud Composer environment is created. If this field is set
* to true, `IPAllocationPolicy.use_ip_aliases` must be set to true for Cloud Composer
* environments in versions composer-1.*.*-airflow-*.*.*.
* @param enablePrivateEnvironment enablePrivateEnvironment or {@code null} for none
*/
public PrivateEnvironmentConfig setEnablePrivateEnvironment(java.lang.Boolean enablePrivateEnvironment) {
this.enablePrivateEnvironment = enablePrivateEnvironment;
return this;
}
/**
* Optional. When enabled, IPs from public (non-RFC1918) ranges can be used for
* `IPAllocationPolicy.cluster_ipv4_cidr_block` and `IPAllocationPolicy.service_ipv4_cidr_block`.
* @return value or {@code null} for none
*/
public java.lang.Boolean getEnablePrivatelyUsedPublicIps() {
return enablePrivatelyUsedPublicIps;
}
/**
* Optional. When enabled, IPs from public (non-RFC1918) ranges can be used for
* `IPAllocationPolicy.cluster_ipv4_cidr_block` and `IPAllocationPolicy.service_ipv4_cidr_block`.
* @param enablePrivatelyUsedPublicIps enablePrivatelyUsedPublicIps or {@code null} for none
*/
public PrivateEnvironmentConfig setEnablePrivatelyUsedPublicIps(java.lang.Boolean enablePrivatelyUsedPublicIps) {
this.enablePrivatelyUsedPublicIps = enablePrivatelyUsedPublicIps;
return this;
}
/**
* Optional. Configuration for the network connections configuration in the environment.
* @return value or {@code null} for none
*/
public NetworkingConfig getNetworkingConfig() {
return networkingConfig;
}
/**
* Optional. Configuration for the network connections configuration in the environment.
* @param networkingConfig networkingConfig or {@code null} for none
*/
public PrivateEnvironmentConfig setNetworkingConfig(NetworkingConfig networkingConfig) {
this.networkingConfig = networkingConfig;
return this;
}
/**
* Optional. Configuration for the private GKE cluster for a Private IP Cloud Composer
* environment.
* @return value or {@code null} for none
*/
public PrivateClusterConfig getPrivateClusterConfig() {
return privateClusterConfig;
}
/**
* Optional. Configuration for the private GKE cluster for a Private IP Cloud Composer
* environment.
* @param privateClusterConfig privateClusterConfig or {@code null} for none
*/
public PrivateEnvironmentConfig setPrivateClusterConfig(PrivateClusterConfig privateClusterConfig) {
this.privateClusterConfig = privateClusterConfig;
return this;
}
/**
* Optional. The CIDR block from which IP range for web server will be reserved. Needs to be
* disjoint from `private_cluster_config.master_ipv4_cidr_block` and `cloud_sql_ipv4_cidr_block`.
* This field is supported for Cloud Composer environments in versions
* composer-1.*.*-airflow-*.*.*.
* @return value or {@code null} for none
*/
public java.lang.String getWebServerIpv4CidrBlock() {
return webServerIpv4CidrBlock;
}
/**
* Optional. The CIDR block from which IP range for web server will be reserved. Needs to be
* disjoint from `private_cluster_config.master_ipv4_cidr_block` and `cloud_sql_ipv4_cidr_block`.
* This field is supported for Cloud Composer environments in versions
* composer-1.*.*-airflow-*.*.*.
* @param webServerIpv4CidrBlock webServerIpv4CidrBlock or {@code null} for none
*/
public PrivateEnvironmentConfig setWebServerIpv4CidrBlock(java.lang.String webServerIpv4CidrBlock) {
this.webServerIpv4CidrBlock = webServerIpv4CidrBlock;
return this;
}
/**
* Output only. The IP range reserved for the tenant project's App Engine VMs. This field is
* supported for Cloud Composer environments in versions composer-1.*.*-airflow-*.*.*.
* @return value or {@code null} for none
*/
public java.lang.String getWebServerIpv4ReservedRange() {
return webServerIpv4ReservedRange;
}
/**
* Output only. The IP range reserved for the tenant project's App Engine VMs. This field is
* supported for Cloud Composer environments in versions composer-1.*.*-airflow-*.*.*.
* @param webServerIpv4ReservedRange webServerIpv4ReservedRange or {@code null} for none
*/
public PrivateEnvironmentConfig setWebServerIpv4ReservedRange(java.lang.String webServerIpv4ReservedRange) {
this.webServerIpv4ReservedRange = webServerIpv4ReservedRange;
return this;
}
@Override
public PrivateEnvironmentConfig set(String fieldName, Object value) {
return (PrivateEnvironmentConfig) super.set(fieldName, value);
}
@Override
public PrivateEnvironmentConfig clone() {
return (PrivateEnvironmentConfig) super.clone();
}
}