o
    ɶd$                     @   s8   d dl mZmZmZ d dlmZ eG dd deZdS )    )formatted_flat_dictNONE_SENTINEL#value_allowed_none_or_none_sentinel)init_model_state_from_kwargsc                   @   s  e Zd ZdZdZdZdZdZdd Ze	dd	 Z
e
jd
d	 Z
e	dd Zejdd Ze	dd Zejdd Ze	dd Zejdd Ze	dd Zejdd Ze	dd Zejdd Ze	dd Zejdd Ze	dd Zejdd Zd d! Zd"d# Zd$d% Zd&S )'Incidentz/
    Details of about the incident object.
    LIMITLEGACY_LIMITTECHACCOUNTc              	   K   sd   ddddddddd| _ ddd	d
ddddd| _d| _d| _d| _d| _d| _d| _d| _d| _	dS )aJ  
        Initializes a new Incident object with values from keyword arguments.
        The following keyword arguments are supported (corresponding to the getters/setters of this class):

        :param key:
            The value to assign to the key property of this Incident.
        :type key: str

        :param compartment_id:
            The value to assign to the compartment_id property of this Incident.
        :type compartment_id: str

        :param contact_list:
            The value to assign to the contact_list property of this Incident.
        :type contact_list: oci.cims.models.ContactList

        :param tenancy_information:
            The value to assign to the tenancy_information property of this Incident.
        :type tenancy_information: oci.cims.models.TenancyInformation

        :param ticket:
            The value to assign to the ticket property of this Incident.
        :type ticket: oci.cims.models.Ticket

        :param incident_type:
            The value to assign to the incident_type property of this Incident.
        :type incident_type: oci.cims.models.IncidentType

        :param problem_type:
            The value to assign to the problem_type property of this Incident.
            Allowed values for this property are: "LIMIT", "LEGACY_LIMIT", "TECH", "ACCOUNT", 'UNKNOWN_ENUM_VALUE'.
            Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
        :type problem_type: str

        :param referrer:
            The value to assign to the referrer property of this Incident.
        :type referrer: str

        strZContactListZTenancyInformationZTicketZIncidentType)keycompartment_idcontact_listtenancy_informationticketincident_typeproblem_typereferrerr   ZcompartmentIdZcontactListZtenancyInformationr   ZincidentTypeZproblemTyper   N)
Zswagger_typesZattribute_map_key_compartment_id_contact_list_tenancy_information_ticket_incident_type_problem_type	_referrer)selfkwargs r   <usr/lib/python3.10/site-packages/oci/cims/models/incident.py__init__"   s4   )
zIncident.__init__c                 C      | j S )z
        **[Required]** Gets the key of this Incident.
        Unique identifier for the support ticket.


        :return: The key of this Incident.
        :rtype: str
        r   r   r   r   r   r   i      
zIncident.keyc                 C   
   || _ dS )z
        Sets the key of this Incident.
        Unique identifier for the support ticket.


        :param key: The key of this Incident.
        :type: str
        Nr"   )r   r   r   r   r   r   u      

c                 C   r!   )z
        Gets the compartment_id of this Incident.
        The OCID of the tenancy.


        :return: The compartment_id of this Incident.
        :rtype: str
        r   r#   r   r   r   r      r$   zIncident.compartment_idc                 C   r%   )z
        Sets the compartment_id of this Incident.
        The OCID of the tenancy.


        :param compartment_id: The compartment_id of this Incident.
        :type: str
        Nr'   )r   r   r   r   r   r      r&   c                 C   r!   )z
        Gets the contact_list of this Incident.

        :return: The contact_list of this Incident.
        :rtype: oci.cims.models.ContactList
        r   r#   r   r   r   r         zIncident.contact_listc                 C   r%   )z
        Sets the contact_list of this Incident.

        :param contact_list: The contact_list of this Incident.
        :type: oci.cims.models.ContactList
        Nr(   )r   r   r   r   r   r         
c                 C   r!   )z
        Gets the tenancy_information of this Incident.

        :return: The tenancy_information of this Incident.
        :rtype: oci.cims.models.TenancyInformation
        r   r#   r   r   r   r      r)   zIncident.tenancy_informationc                 C   r%   )z
        Sets the tenancy_information of this Incident.

        :param tenancy_information: The tenancy_information of this Incident.
        :type: oci.cims.models.TenancyInformation
        Nr+   )r   r   r   r   r   r      r*   c                 C   r!   )z
        Gets the ticket of this Incident.

        :return: The ticket of this Incident.
        :rtype: oci.cims.models.Ticket
        r   r#   r   r   r   r      r)   zIncident.ticketc                 C   r%   )z
        Sets the ticket of this Incident.

        :param ticket: The ticket of this Incident.
        :type: oci.cims.models.Ticket
        Nr,   )r   r   r   r   r   r      r*   c                 C   r!   )z
        Gets the incident_type of this Incident.

        :return: The incident_type of this Incident.
        :rtype: oci.cims.models.IncidentType
        r   r#   r   r   r   r      r)   zIncident.incident_typec                 C   r%   )z
        Sets the incident_type of this Incident.

        :param incident_type: The incident_type of this Incident.
        :type: oci.cims.models.IncidentType
        Nr-   )r   r   r   r   r   r      r*   c                 C   r!   )a  
        Gets the problem_type of this Incident.
        The kind of support ticket, such as a technical support request.

        Allowed values for this property are: "LIMIT", "LEGACY_LIMIT", "TECH", "ACCOUNT", 'UNKNOWN_ENUM_VALUE'.
        Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.


        :return: The problem_type of this Incident.
        :rtype: str
        )r   r#   r   r   r   r      s   zIncident.problem_typec                 C   s    g d}t ||sd}|| _dS )z
        Sets the problem_type of this Incident.
        The kind of support ticket, such as a technical support request.


        :param problem_type: The problem_type of this Incident.
        :type: str
        )r   r   r	   r
   ZUNKNOWN_ENUM_VALUEN)r   r   )r   r   Zallowed_valuesr   r   r   r      s   


c                 C   r!   )z
        Gets the referrer of this Incident.
        The incident referrer. This value is often the URL that the customer used when creating the support ticket.


        :return: The referrer of this Incident.
        :rtype: str
        r   r#   r   r   r   r     r$   zIncident.referrerc                 C   r%   )z
        Sets the referrer of this Incident.
        The incident referrer. This value is often the URL that the customer used when creating the support ticket.


        :param referrer: The referrer of this Incident.
        :type: str
        Nr.   )r   r   r   r   r   r     r&   c                 C   s   t | S N)r   r#   r   r   r   __repr__  s   zIncident.__repr__c                 C   s   |d u rdS | j |j kS )NF)__dict__r   otherr   r   r   __eq__"  s   zIncident.__eq__c                 C   s
   | |k S r/   r   r2   r   r   r   __ne__(  s   
zIncident.__ne__N)__name__
__module____qualname____doc__ZPROBLEM_TYPE_LIMITZPROBLEM_TYPE_LEGACY_LIMITZPROBLEM_TYPE_TECHZPROBLEM_TYPE_ACCOUNTr    propertyr   setterr   r   r   r   r   r   r   r0   r4   r5   r   r   r   r   r      sT    G




	
	
	
	
	
	
	
	



r   N)Zoci.utilr   r   r   Zoci.decoratorsr   objectr   r   r   r   r   <module>   s   