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

package com.azure.resourcemanager.resourcehealth.models;

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

/** Type of event. */
public final class EventTypeValues extends ExpandableStringEnum<EventTypeValues> {
    /** Static value ServiceIssue for EventTypeValues. */
    public static final EventTypeValues SERVICE_ISSUE = fromString("ServiceIssue");

    /** Static value PlannedMaintenance for EventTypeValues. */
    public static final EventTypeValues PLANNED_MAINTENANCE = fromString("PlannedMaintenance");

    /** Static value HealthAdvisory for EventTypeValues. */
    public static final EventTypeValues HEALTH_ADVISORY = fromString("HealthAdvisory");

    /** Static value RCA for EventTypeValues. */
    public static final EventTypeValues RCA = fromString("RCA");

    /** Static value EmergingIssues for EventTypeValues. */
    public static final EventTypeValues EMERGING_ISSUES = fromString("EmergingIssues");

    /** Static value SecurityAdvisory for EventTypeValues. */
    public static final EventTypeValues SECURITY_ADVISORY = fromString("SecurityAdvisory");

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

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

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