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                   @   sH  e 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d'd( Zd)d* Zd+d, Zd-S ).Nodez&
    Details of the network node.
    SOURCEDESTINATION	ANONYMOUSINTERNALDANGLINGc                 K   sx   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 )a9  
        Initializes a new Node 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 Node.
        :type id: str

        :param ip_address:
            The value to assign to the ip_address property of this Node.
        :type ip_address: str

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

        :param geo_info:
            The value to assign to the geo_info property of this Node.
        :type geo_info: str

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

        :param consecutive_anonymous_count:
            The value to assign to the consecutive_anonymous_count property of this Node.
        :type consecutive_anonymous_count: int

        :param level:
            The value to assign to the level property of this Node.
        :type level: int

        :param avg_packet_response_time_in_ms:
            The value to assign to the avg_packet_response_time_in_ms property of this Node.
        :type avg_packet_response_time_in_ms: float

        :param avg_packet_loss_percent:
            The value to assign to the avg_packet_loss_percent property of this Node.
        :type avg_packet_loss_percent: float

        :param type:
            The value to assign to the type property of this Node.
            Allowed values for this property are: "SOURCE", "DESTINATION", "ANONYMOUS", "INTERNAL", "DANGLING", 'UNKNOWN_ENUM_VALUE'.
            Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
        :type type: str

        strz	list[str]intfloat)
id
ip_addressdisplay_namegeo_infooutgoing_linksconsecutive_anonymous_countlevelavg_packet_response_time_in_msavg_packet_loss_percenttyper   Z	ipAddressZdisplayNameZgeoInfoZoutgoingLinksZconsecutiveAnonymousCountr   ZavgPacketResponseTimeInMsZavgPacketLossPercentr   N)Zswagger_typesZattribute_map_id_ip_address_display_name	_geo_info_outgoing_links_consecutive_anonymous_count_level_avg_packet_response_time_in_ms_avg_packet_loss_percent_type)selfkwargs r%   Busr/lib/python3.10/site-packages/oci/apm_synthetics/models/node.py__init__&   s@   1
zNode.__init__c                 C      | j S )z
        **[Required]** Gets the id of this Node.
        ID of the network node.


        :return: The id of this Node.
        :rtype: str
        r   r#   r%   r%   r&   r   {      
zNode.idc                 C   
   || _ dS )z
        Sets the id of this Node.
        ID of the network node.


        :param id: The id of this Node.
        :type: str
        Nr)   )r#   r   r%   r%   r&   r         

c                 C   r(   )z
        Gets the ip_address of this Node.
        IP address of the network node.


        :return: The ip_address of this Node.
        :rtype: str
        r   r*   r%   r%   r&   r      r+   zNode.ip_addressc                 C   r,   )z
        Sets the ip_address of this Node.
        IP address of the network node.


        :param ip_address: The ip_address of this Node.
        :type: str
        Nr.   )r#   r   r%   r%   r&   r      r-   c                 C   r(   )z
        Gets the display_name of this Node.
        Display name of the network node.


        :return: The display_name of this Node.
        :rtype: str
        r   r*   r%   r%   r&   r      r+   zNode.display_namec                 C   r,   )z
        Sets the display_name of this Node.
        Display name of the network node.


        :param display_name: The display_name of this Node.
        :type: str
        Nr/   )r#   r   r%   r%   r&   r      r-   c                 C   r(   )z
        Gets the geo_info of this Node.
        Geographical information of the network node.


        :return: The geo_info of this Node.
        :rtype: str
        r   r*   r%   r%   r&   r      r+   zNode.geo_infoc                 C   r,   )z
        Sets the geo_info of this Node.
        Geographical information of the network node.


        :param geo_info: The geo_info of this Node.
        :type: str
        Nr0   )r#   r   r%   r%   r&   r      r-   c                 C   r(   )z
        Gets the outgoing_links of this Node.
        Outgoing links from the network node.


        :return: The outgoing_links of this Node.
        :rtype: list[str]
        r   r*   r%   r%   r&   r      r+   zNode.outgoing_linksc                 C   r,   )z
        Sets the outgoing_links of this Node.
        Outgoing links from the network node.


        :param outgoing_links: The outgoing_links of this Node.
        :type: list[str]
        Nr1   )r#   r   r%   r%   r&   r      r-   c                 C   r(   )z
        Gets the consecutive_anonymous_count of this Node.
        Number of consecutive anonymous network nodes.


        :return: The consecutive_anonymous_count of this Node.
        :rtype: int
        r   r*   r%   r%   r&   r      r+   z Node.consecutive_anonymous_countc                 C   r,   )z
        Sets the consecutive_anonymous_count of this Node.
        Number of consecutive anonymous network nodes.


        :param consecutive_anonymous_count: The consecutive_anonymous_count of this Node.
        :type: int
        Nr2   )r#   r   r%   r%   r&   r      r-   c                 C   r(   )z
        Gets the level of this Node.
        Level of the network node.


        :return: The level of this Node.
        :rtype: int
        r   r*   r%   r%   r&   r     r+   z
Node.levelc                 C   r,   )z
        Sets the level of this Node.
        Level of the network node.


        :param level: The level of this Node.
        :type: int
        Nr3   )r#   r   r%   r%   r&   r     r-   c                 C   r(   )z
        Gets the avg_packet_response_time_in_ms of this Node.
        Average packet response time in milliseconds.


        :return: The avg_packet_response_time_in_ms of this Node.
        :rtype: float
        r    r*   r%   r%   r&   r   #  r+   z#Node.avg_packet_response_time_in_msc                 C   r,   )z
        Sets the avg_packet_response_time_in_ms of this Node.
        Average packet response time in milliseconds.


        :param avg_packet_response_time_in_ms: The avg_packet_response_time_in_ms of this Node.
        :type: float
        Nr4   )r#   r   r%   r%   r&   r   /  r-   c                 C   r(   )z
        Gets the avg_packet_loss_percent of this Node.
        Percentage of the average packet loss.


        :return: The avg_packet_loss_percent of this Node.
        :rtype: float
        r!   r*   r%   r%   r&   r   ;  r+   zNode.avg_packet_loss_percentc                 C   r,   )z
        Sets the avg_packet_loss_percent of this Node.
        Percentage of the average packet loss.


        :param avg_packet_loss_percent: The avg_packet_loss_percent of this Node.
        :type: float
        Nr5   )r#   r   r%   r%   r&   r   G  r-   c                 C   r(   )aj  
        Gets the type of this Node.
        Type of network node.

        Allowed values for this property are: "SOURCE", "DESTINATION", "ANONYMOUS", "INTERNAL", "DANGLING", 'UNKNOWN_ENUM_VALUE'.
        Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.


        :return: The type of this Node.
        :rtype: str
        )r"   r*   r%   r%   r&   r   S  s   z	Node.typec                 C   s    g d}t ||sd}|| _dS )z
        Sets the type of this Node.
        Type of network node.


        :param type: The type of this Node.
        :type: str
        )r   r   r	   r
   r   ZUNKNOWN_ENUM_VALUEN)r   r"   )r#   r   Zallowed_valuesr%   r%   r&   r   b  s   


c                 C   s   t | S N)r   r*   r%   r%   r&   __repr__q  s   zNode.__repr__c                 C   s   |d u rdS | j |j kS )NF)__dict__r#   otherr%   r%   r&   __eq__t  s   zNode.__eq__c                 C   s
   | |k S r6   r%   r9   r%   r%   r&   __ne__z  s   
zNode.__ne__N)__name__
__module____qualname____doc__ZTYPE_SOURCEZTYPE_DESTINATIONZTYPE_ANONYMOUSZTYPE_INTERNALZTYPE_DANGLINGr'   propertyr   setterr   r   r   r   r   r   r   r   r   r7   r;   r<   r%   r%   r%   r&   r      sf    U



















r   N)Zoci.utilr   r   r   Zoci.decoratorsr   objectr   r%   r%   r%   r&   <module>   s   