o
    g:                     @   s<   d Z ddlZddlZddlZddlmZ G dd deZdS )z
    Kubernetes

    No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)  # noqa: E501

    The version of the OpenAPI document: release-1.32
    Generated by: https://openapi-generator.tech
    N)Configurationc                   @   s  e Zd ZdZ	 dddddddZd	d
dddddZd.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*d+ Zd,d- ZdS )/V2MetricSpeczNOTE: This class is auto generated by OpenAPI Generator.
    Ref: https://openapi-generator.tech

    Do not edit the class manually.
    V2ContainerResourceMetricSourceV2ExternalMetricSourceV2ObjectMetricSourceV2PodsMetricSourceV2ResourceMetricSourcestr)container_resourceexternalobjectpodsresourcetypecontainerResourcer   r   r   r   r   Nc                 C   s   |du rt  }|| _d| _d| _d| _d| _d| _d| _d| _|dur&|| _	|dur-|| _
|dur4|| _|dur;|| _|durB|| _|| _dS )z)V2MetricSpec - a model defined in OpenAPIN)r   local_vars_configuration_container_resource	_external_object_pods	_resource_typediscriminatorr
   r   r   r   r   r   )selfr
   r   r   r   r   r   r    r   ^/var/www/visachat/venv/lib/python3.10/site-packages/kubernetes/client/models/v2_metric_spec.py__init__5   s*   
zV2MetricSpec.__init__c                 C      | j S )zGets the container_resource of this V2MetricSpec.  # noqa: E501


        :return: The container_resource of this V2MetricSpec.  # noqa: E501
        :rtype: V2ContainerResourceMetricSource
        r   r   r   r   r   r
   O      zV2MetricSpec.container_resourcec                 C   
   || _ dS )zSets the container_resource of this V2MetricSpec.


        :param container_resource: The container_resource of this V2MetricSpec.  # noqa: E501
        :type: V2ContainerResourceMetricSource
        Nr   )r   r
   r   r   r   r
   Y      
	c                 C   r   )zGets the external of this V2MetricSpec.  # noqa: E501


        :return: The external of this V2MetricSpec.  # noqa: E501
        :rtype: V2ExternalMetricSource
        r   r   r   r   r   r   d   r    zV2MetricSpec.externalc                 C   r!   )zSets the external of this V2MetricSpec.


        :param external: The external of this V2MetricSpec.  # noqa: E501
        :type: V2ExternalMetricSource
        Nr#   )r   r   r   r   r   r   n   r"   c                 C   r   )zGets the object of this V2MetricSpec.  # noqa: E501


        :return: The object of this V2MetricSpec.  # noqa: E501
        :rtype: V2ObjectMetricSource
        r   r   r   r   r   r   y   r    zV2MetricSpec.objectc                 C   r!   )zSets the object of this V2MetricSpec.


        :param object: The object of this V2MetricSpec.  # noqa: E501
        :type: V2ObjectMetricSource
        Nr$   )r   r   r   r   r   r      r"   c                 C   r   )zGets the pods of this V2MetricSpec.  # noqa: E501


        :return: The pods of this V2MetricSpec.  # noqa: E501
        :rtype: V2PodsMetricSource
        r   r   r   r   r   r      r    zV2MetricSpec.podsc                 C   r!   )zSets the pods of this V2MetricSpec.


        :param pods: The pods of this V2MetricSpec.  # noqa: E501
        :type: V2PodsMetricSource
        Nr%   )r   r   r   r   r   r      r"   c                 C   r   )zGets the resource of this V2MetricSpec.  # noqa: E501


        :return: The resource of this V2MetricSpec.  # noqa: E501
        :rtype: V2ResourceMetricSource
        r   r   r   r   r   r      r    zV2MetricSpec.resourcec                 C   r!   )zSets the resource of this V2MetricSpec.


        :param resource: The resource of this V2MetricSpec.  # noqa: E501
        :type: V2ResourceMetricSource
        Nr&   )r   r   r   r   r   r      r"   c                 C   r   )aM  Gets the type of this V2MetricSpec.  # noqa: E501

        type is the type of metric source.  It should be one of "ContainerResource", "External", "Object", "Pods" or "Resource", each mapping to a matching field in the object.  # noqa: E501

        :return: The type of this V2MetricSpec.  # noqa: E501
        :rtype: str
        )r   r   r   r   r   r      s   	zV2MetricSpec.typec                 C   s"   | j jr|du rtd|| _dS )aB  Sets the type of this V2MetricSpec.

        type is the type of metric source.  It should be one of "ContainerResource", "External", "Object", "Pods" or "Resource", each mapping to a matching field in the object.  # noqa: E501

        :param type: The type of this V2MetricSpec.  # noqa: E501
        :type: str
        Nz,Invalid value for `type`, must not be `None`)r   client_side_validation
ValueErrorr   )r   r   r   r   r   r      s   	
c                 C   s   i }t | jD ]=\}}t| |}t|tr"ttdd |||< qt|dr.| ||< qt|t	rAt	tdd |
 ||< q|||< q|S )z&Returns the model properties as a dictc                 S   s   t | dr	|  S | S )Nto_dicthasattrr)   )xr   r   r   <lambda>   s    z&V2MetricSpec.to_dict.<locals>.<lambda>r)   c                 S   s&   t | d dr| d | d  fS | S )N   r)   r   r*   )itemr   r   r   r-      s   )six	iteritemsopenapi_typesgetattr
isinstancelistmapr+   r)   dictitems)r   resultattr_valuer   r   r   r)      s"   




zV2MetricSpec.to_dictc                 C   s   t |  S )z.Returns the string representation of the model)pprintpformatr)   r   r   r   r   to_str   s   zV2MetricSpec.to_strc                 C   s   |   S )zFor `print` and `pprint`)r?   r   r   r   r   __repr__   s   zV2MetricSpec.__repr__c                 C   s   t |tsdS |  | kS )z&Returns true if both objects are equalFr4   r   r)   r   otherr   r   r   __eq__      
zV2MetricSpec.__eq__c                 C   s   t |tsdS |  | kS )z*Returns true if both objects are not equalTrA   rB   r   r   r   __ne__   rE   zV2MetricSpec.__ne__)NNNNNNN)__name__
__module____qualname____doc__r2   attribute_mapr   propertyr
   setterr   r   r   r   r   r)   r?   r@   rD   rF   r   r   r   r   r      s^    

	
	


	


	


	


	




r   )rJ   r=   rer0   kubernetes.client.configurationr   r   r   r   r   r   r   <module>   s   
