# coding: utf-8

"""
    Equinix Fabric API v4
    Generated by OpenAPI Generator (https://openapi-generator.tech)

    Do not edit the class manually.
"""  # noqa: E501


from __future__ import annotations
import json
from enum import Enum
from typing_extensions import Self


class PortState(str, Enum):
    """
    Port lifecycle state
    """

    """
    allowed enum values
    """
    PENDING = 'PENDING'
    PROVISIONING = 'PROVISIONING'
    REPROVISIONING = 'REPROVISIONING'
    PENDING_CROSS_CONNECT = 'PENDING_CROSS_CONNECT'
    PROVISIONED = 'PROVISIONED'
    ACTIVE = 'ACTIVE'
    DEPROVISIONING = 'DEPROVISIONING'
    DEPROVISIONED = 'DEPROVISIONED'
    INACTIVE = 'INACTIVE'
    FAILED = 'FAILED'
    ADDED = 'ADDED'
    DELETED = 'DELETED'
    TO_BE_ADDED = 'TO_BE_ADDED'
    TO_BE_DELETED = 'TO_BE_DELETED'

    @classmethod
    def from_json(cls, json_str: str) -> Self:
        """Create an instance of PortState from a JSON string"""
        return cls(json.loads(json_str))


