
                         >    d Z ddlmZ ddlmZ ddlZ G d de      Zy)z
    Kubernetes

    No description provided (generated by Swagger Codegen
    https://github.com/swagger-api/swagger-codegen)

    OpenAPI spec version: v1.14.4

    Generated by: https://github.com/swagger-api/swagger-codegen.git
    )pformat)	iteritemsNc                       e Zd ZdZ	 ddddZddddZdd
Zed        Zej                  d        Zed        Z
e
j                  d        Z
ed        Zej                  d        Zd Zd Zd Zd Zd Zy	)V2beta2ObjectMetricSourcezw
    NOTE: This class is auto generated by the swagger code generator program.
    Do not edit the class manually.
    "V2beta2CrossVersionObjectReferenceV2beta2MetricIdentifierV2beta2MetricTarget)described_objectmetrictargetdescribedObjectr   r   Nc                 f    d| _         d| _        d| _        d| _        || _        || _        || _        y)zH
        V2beta2ObjectMetricSource - a model defined in Swagger
        N)_described_object_metric_targetdiscriminatorr
   r   r   )selfr
   r   r   s       Hlib/third_party/kubernetes/client/models/v2beta2_object_metric_source.py__init__z"V2beta2ObjectMetricSource.__init__*   s8    
 "DDLDLD,DDKDK    c                     | j                   S )z
        Gets the described_object of this V2beta2ObjectMetricSource.

        :return: The described_object of this V2beta2ObjectMetricSource.
        :rtype: V2beta2CrossVersionObjectReference
        )r   r   s    r   r
   z*V2beta2ObjectMetricSource.described_object8   s     !!!r   c                 ,    |t        d      || _        y)z
        Sets the described_object of this V2beta2ObjectMetricSource.

        :param described_object: The described_object of this
        V2beta2ObjectMetricSource.
        :type: V2beta2CrossVersionObjectReference
        Nz8Invalid value for `described_object`, must not be `None`)
ValueErrorr   )r   r
   s     r   r
   z*V2beta2ObjectMetricSource.described_objectB   s&     
DF F .Dr   c                     | j                   S )z
        Gets the metric of this V2beta2ObjectMetricSource.
        metric identifies the target metric by name and selector

        :return: The metric of this V2beta2ObjectMetricSource.
        :rtype: V2beta2MetricIdentifier
        )r   r   s    r   r   z V2beta2ObjectMetricSource.metricQ        <<r   c                 ,    |t        d      || _        y)z
        Sets the metric of this V2beta2ObjectMetricSource.
        metric identifies the target metric by name and selector

        :param metric: The metric of this V2beta2ObjectMetricSource.
        :type: V2beta2MetricIdentifier
        Nz.Invalid value for `metric`, must not be `None`)r   r   )r   r   s     r   r   z V2beta2ObjectMetricSource.metric\        ~GHHDLr   c                     | j                   S )z
        Gets the target of this V2beta2ObjectMetricSource.
        target specifies the target value for the given metric

        :return: The target of this V2beta2ObjectMetricSource.
        :rtype: V2beta2MetricTarget
        )r   r   s    r   r   z V2beta2ObjectMetricSource.targetj   r   r   c                 ,    |t        d      || _        y)z
        Sets the target of this V2beta2ObjectMetricSource.
        target specifies the target value for the given metric

        :param target: The target of this V2beta2ObjectMetricSource.
        :type: V2beta2MetricTarget
        Nz.Invalid value for `target`, must not be `None`)r   r   )r   r   s     r   r   z V2beta2ObjectMetricSource.targetu   r   r   c                 j   i }t        | j                        D ]  \  }}t        | |      }t        |t              rt	        t        d |            ||<   <t        |d      r|j                         ||<   \t        |t              r(t        t        d |j                                     ||<   |||<    |S )z8
        Returns the model properties as a dict
        c                 >    t        | d      r| j                         S | S )Nto_dicthasattrr#   )xs    r   <lambda>z3V2beta2ObjectMetricSource.to_dict.<locals>.<lambda>   s    I)>!))+EAEr   r#   c                 T    t        | d   d      r| d   | d   j                         fS | S )N   r#   r   r$   )items    r   r'   z3V2beta2ObjectMetricSource.to_dict.<locals>.<lambda>   s6    47I. #1gtAw'89 9489r   )
r   swagger_typesgetattr
isinstancelistmapr%   r#   dictitems)r   resultattr_values        r   r#   z!V2beta2ObjectMetricSource.to_dict   s     FT//0adD!e	E4	 EuMOt5)$}}teT"9:?++-IJt
 t 1 Mr   c                 4    t        | j                               S )z@
        Returns the string representation of the model
        )r   r#   r   s    r   to_strz V2beta2ObjectMetricSource.to_str   s     4<<>""r   c                 "    | j                         S )z*
        For `print` and `pprint`
        )r7   r   s    r   __repr__z"V2beta2ObjectMetricSource.__repr__   s     ;;=r   c                 V    t        |t              sy| j                  |j                  k(  S )z8
        Returns true if both objects are equal
        F)r-   r   __dict__r   others     r   __eq__z V2beta2ObjectMetricSource.__eq__   s%     e67==ENN**r   c                     | |k(   S )z<
        Returns true if both objects are not equal
         r<   s     r   __ne__z V2beta2ObjectMetricSource.__ne__   s     u}r   )NNN)__name__
__module____qualname____doc__r+   attribute_mapr   propertyr
   setterr   r   r#   r7   r9   r>   rA   r@   r   r   r   r      s     ?)%- ,- " " . .   
==    
== .#+r   r   )rE   pprintr   sixr   reobjectr   r@   r   r   <module>rM      s#   	   	a ar   