o
    ɶdi                     @   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ZdZ	dZ
d	Zd
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ed)d* Zejd+d* Zed,d- Zejd.d- Zed/d0 Z e jd1d0 Z ed2d3 Z!e!jd4d3 Z!ed5d6 Z"e"jd7d6 Z"ed8d9 Z#e#jd:d9 Z#ed;d< Z$e$jd=d< Z$ed>d? Z%e%jd@d? Z%edAdB Z&e&jdCdB Z&edDdE Z'e'jdFdE Z'edGdH Z(e(jdIdH Z(edJdK Z)e)jdLdK Z)edMdN Z*e*jdOdN Z*edPdQ Z+e+jdRdQ Z+dSdT Z,dUdV Z-dWdX Z.dYS )ZAlertz_
    The details of a Data Safe Alert, that shows alerts generated by a Data Safe feature.
    OPENCLOSEDCRITICALHIGHMEDIUMLOWEVALUATE	SUCCEEDEDFAILEDAUDITINGSECURITY_ASSESSMENTUSER_ASSESSMENTUPDATINGc                 K   s  i 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ddddddddddddd| _ i 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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(| _d(| _d(| _d(| _d(| _d(| _d(| _d(| _d(| _d(S ))a  
        Initializes a new Alert object with values from keyword arguments.
        The following keyword arguments are supported (corresponding to the getters/setters of this class):

        :param id:
            The value to assign to the id property of this Alert.
        :type id: str

        :param status:
            The value to assign to the status property of this Alert.
            Allowed values for this property are: "OPEN", "CLOSED", 'UNKNOWN_ENUM_VALUE'.
            Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
        :type status: str

        :param severity:
            The value to assign to the severity property of this Alert.
            Allowed values for this property are: "CRITICAL", "HIGH", "MEDIUM", "LOW", "EVALUATE", 'UNKNOWN_ENUM_VALUE'.
            Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
        :type severity: str

        :param display_name:
            The value to assign to the display_name property of this Alert.
        :type display_name: str

        :param description:
            The value to assign to the description property of this Alert.
        :type description: str

        :param operation_time:
            The value to assign to the operation_time property of this Alert.
        :type operation_time: datetime

        :param operation:
            The value to assign to the operation property of this Alert.
        :type operation: str

        :param operation_status:
            The value to assign to the operation_status property of this Alert.
            Allowed values for this property are: "SUCCEEDED", "FAILED", 'UNKNOWN_ENUM_VALUE'.
            Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
        :type operation_status: str

        :param target_ids:
            The value to assign to the target_ids property of this Alert.
        :type target_ids: list[str]

        :param target_names:
            The value to assign to the target_names property of this Alert.
        :type target_names: list[str]

        :param policy_id:
            The value to assign to the policy_id property of this Alert.
        :type policy_id: str

        :param alert_type:
            The value to assign to the alert_type property of this Alert.
            Allowed values for this property are: "AUDITING", "SECURITY_ASSESSMENT", "USER_ASSESSMENT", 'UNKNOWN_ENUM_VALUE'.
            Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
        :type alert_type: str

        :param resource_name:
            The value to assign to the resource_name property of this Alert.
        :type resource_name: str

        :param feature_details:
            The value to assign to the feature_details property of this Alert.
        :type feature_details: dict(str, dict(str, object))

        :param comment:
            The value to assign to the comment property of this Alert.
        :type comment: str

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

        :param lifecycle_state:
            The value to assign to the lifecycle_state property of this Alert.
            Allowed values for this property are: "UPDATING", "SUCCEEDED", "FAILED", 'UNKNOWN_ENUM_VALUE'.
            Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
        :type lifecycle_state: str

        :param time_created:
            The value to assign to the time_created property of this Alert.
        :type time_created: datetime

        :param time_updated:
            The value to assign to the time_updated property of this Alert.
        :type time_updated: datetime

        :param freeform_tags:
            The value to assign to the freeform_tags property of this Alert.
        :type freeform_tags: dict(str, str)

        :param defined_tags:
            The value to assign to the defined_tags property of this Alert.
        :type defined_tags: dict(str, dict(str, object))

        :param system_tags:
            The value to assign to the system_tags property of this Alert.
        :type system_tags: dict(str, dict(str, object))

        idstrstatusseveritydisplay_namedescriptionoperation_timedatetime	operationoperation_status
target_idsz	list[str]target_names	policy_id
alert_typeresource_namefeature_detailszdict(str, dict(str, object))commentcompartment_idlifecycle_statezdict(str, str))time_createdtime_updatedfreeform_tagsdefined_tagssystem_tagsZdisplayNameZoperationTimeZoperationStatusZ	targetIdsZtargetNamesZpolicyIdZ	alertTypeZresourceNameZfeatureDetailsZcompartmentIdZlifecycleStateZtimeCreatedZtimeUpdatedZfreeformTagsZdefinedTagsZ
systemTagsN)Zswagger_typesZattribute_map_id_status	_severity_display_name_description_operation_time
_operation_operation_status_target_ids_target_names
_policy_id_alert_type_resource_name_feature_details_comment_compartment_id_lifecycle_state_time_created_time_updated_freeform_tags_defined_tags_system_tags)selfkwargs rD   >usr/lib/python3.10/site-packages/oci/data_safe/models/alert.py__init__N   s   h	

	


zAlert.__init__c                 C      | j S )z
        **[Required]** Gets the id of this Alert.
        The OCID of the alert.


        :return: The id of this Alert.
        :rtype: str
        r,   rB   rD   rD   rE   r         
zAlert.idc                 C   
   || _ dS )z
        Sets the id of this Alert.
        The OCID of the alert.


        :param id: The id of this Alert.
        :type: str
        NrH   )rB   r   rD   rD   rE   r        

c                 C   rG   )aG  
        Gets the status of this Alert.
        The status of the alert.

        Allowed values for this property are: "OPEN", "CLOSED", 'UNKNOWN_ENUM_VALUE'.
        Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.


        :return: The status of this Alert.
        :rtype: str
        )r-   rI   rD   rD   rE   r        zAlert.statusc                 C       ddg}t ||sd}|| _dS )z
        Sets the status of this Alert.
        The status of the alert.


        :param status: The status of this Alert.
        :type: str
        r   r   UNKNOWN_ENUM_VALUEN)r   r-   )rB   r   allowed_valuesrD   rD   rE   r   &     


c                 C   rG   )an  
        Gets the severity of this Alert.
        Severity level of the alert.

        Allowed values for this property are: "CRITICAL", "HIGH", "MEDIUM", "LOW", "EVALUATE", 'UNKNOWN_ENUM_VALUE'.
        Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.


        :return: The severity of this Alert.
        :rtype: str
        )r.   rI   rD   rD   rE   r   5  rM   zAlert.severityc                 C       g d}t ||sd}|| _dS )z
        Sets the severity of this Alert.
        Severity level of the alert.


        :param severity: The severity of this Alert.
        :type: str
        )r	   r
   r   r   r   rO   N)r   r.   )rB   r   rP   rD   rD   rE   r   D  rQ   c                 C   rG   )z
        **[Required]** Gets the display_name of this Alert.
        The display name of the alert.


        :return: The display_name of this Alert.
        :rtype: str
        r/   rI   rD   rD   rE   r   S  rJ   zAlert.display_namec                 C   rK   )z
        Sets the display_name of this Alert.
        The display name of the alert.


        :param display_name: The display_name of this Alert.
        :type: str
        NrS   )rB   r   rD   rD   rE   r   _  rL   c                 C   rG   )z
        Gets the description of this Alert.
        The description of the alert.


        :return: The description of this Alert.
        :rtype: str
        r0   rI   rD   rD   rE   r   k  rJ   zAlert.descriptionc                 C   rK   )z
        Sets the description of this Alert.
        The description of the alert.


        :param description: The description of this Alert.
        :type: str
        NrT   )rB   r   rD   rD   rE   r   w  rL   c                 C   rG   )a"  
        Gets the operation_time of this Alert.
        Creation date and time of the operation that triggered alert, in the format defined by `RFC3339`__.

        __ https://tools.ietf.org/html/rfc3339


        :return: The operation_time of this Alert.
        :rtype: datetime
        r1   rI   rD   rD   rE   r        zAlert.operation_timec                 C   rK   )a/  
        Sets the operation_time of this Alert.
        Creation date and time of the operation that triggered alert, in the format defined by `RFC3339`__.

        __ https://tools.ietf.org/html/rfc3339


        :param operation_time: The operation_time of this Alert.
        :type: datetime
        NrU   )rB   r   rD   rD   rE   r        
c                 C   rG   )z
        Gets the operation of this Alert.
        The operation (event) that triggered alert.


        :return: The operation of this Alert.
        :rtype: str
        r2   rI   rD   rD   rE   r     rJ   zAlert.operationc                 C   rK   )z
        Sets the operation of this Alert.
        The operation (event) that triggered alert.


        :param operation: The operation of this Alert.
        :type: str
        NrX   )rB   r   rD   rD   rE   r     rL   c                 C   rG   )a  
        Gets the operation_status of this Alert.
        The result of the operation (event) that triggered alert.

        Allowed values for this property are: "SUCCEEDED", "FAILED", 'UNKNOWN_ENUM_VALUE'.
        Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.


        :return: The operation_status of this Alert.
        :rtype: str
        )r3   rI   rD   rD   rE   r     rM   zAlert.operation_statusc                 C   rN   )z
        Sets the operation_status of this Alert.
        The result of the operation (event) that triggered alert.


        :param operation_status: The operation_status of this Alert.
        :type: str
        r   r   rO   N)r   r3   )rB   r   rP   rD   rD   rE   r     rQ   c                 C   rG   )z
        Gets the target_ids of this Alert.
        Array of OCIDs of the target database which are associated with the alert.


        :return: The target_ids of this Alert.
        :rtype: list[str]
        r4   rI   rD   rD   rE   r     rJ   zAlert.target_idsc                 C   rK   )z
        Sets the target_ids of this Alert.
        Array of OCIDs of the target database which are associated with the alert.


        :param target_ids: The target_ids of this Alert.
        :type: list[str]
        NrY   )rB   r   rD   rD   rE   r     rL   c                 C   rG   )z
        Gets the target_names of this Alert.
        Array of names of the target database.


        :return: The target_names of this Alert.
        :rtype: list[str]
        r5   rI   rD   rD   rE   r     rJ   zAlert.target_namesc                 C   rK   )z
        Sets the target_names of this Alert.
        Array of names of the target database.


        :param target_names: The target_names of this Alert.
        :type: list[str]
        NrZ   )rB   r   rD   rD   rE   r     rL   c                 C   rG   )z
        Gets the policy_id of this Alert.
        The OCID of the policy that triggered alert.


        :return: The policy_id of this Alert.
        :rtype: str
        r6   rI   rD   rD   rE   r      rJ   zAlert.policy_idc                 C   rK   )z
        Sets the policy_id of this Alert.
        The OCID of the policy that triggered alert.


        :param policy_id: The policy_id of this Alert.
        :type: str
        Nr[   )rB   r    rD   rD   rE   r      rL   c                 C   rG   )a  
        Gets the alert_type of this Alert.
        Type of the alert. Indicates the Data Safe feature triggering the alert.

        Allowed values for this property are: "AUDITING", "SECURITY_ASSESSMENT", "USER_ASSESSMENT", 'UNKNOWN_ENUM_VALUE'.
        Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.


        :return: The alert_type of this Alert.
        :rtype: str
        )r7   rI   rD   rD   rE   r!     rM   zAlert.alert_typec                 C   rR   )z
        Sets the alert_type of this Alert.
        Type of the alert. Indicates the Data Safe feature triggering the alert.


        :param alert_type: The alert_type of this Alert.
        :type: str
        )r   r   r   rO   N)r   r7   )rB   r!   rP   rD   rD   rE   r!   ,  rQ   c                 C   rG   )z
        Gets the resource_name of this Alert.
        The resource endpoint that triggered the alert.


        :return: The resource_name of this Alert.
        :rtype: str
        r8   rI   rD   rD   rE   r"   ;  rJ   zAlert.resource_namec                 C   rK   )z
        Sets the resource_name of this Alert.
        The resource endpoint that triggered the alert.


        :param resource_name: The resource_name of this Alert.
        :type: str
        Nr\   )rB   r"   rD   rD   rE   r"   G  rL   c                 C   rG   )z
        Gets the feature_details of this Alert.
        Map that contains maps of values.
         Example: `{"Operations": {"CostCenter": "42"}}`


        :return: The feature_details of this Alert.
        :rtype: dict(str, dict(str, object))
        r9   rI   rD   rD   rE   r#   S     zAlert.feature_detailsc                 C   rK   )a  
        Sets the feature_details of this Alert.
        Map that contains maps of values.
         Example: `{"Operations": {"CostCenter": "42"}}`


        :param feature_details: The feature_details of this Alert.
        :type: dict(str, dict(str, object))
        Nr]   )rB   r#   rD   rD   rE   r#   `     
c                 C   rG   )z
        Gets the comment of this Alert.
        A comment for the alert. Entered by the user.


        :return: The comment of this Alert.
        :rtype: str
        r:   rI   rD   rD   rE   r$   m  rJ   zAlert.commentc                 C   rK   )z
        Sets the comment of this Alert.
        A comment for the alert. Entered by the user.


        :param comment: The comment of this Alert.
        :type: str
        Nr`   )rB   r$   rD   rD   rE   r$   y  rL   c                 C   rG   )z
        **[Required]** Gets the compartment_id of this Alert.
        The OCID of the compartment that contains the alert.


        :return: The compartment_id of this Alert.
        :rtype: str
        r;   rI   rD   rD   rE   r%     rJ   zAlert.compartment_idc                 C   rK   )z
        Sets the compartment_id of this Alert.
        The OCID of the compartment that contains the alert.


        :param compartment_id: The compartment_id of this Alert.
        :type: str
        Nra   )rB   r%   rD   rD   rE   r%     rL   c                 C   rG   )a  
        **[Required]** Gets the lifecycle_state of this Alert.
        The current state of the alert.

        Allowed values for this property are: "UPDATING", "SUCCEEDED", "FAILED", 'UNKNOWN_ENUM_VALUE'.
        Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.


        :return: The lifecycle_state of this Alert.
        :rtype: str
        )r<   rI   rD   rD   rE   r&     rM   zAlert.lifecycle_statec                 C   rR   )z
        Sets the lifecycle_state of this Alert.
        The current state of the alert.


        :param lifecycle_state: The lifecycle_state of this Alert.
        :type: str
        )r   r   r   rO   N)r   r<   )rB   r&   rP   rD   rD   rE   r&     rQ   c                 C   rG   )a  
        **[Required]** Gets the time_created of this Alert.
        Creation date and time of the alert, in the format defined by `RFC3339`__.

        __ https://tools.ietf.org/html/rfc3339


        :return: The time_created of this Alert.
        :rtype: datetime
        r=   rI   rD   rD   rE   r'     rV   zAlert.time_createdc                 C   rK   )a  
        Sets the time_created of this Alert.
        Creation date and time of the alert, in the format defined by `RFC3339`__.

        __ https://tools.ietf.org/html/rfc3339


        :param time_created: The time_created of this Alert.
        :type: datetime
        Nrb   )rB   r'   rD   rD   rE   r'     rW   c                 C   rG   )a  
        **[Required]** Gets the time_updated of this Alert.
        Last date and time the alert was updated, in the format defined by `RFC3339`__.

        __ https://tools.ietf.org/html/rfc3339


        :return: The time_updated of this Alert.
        :rtype: datetime
        r>   rI   rD   rD   rE   r(     rV   zAlert.time_updatedc                 C   rK   )a  
        Sets the time_updated of this Alert.
        Last date and time the alert was updated, in the format defined by `RFC3339`__.

        __ https://tools.ietf.org/html/rfc3339


        :param time_updated: The time_updated of this Alert.
        :type: datetime
        Nrc   )rB   r(   rD   rD   rE   r(     rW   c                 C   rG   )a  
        Gets the freeform_tags of this Alert.
        Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see `Resource Tags`__

        Example: `{"Department": "Finance"}`

        __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm


        :return: The freeform_tags of this Alert.
        :rtype: dict(str, str)
        r?   rI   rD   rD   rE   r)        zAlert.freeform_tagsc                 C   rK   )a  
        Sets the freeform_tags of this Alert.
        Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see `Resource Tags`__

        Example: `{"Department": "Finance"}`

        __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm


        :param freeform_tags: The freeform_tags of this Alert.
        :type: dict(str, str)
        Nrd   )rB   r)   rD   rD   rE   r)        
c                 C   rG   )a  
        Gets the defined_tags of this Alert.
        Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see `Resource Tags`__

        Example: `{"Operations": {"CostCenter": "42"}}`

        __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm


        :return: The defined_tags of this Alert.
        :rtype: dict(str, dict(str, object))
        r@   rI   rD   rD   rE   r*     re   zAlert.defined_tagsc                 C   rK   )a  
        Sets the defined_tags of this Alert.
        Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see `Resource Tags`__

        Example: `{"Operations": {"CostCenter": "42"}}`

        __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm


        :param defined_tags: The defined_tags of this Alert.
        :type: dict(str, dict(str, object))
        Nrg   )rB   r*   rD   rD   rE   r*   #  rf   c                 C   rG   )aX  
        Gets the system_tags of this Alert.
        System tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags.
        Example: `{"orcl-cloud": {"free-tier-retained": "true"}}`


        :return: The system_tags of this Alert.
        :rtype: dict(str, dict(str, object))
        rA   rI   rD   rD   rE   r+   3  r^   zAlert.system_tagsc                 C   rK   )ab  
        Sets the system_tags of this Alert.
        System tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags.
        Example: `{"orcl-cloud": {"free-tier-retained": "true"}}`


        :param system_tags: The system_tags of this Alert.
        :type: dict(str, dict(str, object))
        Nrh   )rB   r+   rD   rD   rE   r+   @  r_   c                 C   s   t | S N)r   rI   rD   rD   rE   __repr__M  s   zAlert.__repr__c                 C   s   |d u rdS | j |j kS )NF)__dict__rB   otherrD   rD   rE   __eq__P  s   zAlert.__eq__c                 C   s
   | |k S ri   rD   rl   rD   rD   rE   __ne__V  s   
zAlert.__ne__N)/__name__
__module____qualname____doc__ZSTATUS_OPENZSTATUS_CLOSEDZSEVERITY_CRITICALZSEVERITY_HIGHZSEVERITY_MEDIUMZSEVERITY_LOWZSEVERITY_EVALUATEZOPERATION_STATUS_SUCCEEDEDZOPERATION_STATUS_FAILEDZALERT_TYPE_AUDITINGZALERT_TYPE_SECURITY_ASSESSMENTZALERT_TYPE_USER_ASSESSMENTZLIFECYCLE_STATE_UPDATINGZLIFECYCLE_STATE_SUCCEEDEDZLIFECYCLE_STATE_FAILEDrF   propertyr   setterr   r   r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   rj   rn   ro   rD   rD   rD   rE   r      s     2











































r   N)Zoci.utilr   r   r   Zoci.decoratorsr   objectr   rD   rD   rD   rE   <module>   s   