public WebAppConfiguration getWebAppConfiguration()

in azure-webapp-maven-plugin/src/main/java/com/microsoft/azure/maven/webapp/parser/ConfigParser.java [79:116]


    public WebAppConfiguration getWebAppConfiguration() {
        WebAppConfiguration.WebAppConfigurationBuilder<?, ?> builder = WebAppConfiguration.builder();
        final Runtime runtime = getRuntime();
        final OperatingSystem os = Optional.ofNullable(runtime).map(Runtime::getOperatingSystem).orElse(null);
        if (os == null) {
            Log.debug("No runtime related config is specified. It will cause error if creating a new web app.");
        } else {
            switch (os) {
                case WINDOWS:
                case LINUX:
                    builder = builder.javaVersion(Objects.toString(runtime.getJavaVersion())).webContainer(Objects.toString(runtime.getWebContainer()));
                    break;
                case DOCKER:
                    final MavenRuntimeConfig runtimeConfig = mojo.getRuntime();
                    builder = builder.image(runtimeConfig.getImage()).serverId(runtimeConfig.getServerId()).registryUrl(runtimeConfig.getRegistryUrl());
                    break;
                default:
                    Log.debug("Invalid operating system from the configuration.");
            }
        }
        return builder.appName(getAppName())
                .resourceGroup(getResourceGroup())
                .region(getRegion())
                .pricingTier(Optional.ofNullable(getPricingTier()).map(PricingTier::getSize).orElse(null))
                .servicePlanName(mojo.getAppServicePlanName())
                .servicePlanResourceGroup(mojo.getAppServicePlanResourceGroup())
                .deploymentSlotSetting(mojo.getDeploymentSlotSetting())
                .os(os)
                .mavenSettings(mojo.getSettings())
                .resources(Optional.ofNullable(mojo.getDeployment()).map(Deployment::getResources).orElse(null))
                .stagingDirectoryPath(mojo.getDeploymentStagingDirectoryPath())
                .buildDirectoryAbsolutePath(mojo.getBuildDirectoryAbsolutePath())
                .project(mojo.getProject())
                .session(mojo.getSession())
                .filtering(mojo.getMavenResourcesFiltering())
                .schemaVersion("v2")
                .build();
    }