// *** 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.azure.appservice;

import com.pulumi.azure.Utilities;
import com.pulumi.azure.appservice.inputs.GetAppServiceArgs;
import com.pulumi.azure.appservice.inputs.GetAppServiceEnvironmentArgs;
import com.pulumi.azure.appservice.inputs.GetAppServiceEnvironmentPlainArgs;
import com.pulumi.azure.appservice.inputs.GetAppServicePlainArgs;
import com.pulumi.azure.appservice.inputs.GetAppServicePlanArgs;
import com.pulumi.azure.appservice.inputs.GetAppServicePlanPlainArgs;
import com.pulumi.azure.appservice.inputs.GetCertificateArgs;
import com.pulumi.azure.appservice.inputs.GetCertificateOrderArgs;
import com.pulumi.azure.appservice.inputs.GetCertificateOrderPlainArgs;
import com.pulumi.azure.appservice.inputs.GetCertificatePlainArgs;
import com.pulumi.azure.appservice.inputs.GetEnvironmentV3Args;
import com.pulumi.azure.appservice.inputs.GetEnvironmentV3PlainArgs;
import com.pulumi.azure.appservice.inputs.GetFunctionAppArgs;
import com.pulumi.azure.appservice.inputs.GetFunctionAppHostKeysArgs;
import com.pulumi.azure.appservice.inputs.GetFunctionAppHostKeysPlainArgs;
import com.pulumi.azure.appservice.inputs.GetFunctionAppPlainArgs;
import com.pulumi.azure.appservice.inputs.GetLinuxFunctionAppArgs;
import com.pulumi.azure.appservice.inputs.GetLinuxFunctionAppPlainArgs;
import com.pulumi.azure.appservice.inputs.GetLinuxWebAppArgs;
import com.pulumi.azure.appservice.inputs.GetLinuxWebAppPlainArgs;
import com.pulumi.azure.appservice.inputs.GetServicePlanArgs;
import com.pulumi.azure.appservice.inputs.GetServicePlanPlainArgs;
import com.pulumi.azure.appservice.inputs.GetSourceControlTokenArgs;
import com.pulumi.azure.appservice.inputs.GetSourceControlTokenPlainArgs;
import com.pulumi.azure.appservice.inputs.GetWindowsFunctionAppArgs;
import com.pulumi.azure.appservice.inputs.GetWindowsFunctionAppPlainArgs;
import com.pulumi.azure.appservice.inputs.GetWindowsWebAppArgs;
import com.pulumi.azure.appservice.inputs.GetWindowsWebAppPlainArgs;
import com.pulumi.azure.appservice.outputs.GetAppServiceEnvironmentResult;
import com.pulumi.azure.appservice.outputs.GetAppServicePlanResult;
import com.pulumi.azure.appservice.outputs.GetAppServiceResult;
import com.pulumi.azure.appservice.outputs.GetCertificateOrderResult;
import com.pulumi.azure.appservice.outputs.GetCertificateResult;
import com.pulumi.azure.appservice.outputs.GetEnvironmentV3Result;
import com.pulumi.azure.appservice.outputs.GetFunctionAppHostKeysResult;
import com.pulumi.azure.appservice.outputs.GetFunctionAppResult;
import com.pulumi.azure.appservice.outputs.GetLinuxFunctionAppResult;
import com.pulumi.azure.appservice.outputs.GetLinuxWebAppResult;
import com.pulumi.azure.appservice.outputs.GetServicePlanResult;
import com.pulumi.azure.appservice.outputs.GetSourceControlTokenResult;
import com.pulumi.azure.appservice.outputs.GetWindowsFunctionAppResult;
import com.pulumi.azure.appservice.outputs.GetWindowsWebAppResult;
import com.pulumi.core.Output;
import com.pulumi.core.TypeShape;
import com.pulumi.deployment.Deployment;
import com.pulumi.deployment.InvokeOptions;
import java.util.concurrent.CompletableFuture;

public final class AppserviceFunctions {
    /**
     * Use this data source to access information about an existing App Service.
     * 
     * !&gt; **Note:** The `azure.appservice.AppService` data source is deprecated in version 3.0 of the AzureRM provider and will be removed in version 4.0. Please use the `azure.appservice.LinuxWebApp` data sources instead.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetAppServiceArgs;
     * 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 example = AppserviceFunctions.getAppService(GetAppServiceArgs.builder()
     *             .name(&#34;search-app-service&#34;)
     *             .resourceGroupName(&#34;search-service&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;appServiceId&#34;, example.applyValue(getAppServiceResult -&gt; getAppServiceResult.id()));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetAppServiceResult> getAppService(GetAppServiceArgs args) {
        return getAppService(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to access information about an existing App Service.
     * 
     * !&gt; **Note:** The `azure.appservice.AppService` data source is deprecated in version 3.0 of the AzureRM provider and will be removed in version 4.0. Please use the `azure.appservice.LinuxWebApp` data sources instead.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetAppServiceArgs;
     * 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 example = AppserviceFunctions.getAppService(GetAppServiceArgs.builder()
     *             .name(&#34;search-app-service&#34;)
     *             .resourceGroupName(&#34;search-service&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;appServiceId&#34;, example.applyValue(getAppServiceResult -&gt; getAppServiceResult.id()));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetAppServiceResult> getAppServicePlain(GetAppServicePlainArgs args) {
        return getAppServicePlain(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to access information about an existing App Service.
     * 
     * !&gt; **Note:** The `azure.appservice.AppService` data source is deprecated in version 3.0 of the AzureRM provider and will be removed in version 4.0. Please use the `azure.appservice.LinuxWebApp` data sources instead.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetAppServiceArgs;
     * 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 example = AppserviceFunctions.getAppService(GetAppServiceArgs.builder()
     *             .name(&#34;search-app-service&#34;)
     *             .resourceGroupName(&#34;search-service&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;appServiceId&#34;, example.applyValue(getAppServiceResult -&gt; getAppServiceResult.id()));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetAppServiceResult> getAppService(GetAppServiceArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("azure:appservice/getAppService:getAppService", TypeShape.of(GetAppServiceResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to access information about an existing App Service.
     * 
     * !&gt; **Note:** The `azure.appservice.AppService` data source is deprecated in version 3.0 of the AzureRM provider and will be removed in version 4.0. Please use the `azure.appservice.LinuxWebApp` data sources instead.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetAppServiceArgs;
     * 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 example = AppserviceFunctions.getAppService(GetAppServiceArgs.builder()
     *             .name(&#34;search-app-service&#34;)
     *             .resourceGroupName(&#34;search-service&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;appServiceId&#34;, example.applyValue(getAppServiceResult -&gt; getAppServiceResult.id()));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetAppServiceResult> getAppServicePlain(GetAppServicePlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("azure:appservice/getAppService:getAppService", TypeShape.of(GetAppServiceResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to access information about an existing App Service Environment.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetAppServiceEnvironmentArgs;
     * 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 example = AppserviceFunctions.getAppServiceEnvironment(GetAppServiceEnvironmentArgs.builder()
     *             .name(&#34;existing-ase&#34;)
     *             .resourceGroupName(&#34;existing-rg&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;id&#34;, example.applyValue(getAppServiceEnvironmentResult -&gt; getAppServiceEnvironmentResult.id()));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetAppServiceEnvironmentResult> getAppServiceEnvironment(GetAppServiceEnvironmentArgs args) {
        return getAppServiceEnvironment(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to access information about an existing App Service Environment.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetAppServiceEnvironmentArgs;
     * 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 example = AppserviceFunctions.getAppServiceEnvironment(GetAppServiceEnvironmentArgs.builder()
     *             .name(&#34;existing-ase&#34;)
     *             .resourceGroupName(&#34;existing-rg&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;id&#34;, example.applyValue(getAppServiceEnvironmentResult -&gt; getAppServiceEnvironmentResult.id()));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetAppServiceEnvironmentResult> getAppServiceEnvironmentPlain(GetAppServiceEnvironmentPlainArgs args) {
        return getAppServiceEnvironmentPlain(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to access information about an existing App Service Environment.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetAppServiceEnvironmentArgs;
     * 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 example = AppserviceFunctions.getAppServiceEnvironment(GetAppServiceEnvironmentArgs.builder()
     *             .name(&#34;existing-ase&#34;)
     *             .resourceGroupName(&#34;existing-rg&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;id&#34;, example.applyValue(getAppServiceEnvironmentResult -&gt; getAppServiceEnvironmentResult.id()));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetAppServiceEnvironmentResult> getAppServiceEnvironment(GetAppServiceEnvironmentArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("azure:appservice/getAppServiceEnvironment:getAppServiceEnvironment", TypeShape.of(GetAppServiceEnvironmentResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to access information about an existing App Service Environment.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetAppServiceEnvironmentArgs;
     * 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 example = AppserviceFunctions.getAppServiceEnvironment(GetAppServiceEnvironmentArgs.builder()
     *             .name(&#34;existing-ase&#34;)
     *             .resourceGroupName(&#34;existing-rg&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;id&#34;, example.applyValue(getAppServiceEnvironmentResult -&gt; getAppServiceEnvironmentResult.id()));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetAppServiceEnvironmentResult> getAppServiceEnvironmentPlain(GetAppServiceEnvironmentPlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("azure:appservice/getAppServiceEnvironment:getAppServiceEnvironment", TypeShape.of(GetAppServiceEnvironmentResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to access information about an existing App Service Plan (formerly known as a `Server Farm`).
     * 
     * !&gt; **Note:** The `azure.appservice.Plan` data source is deprecated in version 3.0 of the AzureRM provider and will be removed in version 4.0. Please use the `azure.appservice.ServicePlan` data source instead.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetAppServicePlanArgs;
     * 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 example = AppserviceFunctions.getAppServicePlan(GetAppServicePlanArgs.builder()
     *             .name(&#34;search-app-service-plan&#34;)
     *             .resourceGroupName(&#34;search-service&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;appServicePlanId&#34;, example.applyValue(getAppServicePlanResult -&gt; getAppServicePlanResult.id()));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetAppServicePlanResult> getAppServicePlan(GetAppServicePlanArgs args) {
        return getAppServicePlan(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to access information about an existing App Service Plan (formerly known as a `Server Farm`).
     * 
     * !&gt; **Note:** The `azure.appservice.Plan` data source is deprecated in version 3.0 of the AzureRM provider and will be removed in version 4.0. Please use the `azure.appservice.ServicePlan` data source instead.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetAppServicePlanArgs;
     * 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 example = AppserviceFunctions.getAppServicePlan(GetAppServicePlanArgs.builder()
     *             .name(&#34;search-app-service-plan&#34;)
     *             .resourceGroupName(&#34;search-service&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;appServicePlanId&#34;, example.applyValue(getAppServicePlanResult -&gt; getAppServicePlanResult.id()));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetAppServicePlanResult> getAppServicePlanPlain(GetAppServicePlanPlainArgs args) {
        return getAppServicePlanPlain(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to access information about an existing App Service Plan (formerly known as a `Server Farm`).
     * 
     * !&gt; **Note:** The `azure.appservice.Plan` data source is deprecated in version 3.0 of the AzureRM provider and will be removed in version 4.0. Please use the `azure.appservice.ServicePlan` data source instead.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetAppServicePlanArgs;
     * 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 example = AppserviceFunctions.getAppServicePlan(GetAppServicePlanArgs.builder()
     *             .name(&#34;search-app-service-plan&#34;)
     *             .resourceGroupName(&#34;search-service&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;appServicePlanId&#34;, example.applyValue(getAppServicePlanResult -&gt; getAppServicePlanResult.id()));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetAppServicePlanResult> getAppServicePlan(GetAppServicePlanArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("azure:appservice/getAppServicePlan:getAppServicePlan", TypeShape.of(GetAppServicePlanResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to access information about an existing App Service Plan (formerly known as a `Server Farm`).
     * 
     * !&gt; **Note:** The `azure.appservice.Plan` data source is deprecated in version 3.0 of the AzureRM provider and will be removed in version 4.0. Please use the `azure.appservice.ServicePlan` data source instead.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetAppServicePlanArgs;
     * 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 example = AppserviceFunctions.getAppServicePlan(GetAppServicePlanArgs.builder()
     *             .name(&#34;search-app-service-plan&#34;)
     *             .resourceGroupName(&#34;search-service&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;appServicePlanId&#34;, example.applyValue(getAppServicePlanResult -&gt; getAppServicePlanResult.id()));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetAppServicePlanResult> getAppServicePlanPlain(GetAppServicePlanPlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("azure:appservice/getAppServicePlan:getAppServicePlan", TypeShape.of(GetAppServicePlanResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to access information about an App Service Certificate.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetCertificateArgs;
     * 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 example = AppserviceFunctions.getCertificate(GetCertificateArgs.builder()
     *             .name(&#34;example-app-service-certificate&#34;)
     *             .resourceGroupName(&#34;example-rg&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;appServiceCertificateId&#34;, example.applyValue(getCertificateResult -&gt; getCertificateResult.id()));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetCertificateResult> getCertificate(GetCertificateArgs args) {
        return getCertificate(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to access information about an App Service Certificate.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetCertificateArgs;
     * 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 example = AppserviceFunctions.getCertificate(GetCertificateArgs.builder()
     *             .name(&#34;example-app-service-certificate&#34;)
     *             .resourceGroupName(&#34;example-rg&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;appServiceCertificateId&#34;, example.applyValue(getCertificateResult -&gt; getCertificateResult.id()));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetCertificateResult> getCertificatePlain(GetCertificatePlainArgs args) {
        return getCertificatePlain(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to access information about an App Service Certificate.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetCertificateArgs;
     * 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 example = AppserviceFunctions.getCertificate(GetCertificateArgs.builder()
     *             .name(&#34;example-app-service-certificate&#34;)
     *             .resourceGroupName(&#34;example-rg&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;appServiceCertificateId&#34;, example.applyValue(getCertificateResult -&gt; getCertificateResult.id()));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetCertificateResult> getCertificate(GetCertificateArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("azure:appservice/getCertificate:getCertificate", TypeShape.of(GetCertificateResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to access information about an App Service Certificate.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetCertificateArgs;
     * 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 example = AppserviceFunctions.getCertificate(GetCertificateArgs.builder()
     *             .name(&#34;example-app-service-certificate&#34;)
     *             .resourceGroupName(&#34;example-rg&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;appServiceCertificateId&#34;, example.applyValue(getCertificateResult -&gt; getCertificateResult.id()));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetCertificateResult> getCertificatePlain(GetCertificatePlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("azure:appservice/getCertificate:getCertificate", TypeShape.of(GetCertificateResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to access information about an existing App Service Certificate Order.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetCertificateOrderArgs;
     * 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 example = AppserviceFunctions.getCertificateOrder(GetCertificateOrderArgs.builder()
     *             .name(&#34;example-cert-order&#34;)
     *             .resourceGroupName(&#34;example-resources&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;certificateOrderId&#34;, example.applyValue(getCertificateOrderResult -&gt; getCertificateOrderResult.id()));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetCertificateOrderResult> getCertificateOrder(GetCertificateOrderArgs args) {
        return getCertificateOrder(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to access information about an existing App Service Certificate Order.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetCertificateOrderArgs;
     * 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 example = AppserviceFunctions.getCertificateOrder(GetCertificateOrderArgs.builder()
     *             .name(&#34;example-cert-order&#34;)
     *             .resourceGroupName(&#34;example-resources&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;certificateOrderId&#34;, example.applyValue(getCertificateOrderResult -&gt; getCertificateOrderResult.id()));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetCertificateOrderResult> getCertificateOrderPlain(GetCertificateOrderPlainArgs args) {
        return getCertificateOrderPlain(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to access information about an existing App Service Certificate Order.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetCertificateOrderArgs;
     * 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 example = AppserviceFunctions.getCertificateOrder(GetCertificateOrderArgs.builder()
     *             .name(&#34;example-cert-order&#34;)
     *             .resourceGroupName(&#34;example-resources&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;certificateOrderId&#34;, example.applyValue(getCertificateOrderResult -&gt; getCertificateOrderResult.id()));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetCertificateOrderResult> getCertificateOrder(GetCertificateOrderArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("azure:appservice/getCertificateOrder:getCertificateOrder", TypeShape.of(GetCertificateOrderResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to access information about an existing App Service Certificate Order.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetCertificateOrderArgs;
     * 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 example = AppserviceFunctions.getCertificateOrder(GetCertificateOrderArgs.builder()
     *             .name(&#34;example-cert-order&#34;)
     *             .resourceGroupName(&#34;example-resources&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;certificateOrderId&#34;, example.applyValue(getCertificateOrderResult -&gt; getCertificateOrderResult.id()));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetCertificateOrderResult> getCertificateOrderPlain(GetCertificateOrderPlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("azure:appservice/getCertificateOrder:getCertificateOrder", TypeShape.of(GetCertificateOrderResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to access information about an existing 3rd Generation (v3) App Service Environment.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetEnvironmentV3Args;
     * 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 example = AppserviceFunctions.getEnvironmentV3(GetEnvironmentV3Args.builder()
     *             .name(&#34;example-ASE&#34;)
     *             .resourceGroupName(&#34;example-resource-group&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;id&#34;, example.applyValue(getEnvironmentV3Result -&gt; getEnvironmentV3Result.id()));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetEnvironmentV3Result> getEnvironmentV3(GetEnvironmentV3Args args) {
        return getEnvironmentV3(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to access information about an existing 3rd Generation (v3) App Service Environment.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetEnvironmentV3Args;
     * 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 example = AppserviceFunctions.getEnvironmentV3(GetEnvironmentV3Args.builder()
     *             .name(&#34;example-ASE&#34;)
     *             .resourceGroupName(&#34;example-resource-group&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;id&#34;, example.applyValue(getEnvironmentV3Result -&gt; getEnvironmentV3Result.id()));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetEnvironmentV3Result> getEnvironmentV3Plain(GetEnvironmentV3PlainArgs args) {
        return getEnvironmentV3Plain(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to access information about an existing 3rd Generation (v3) App Service Environment.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetEnvironmentV3Args;
     * 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 example = AppserviceFunctions.getEnvironmentV3(GetEnvironmentV3Args.builder()
     *             .name(&#34;example-ASE&#34;)
     *             .resourceGroupName(&#34;example-resource-group&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;id&#34;, example.applyValue(getEnvironmentV3Result -&gt; getEnvironmentV3Result.id()));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetEnvironmentV3Result> getEnvironmentV3(GetEnvironmentV3Args args, InvokeOptions options) {
        return Deployment.getInstance().invoke("azure:appservice/getEnvironmentV3:getEnvironmentV3", TypeShape.of(GetEnvironmentV3Result.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to access information about an existing 3rd Generation (v3) App Service Environment.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetEnvironmentV3Args;
     * 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 example = AppserviceFunctions.getEnvironmentV3(GetEnvironmentV3Args.builder()
     *             .name(&#34;example-ASE&#34;)
     *             .resourceGroupName(&#34;example-resource-group&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;id&#34;, example.applyValue(getEnvironmentV3Result -&gt; getEnvironmentV3Result.id()));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetEnvironmentV3Result> getEnvironmentV3Plain(GetEnvironmentV3PlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("azure:appservice/getEnvironmentV3:getEnvironmentV3", TypeShape.of(GetEnvironmentV3Result.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to access information about a Function App.
     * 
     * !&gt; **Note:** The `azure.appservice.FunctionApp` data source is deprecated in version 3.0 of the AzureRM provider and will be removed in version 4.0. Please use the `azure.appservice.LinuxFunctionApp` data sources instead.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetFunctionAppArgs;
     * 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 example = AppserviceFunctions.getFunctionApp(GetFunctionAppArgs.builder()
     *             .name(&#34;test-azure-functions&#34;)
     *             .resourceGroupName(azurerm_resource_group.example().name())
     *             .build());
     * 
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetFunctionAppResult> getFunctionApp(GetFunctionAppArgs args) {
        return getFunctionApp(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to access information about a Function App.
     * 
     * !&gt; **Note:** The `azure.appservice.FunctionApp` data source is deprecated in version 3.0 of the AzureRM provider and will be removed in version 4.0. Please use the `azure.appservice.LinuxFunctionApp` data sources instead.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetFunctionAppArgs;
     * 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 example = AppserviceFunctions.getFunctionApp(GetFunctionAppArgs.builder()
     *             .name(&#34;test-azure-functions&#34;)
     *             .resourceGroupName(azurerm_resource_group.example().name())
     *             .build());
     * 
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetFunctionAppResult> getFunctionAppPlain(GetFunctionAppPlainArgs args) {
        return getFunctionAppPlain(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to access information about a Function App.
     * 
     * !&gt; **Note:** The `azure.appservice.FunctionApp` data source is deprecated in version 3.0 of the AzureRM provider and will be removed in version 4.0. Please use the `azure.appservice.LinuxFunctionApp` data sources instead.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetFunctionAppArgs;
     * 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 example = AppserviceFunctions.getFunctionApp(GetFunctionAppArgs.builder()
     *             .name(&#34;test-azure-functions&#34;)
     *             .resourceGroupName(azurerm_resource_group.example().name())
     *             .build());
     * 
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetFunctionAppResult> getFunctionApp(GetFunctionAppArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("azure:appservice/getFunctionApp:getFunctionApp", TypeShape.of(GetFunctionAppResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to access information about a Function App.
     * 
     * !&gt; **Note:** The `azure.appservice.FunctionApp` data source is deprecated in version 3.0 of the AzureRM provider and will be removed in version 4.0. Please use the `azure.appservice.LinuxFunctionApp` data sources instead.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetFunctionAppArgs;
     * 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 example = AppserviceFunctions.getFunctionApp(GetFunctionAppArgs.builder()
     *             .name(&#34;test-azure-functions&#34;)
     *             .resourceGroupName(azurerm_resource_group.example().name())
     *             .build());
     * 
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetFunctionAppResult> getFunctionAppPlain(GetFunctionAppPlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("azure:appservice/getFunctionApp:getFunctionApp", TypeShape.of(GetFunctionAppResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to fetch the Host Keys of an existing Function App
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetFunctionAppHostKeysArgs;
     * 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 example = AppserviceFunctions.getFunctionAppHostKeys(GetFunctionAppHostKeysArgs.builder()
     *             .name(&#34;example-function&#34;)
     *             .resourceGroupName(azurerm_resource_group.example().name())
     *             .build());
     * 
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetFunctionAppHostKeysResult> getFunctionAppHostKeys(GetFunctionAppHostKeysArgs args) {
        return getFunctionAppHostKeys(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to fetch the Host Keys of an existing Function App
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetFunctionAppHostKeysArgs;
     * 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 example = AppserviceFunctions.getFunctionAppHostKeys(GetFunctionAppHostKeysArgs.builder()
     *             .name(&#34;example-function&#34;)
     *             .resourceGroupName(azurerm_resource_group.example().name())
     *             .build());
     * 
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetFunctionAppHostKeysResult> getFunctionAppHostKeysPlain(GetFunctionAppHostKeysPlainArgs args) {
        return getFunctionAppHostKeysPlain(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to fetch the Host Keys of an existing Function App
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetFunctionAppHostKeysArgs;
     * 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 example = AppserviceFunctions.getFunctionAppHostKeys(GetFunctionAppHostKeysArgs.builder()
     *             .name(&#34;example-function&#34;)
     *             .resourceGroupName(azurerm_resource_group.example().name())
     *             .build());
     * 
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetFunctionAppHostKeysResult> getFunctionAppHostKeys(GetFunctionAppHostKeysArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("azure:appservice/getFunctionAppHostKeys:getFunctionAppHostKeys", TypeShape.of(GetFunctionAppHostKeysResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to fetch the Host Keys of an existing Function App
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetFunctionAppHostKeysArgs;
     * 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 example = AppserviceFunctions.getFunctionAppHostKeys(GetFunctionAppHostKeysArgs.builder()
     *             .name(&#34;example-function&#34;)
     *             .resourceGroupName(azurerm_resource_group.example().name())
     *             .build());
     * 
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetFunctionAppHostKeysResult> getFunctionAppHostKeysPlain(GetFunctionAppHostKeysPlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("azure:appservice/getFunctionAppHostKeys:getFunctionAppHostKeys", TypeShape.of(GetFunctionAppHostKeysResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to access information about an existing Linux Function App.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetLinuxFunctionAppArgs;
     * 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 example = AppserviceFunctions.getLinuxFunctionApp(GetLinuxFunctionAppArgs.builder()
     *             .name(&#34;existing&#34;)
     *             .resourceGroupName(&#34;existing&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;id&#34;, example.applyValue(getLinuxFunctionAppResult -&gt; getLinuxFunctionAppResult.id()));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetLinuxFunctionAppResult> getLinuxFunctionApp(GetLinuxFunctionAppArgs args) {
        return getLinuxFunctionApp(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to access information about an existing Linux Function App.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetLinuxFunctionAppArgs;
     * 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 example = AppserviceFunctions.getLinuxFunctionApp(GetLinuxFunctionAppArgs.builder()
     *             .name(&#34;existing&#34;)
     *             .resourceGroupName(&#34;existing&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;id&#34;, example.applyValue(getLinuxFunctionAppResult -&gt; getLinuxFunctionAppResult.id()));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetLinuxFunctionAppResult> getLinuxFunctionAppPlain(GetLinuxFunctionAppPlainArgs args) {
        return getLinuxFunctionAppPlain(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to access information about an existing Linux Function App.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetLinuxFunctionAppArgs;
     * 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 example = AppserviceFunctions.getLinuxFunctionApp(GetLinuxFunctionAppArgs.builder()
     *             .name(&#34;existing&#34;)
     *             .resourceGroupName(&#34;existing&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;id&#34;, example.applyValue(getLinuxFunctionAppResult -&gt; getLinuxFunctionAppResult.id()));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetLinuxFunctionAppResult> getLinuxFunctionApp(GetLinuxFunctionAppArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("azure:appservice/getLinuxFunctionApp:getLinuxFunctionApp", TypeShape.of(GetLinuxFunctionAppResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to access information about an existing Linux Function App.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetLinuxFunctionAppArgs;
     * 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 example = AppserviceFunctions.getLinuxFunctionApp(GetLinuxFunctionAppArgs.builder()
     *             .name(&#34;existing&#34;)
     *             .resourceGroupName(&#34;existing&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;id&#34;, example.applyValue(getLinuxFunctionAppResult -&gt; getLinuxFunctionAppResult.id()));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetLinuxFunctionAppResult> getLinuxFunctionAppPlain(GetLinuxFunctionAppPlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("azure:appservice/getLinuxFunctionApp:getLinuxFunctionApp", TypeShape.of(GetLinuxFunctionAppResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to access information about an existing Linux Web App.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetLinuxWebAppArgs;
     * 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 example = AppserviceFunctions.getLinuxWebApp(GetLinuxWebAppArgs.builder()
     *             .name(&#34;existing&#34;)
     *             .resourceGroupName(&#34;existing&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;id&#34;, example.applyValue(getLinuxWebAppResult -&gt; getLinuxWebAppResult.id()));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetLinuxWebAppResult> getLinuxWebApp(GetLinuxWebAppArgs args) {
        return getLinuxWebApp(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to access information about an existing Linux Web App.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetLinuxWebAppArgs;
     * 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 example = AppserviceFunctions.getLinuxWebApp(GetLinuxWebAppArgs.builder()
     *             .name(&#34;existing&#34;)
     *             .resourceGroupName(&#34;existing&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;id&#34;, example.applyValue(getLinuxWebAppResult -&gt; getLinuxWebAppResult.id()));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetLinuxWebAppResult> getLinuxWebAppPlain(GetLinuxWebAppPlainArgs args) {
        return getLinuxWebAppPlain(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to access information about an existing Linux Web App.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetLinuxWebAppArgs;
     * 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 example = AppserviceFunctions.getLinuxWebApp(GetLinuxWebAppArgs.builder()
     *             .name(&#34;existing&#34;)
     *             .resourceGroupName(&#34;existing&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;id&#34;, example.applyValue(getLinuxWebAppResult -&gt; getLinuxWebAppResult.id()));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetLinuxWebAppResult> getLinuxWebApp(GetLinuxWebAppArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("azure:appservice/getLinuxWebApp:getLinuxWebApp", TypeShape.of(GetLinuxWebAppResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to access information about an existing Linux Web App.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetLinuxWebAppArgs;
     * 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 example = AppserviceFunctions.getLinuxWebApp(GetLinuxWebAppArgs.builder()
     *             .name(&#34;existing&#34;)
     *             .resourceGroupName(&#34;existing&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;id&#34;, example.applyValue(getLinuxWebAppResult -&gt; getLinuxWebAppResult.id()));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetLinuxWebAppResult> getLinuxWebAppPlain(GetLinuxWebAppPlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("azure:appservice/getLinuxWebApp:getLinuxWebApp", TypeShape.of(GetLinuxWebAppResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to access information about an existing Service Plan.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetServicePlanArgs;
     * 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 example = AppserviceFunctions.getServicePlan(GetServicePlanArgs.builder()
     *             .name(&#34;existing&#34;)
     *             .resourceGroupName(&#34;existing&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;id&#34;, example.applyValue(getServicePlanResult -&gt; getServicePlanResult.id()));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetServicePlanResult> getServicePlan(GetServicePlanArgs args) {
        return getServicePlan(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to access information about an existing Service Plan.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetServicePlanArgs;
     * 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 example = AppserviceFunctions.getServicePlan(GetServicePlanArgs.builder()
     *             .name(&#34;existing&#34;)
     *             .resourceGroupName(&#34;existing&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;id&#34;, example.applyValue(getServicePlanResult -&gt; getServicePlanResult.id()));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetServicePlanResult> getServicePlanPlain(GetServicePlanPlainArgs args) {
        return getServicePlanPlain(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to access information about an existing Service Plan.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetServicePlanArgs;
     * 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 example = AppserviceFunctions.getServicePlan(GetServicePlanArgs.builder()
     *             .name(&#34;existing&#34;)
     *             .resourceGroupName(&#34;existing&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;id&#34;, example.applyValue(getServicePlanResult -&gt; getServicePlanResult.id()));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetServicePlanResult> getServicePlan(GetServicePlanArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("azure:appservice/getServicePlan:getServicePlan", TypeShape.of(GetServicePlanResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to access information about an existing Service Plan.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetServicePlanArgs;
     * 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 example = AppserviceFunctions.getServicePlan(GetServicePlanArgs.builder()
     *             .name(&#34;existing&#34;)
     *             .resourceGroupName(&#34;existing&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;id&#34;, example.applyValue(getServicePlanResult -&gt; getServicePlanResult.id()));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetServicePlanResult> getServicePlanPlain(GetServicePlanPlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("azure:appservice/getServicePlan:getServicePlan", TypeShape.of(GetServicePlanResult.class), args, Utilities.withVersion(options));
    }
    /**
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetSourceControlTokenArgs;
     * 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 example = AppserviceFunctions.getSourceControlToken(GetSourceControlTokenArgs.builder()
     *             .type(&#34;GitHub&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;id&#34;, data.azurerm_app_service_github_token().example().id());
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetSourceControlTokenResult> getSourceControlToken(GetSourceControlTokenArgs args) {
        return getSourceControlToken(args, InvokeOptions.Empty);
    }
    /**
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetSourceControlTokenArgs;
     * 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 example = AppserviceFunctions.getSourceControlToken(GetSourceControlTokenArgs.builder()
     *             .type(&#34;GitHub&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;id&#34;, data.azurerm_app_service_github_token().example().id());
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetSourceControlTokenResult> getSourceControlTokenPlain(GetSourceControlTokenPlainArgs args) {
        return getSourceControlTokenPlain(args, InvokeOptions.Empty);
    }
    /**
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetSourceControlTokenArgs;
     * 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 example = AppserviceFunctions.getSourceControlToken(GetSourceControlTokenArgs.builder()
     *             .type(&#34;GitHub&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;id&#34;, data.azurerm_app_service_github_token().example().id());
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetSourceControlTokenResult> getSourceControlToken(GetSourceControlTokenArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("azure:appservice/getSourceControlToken:getSourceControlToken", TypeShape.of(GetSourceControlTokenResult.class), args, Utilities.withVersion(options));
    }
    /**
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetSourceControlTokenArgs;
     * 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 example = AppserviceFunctions.getSourceControlToken(GetSourceControlTokenArgs.builder()
     *             .type(&#34;GitHub&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;id&#34;, data.azurerm_app_service_github_token().example().id());
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetSourceControlTokenResult> getSourceControlTokenPlain(GetSourceControlTokenPlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("azure:appservice/getSourceControlToken:getSourceControlToken", TypeShape.of(GetSourceControlTokenResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to access information about an existing Windows Function App.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetWindowsFunctionAppArgs;
     * 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 example = AppserviceFunctions.getWindowsFunctionApp(GetWindowsFunctionAppArgs.builder()
     *             .name(&#34;existing&#34;)
     *             .resourceGroupName(&#34;existing&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;id&#34;, example.applyValue(getWindowsFunctionAppResult -&gt; getWindowsFunctionAppResult.id()));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetWindowsFunctionAppResult> getWindowsFunctionApp(GetWindowsFunctionAppArgs args) {
        return getWindowsFunctionApp(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to access information about an existing Windows Function App.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetWindowsFunctionAppArgs;
     * 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 example = AppserviceFunctions.getWindowsFunctionApp(GetWindowsFunctionAppArgs.builder()
     *             .name(&#34;existing&#34;)
     *             .resourceGroupName(&#34;existing&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;id&#34;, example.applyValue(getWindowsFunctionAppResult -&gt; getWindowsFunctionAppResult.id()));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetWindowsFunctionAppResult> getWindowsFunctionAppPlain(GetWindowsFunctionAppPlainArgs args) {
        return getWindowsFunctionAppPlain(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to access information about an existing Windows Function App.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetWindowsFunctionAppArgs;
     * 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 example = AppserviceFunctions.getWindowsFunctionApp(GetWindowsFunctionAppArgs.builder()
     *             .name(&#34;existing&#34;)
     *             .resourceGroupName(&#34;existing&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;id&#34;, example.applyValue(getWindowsFunctionAppResult -&gt; getWindowsFunctionAppResult.id()));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetWindowsFunctionAppResult> getWindowsFunctionApp(GetWindowsFunctionAppArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("azure:appservice/getWindowsFunctionApp:getWindowsFunctionApp", TypeShape.of(GetWindowsFunctionAppResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to access information about an existing Windows Function App.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetWindowsFunctionAppArgs;
     * 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 example = AppserviceFunctions.getWindowsFunctionApp(GetWindowsFunctionAppArgs.builder()
     *             .name(&#34;existing&#34;)
     *             .resourceGroupName(&#34;existing&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;id&#34;, example.applyValue(getWindowsFunctionAppResult -&gt; getWindowsFunctionAppResult.id()));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetWindowsFunctionAppResult> getWindowsFunctionAppPlain(GetWindowsFunctionAppPlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("azure:appservice/getWindowsFunctionApp:getWindowsFunctionApp", TypeShape.of(GetWindowsFunctionAppResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to access information about an existing Windows Web App.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetWindowsWebAppArgs;
     * 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 example = AppserviceFunctions.getWindowsWebApp(GetWindowsWebAppArgs.builder()
     *             .name(&#34;existing&#34;)
     *             .resourceGroupName(&#34;existing&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;id&#34;, example.applyValue(getWindowsWebAppResult -&gt; getWindowsWebAppResult.id()));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetWindowsWebAppResult> getWindowsWebApp(GetWindowsWebAppArgs args) {
        return getWindowsWebApp(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to access information about an existing Windows Web App.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetWindowsWebAppArgs;
     * 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 example = AppserviceFunctions.getWindowsWebApp(GetWindowsWebAppArgs.builder()
     *             .name(&#34;existing&#34;)
     *             .resourceGroupName(&#34;existing&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;id&#34;, example.applyValue(getWindowsWebAppResult -&gt; getWindowsWebAppResult.id()));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetWindowsWebAppResult> getWindowsWebAppPlain(GetWindowsWebAppPlainArgs args) {
        return getWindowsWebAppPlain(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to access information about an existing Windows Web App.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetWindowsWebAppArgs;
     * 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 example = AppserviceFunctions.getWindowsWebApp(GetWindowsWebAppArgs.builder()
     *             .name(&#34;existing&#34;)
     *             .resourceGroupName(&#34;existing&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;id&#34;, example.applyValue(getWindowsWebAppResult -&gt; getWindowsWebAppResult.id()));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetWindowsWebAppResult> getWindowsWebApp(GetWindowsWebAppArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("azure:appservice/getWindowsWebApp:getWindowsWebApp", TypeShape.of(GetWindowsWebAppResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to access information about an existing Windows Web App.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.azure.appservice.AppserviceFunctions;
     * import com.pulumi.azure.appservice.inputs.GetWindowsWebAppArgs;
     * 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 example = AppserviceFunctions.getWindowsWebApp(GetWindowsWebAppArgs.builder()
     *             .name(&#34;existing&#34;)
     *             .resourceGroupName(&#34;existing&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;id&#34;, example.applyValue(getWindowsWebAppResult -&gt; getWindowsWebAppResult.id()));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetWindowsWebAppResult> getWindowsWebAppPlain(GetWindowsWebAppPlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("azure:appservice/getWindowsWebApp:getWindowsWebApp", TypeShape.of(GetWindowsWebAppResult.class), args, Utilities.withVersion(options));
    }
}
