// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
// Code generated by Microsoft (R) AutoRest Code Generator.

package com.azure.resourcemanager.azurestack.models;

import com.azure.core.util.ExpandableStringEnum;
import com.fasterxml.jackson.annotation.JsonCreator;
import java.util.Collection;

/** Compatibility issue. */
public final class CompatibilityIssue extends ExpandableStringEnum<CompatibilityIssue> {
    /** Static value HigherDeviceVersionRequired for CompatibilityIssue. */
    public static final CompatibilityIssue HIGHER_DEVICE_VERSION_REQUIRED = fromString("HigherDeviceVersionRequired");

    /** Static value LowerDeviceVersionRequired for CompatibilityIssue. */
    public static final CompatibilityIssue LOWER_DEVICE_VERSION_REQUIRED = fromString("LowerDeviceVersionRequired");

    /** Static value CapacityBillingModelRequired for CompatibilityIssue. */
    public static final CompatibilityIssue CAPACITY_BILLING_MODEL_REQUIRED = fromString("CapacityBillingModelRequired");

    /** Static value PayAsYouGoBillingModelRequired for CompatibilityIssue. */
    public static final CompatibilityIssue PAY_AS_YOU_GO_BILLING_MODEL_REQUIRED =
        fromString("PayAsYouGoBillingModelRequired");

    /** Static value DevelopmentBillingModelRequired for CompatibilityIssue. */
    public static final CompatibilityIssue DEVELOPMENT_BILLING_MODEL_REQUIRED =
        fromString("DevelopmentBillingModelRequired");

    /** Static value AzureADIdentitySystemRequired for CompatibilityIssue. */
    public static final CompatibilityIssue AZURE_ADIDENTITY_SYSTEM_REQUIRED =
        fromString("AzureADIdentitySystemRequired");

    /** Static value ADFSIdentitySystemRequired for CompatibilityIssue. */
    public static final CompatibilityIssue ADFSIDENTITY_SYSTEM_REQUIRED = fromString("ADFSIdentitySystemRequired");

    /** Static value ConnectionToInternetRequired for CompatibilityIssue. */
    public static final CompatibilityIssue CONNECTION_TO_INTERNET_REQUIRED = fromString("ConnectionToInternetRequired");

    /** Static value ConnectionToAzureRequired for CompatibilityIssue. */
    public static final CompatibilityIssue CONNECTION_TO_AZURE_REQUIRED = fromString("ConnectionToAzureRequired");

    /** Static value DisconnectedEnvironmentRequired for CompatibilityIssue. */
    public static final CompatibilityIssue DISCONNECTED_ENVIRONMENT_REQUIRED =
        fromString("DisconnectedEnvironmentRequired");

    /**
     * Creates a new instance of CompatibilityIssue value.
     *
     * @deprecated Use the {@link #fromString(String)} factory method.
     */
    @Deprecated
    public CompatibilityIssue() {
    }

    /**
     * Creates or finds a CompatibilityIssue from its string representation.
     *
     * @param name a name to look for.
     * @return the corresponding CompatibilityIssue.
     */
    @JsonCreator
    public static CompatibilityIssue fromString(String name) {
        return fromString(name, CompatibilityIssue.class);
    }

    /**
     * Gets known CompatibilityIssue values.
     *
     * @return known CompatibilityIssue values.
     */
    public static Collection<CompatibilityIssue> values() {
        return values(CompatibilityIssue.class);
    }
}
