// *** WARNING: this file was generated by pulumi-java-gen. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***

package com.pulumi.gcp.vpcaccess;

import com.pulumi.core.Output;
import com.pulumi.core.TypeShape;
import com.pulumi.deployment.Deployment;
import com.pulumi.deployment.InvokeOptions;
import com.pulumi.gcp.Utilities;
import com.pulumi.gcp.vpcaccess.inputs.GetConnectorArgs;
import com.pulumi.gcp.vpcaccess.inputs.GetConnectorPlainArgs;
import com.pulumi.gcp.vpcaccess.outputs.GetConnectorResult;
import java.util.concurrent.CompletableFuture;

public final class VpcaccessFunctions {
    /**
     * Get a Serverless VPC Access connector.
     * 
     * To get more information about Connector, see:
     * 
     * * [API documentation](https://cloud.google.com/vpc/docs/reference/vpcaccess/rest/v1/projects.locations.connectors)
     * * How-to Guides
     *     * [Configuring Serverless VPC Access](https://cloud.google.com/vpc/docs/configure-serverless-vpc-access)
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.gcp.vpcaccess.VpcaccessFunctions;
     * import com.pulumi.gcp.vpcaccess.inputs.GetConnectorArgs;
     * import com.pulumi.gcp.vpcaccess.Connector;
     * import com.pulumi.gcp.vpcaccess.ConnectorArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var sample = VpcaccessFunctions.getConnector(GetConnectorArgs.builder()
     *             .name(&#34;vpc-con&#34;)
     *             .build());
     * 
     *         var connector = new Connector(&#34;connector&#34;, ConnectorArgs.builder()        
     *             .ipCidrRange(&#34;10.8.0.0/28&#34;)
     *             .network(&#34;default&#34;)
     *             .region(&#34;us-central1&#34;)
     *             .build());
     * 
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetConnectorResult> getConnector(GetConnectorArgs args) {
        return getConnector(args, InvokeOptions.Empty);
    }
    /**
     * Get a Serverless VPC Access connector.
     * 
     * To get more information about Connector, see:
     * 
     * * [API documentation](https://cloud.google.com/vpc/docs/reference/vpcaccess/rest/v1/projects.locations.connectors)
     * * How-to Guides
     *     * [Configuring Serverless VPC Access](https://cloud.google.com/vpc/docs/configure-serverless-vpc-access)
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.gcp.vpcaccess.VpcaccessFunctions;
     * import com.pulumi.gcp.vpcaccess.inputs.GetConnectorArgs;
     * import com.pulumi.gcp.vpcaccess.Connector;
     * import com.pulumi.gcp.vpcaccess.ConnectorArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var sample = VpcaccessFunctions.getConnector(GetConnectorArgs.builder()
     *             .name(&#34;vpc-con&#34;)
     *             .build());
     * 
     *         var connector = new Connector(&#34;connector&#34;, ConnectorArgs.builder()        
     *             .ipCidrRange(&#34;10.8.0.0/28&#34;)
     *             .network(&#34;default&#34;)
     *             .region(&#34;us-central1&#34;)
     *             .build());
     * 
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetConnectorResult> getConnectorPlain(GetConnectorPlainArgs args) {
        return getConnectorPlain(args, InvokeOptions.Empty);
    }
    /**
     * Get a Serverless VPC Access connector.
     * 
     * To get more information about Connector, see:
     * 
     * * [API documentation](https://cloud.google.com/vpc/docs/reference/vpcaccess/rest/v1/projects.locations.connectors)
     * * How-to Guides
     *     * [Configuring Serverless VPC Access](https://cloud.google.com/vpc/docs/configure-serverless-vpc-access)
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.gcp.vpcaccess.VpcaccessFunctions;
     * import com.pulumi.gcp.vpcaccess.inputs.GetConnectorArgs;
     * import com.pulumi.gcp.vpcaccess.Connector;
     * import com.pulumi.gcp.vpcaccess.ConnectorArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var sample = VpcaccessFunctions.getConnector(GetConnectorArgs.builder()
     *             .name(&#34;vpc-con&#34;)
     *             .build());
     * 
     *         var connector = new Connector(&#34;connector&#34;, ConnectorArgs.builder()        
     *             .ipCidrRange(&#34;10.8.0.0/28&#34;)
     *             .network(&#34;default&#34;)
     *             .region(&#34;us-central1&#34;)
     *             .build());
     * 
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetConnectorResult> getConnector(GetConnectorArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("gcp:vpcaccess/getConnector:getConnector", TypeShape.of(GetConnectorResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Get a Serverless VPC Access connector.
     * 
     * To get more information about Connector, see:
     * 
     * * [API documentation](https://cloud.google.com/vpc/docs/reference/vpcaccess/rest/v1/projects.locations.connectors)
     * * How-to Guides
     *     * [Configuring Serverless VPC Access](https://cloud.google.com/vpc/docs/configure-serverless-vpc-access)
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.gcp.vpcaccess.VpcaccessFunctions;
     * import com.pulumi.gcp.vpcaccess.inputs.GetConnectorArgs;
     * import com.pulumi.gcp.vpcaccess.Connector;
     * import com.pulumi.gcp.vpcaccess.ConnectorArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var sample = VpcaccessFunctions.getConnector(GetConnectorArgs.builder()
     *             .name(&#34;vpc-con&#34;)
     *             .build());
     * 
     *         var connector = new Connector(&#34;connector&#34;, ConnectorArgs.builder()        
     *             .ipCidrRange(&#34;10.8.0.0/28&#34;)
     *             .network(&#34;default&#34;)
     *             .region(&#34;us-central1&#34;)
     *             .build());
     * 
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetConnectorResult> getConnectorPlain(GetConnectorPlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("gcp:vpcaccess/getConnector:getConnector", TypeShape.of(GetConnectorResult.class), args, Utilities.withVersion(options));
    }
}
