
                          >    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ZdddZd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)V1beta1CSIDriverSpeczw
    NOTE: This class is auto generated by the swagger code generator program.
    Do not edit the class manually.
    bool)attach_requiredpod_info_on_mountattachRequiredpodInfoOnMountNc                 T    d| _         d| _        d| _        ||| _        ||| _        yy)zC
        V1beta1CSIDriverSpec - a model defined in Swagger
        N)_attach_required_pod_info_on_mountdiscriminatorr   r	   )selfr   r	   s      Clib/third_party/kubernetes/client/models/v1beta1_csi_driver_spec.py__init__zV1beta1CSIDriverSpec.__init__%   s=    
 !D"DD",d$0d %    c                     | j                   S )a  
        Gets the attach_required of this V1beta1CSIDriverSpec.
        attachRequired indicates this CSI volume driver requires an attach
        operation (because it implements the CSI ControllerPublishVolume()
        method), and that the Kubernetes attach detach controller should call
        the attach volume interface which checks the volumeattachment status and
        waits until the volume is attached before proceeding to mounting. The
        CSI external-attacher coordinates with CSI volume driver and updates the
        volumeattachment status when the attach operation is complete. If the
        CSIDriverRegistry feature gate is enabled and the value is specified to
        false, the attach operation will be skipped. Otherwise the attach
        operation will be called.

        :return: The attach_required of this V1beta1CSIDriverSpec.
        :rtype: bool
        r   r   s    r   r   z$V1beta1CSIDriverSpec.attach_required3   s    $    r   c                     || _         y)a  
        Sets the attach_required of this V1beta1CSIDriverSpec.
        attachRequired indicates this CSI volume driver requires an attach
        operation (because it implements the CSI ControllerPublishVolume()
        method), and that the Kubernetes attach detach controller should call
        the attach volume interface which checks the volumeattachment status and
        waits until the volume is attached before proceeding to mounting. The
        CSI external-attacher coordinates with CSI volume driver and updates the
        volumeattachment status when the attach operation is complete. If the
        CSIDriverRegistry feature gate is enabled and the value is specified to
        false, the attach operation will be skipped. Otherwise the attach
        operation will be called.

        :param attach_required: The attach_required of this
        V1beta1CSIDriverSpec.
        :type: bool
        Nr   )r   r   s     r   r   z$V1beta1CSIDriverSpec.attach_requiredG   s    ( ,Dr   c                     | j                   S )a  
        Gets the pod_info_on_mount of this V1beta1CSIDriverSpec.
        If set to true, podInfoOnMount indicates this CSI volume driver requires
        additional pod information (like podName, podUID, etc.) during mount
        operations. If set to false, pod information will not be passed on
        mount. Default is false. The CSI driver specifies podInfoOnMount as part
        of driver deployment. If true, Kubelet will pass pod information as
        VolumeContext in the CSI NodePublishVolume() calls. The CSI driver is
        responsible for parsing and validating the information passed in as
        VolumeContext. The following VolumeConext will be passed if
        podInfoOnMount is set to true. This list might grow, but the prefix will
        be used. "csi.storage.k8s.io/pod.name": pod.Name
        "csi.storage.k8s.io/pod.namespace": pod.Namespace
        "csi.storage.k8s.io/pod.uid": string(pod.UID)

        :return: The pod_info_on_mount of this V1beta1CSIDriverSpec.
        :rtype: bool
        r   r   s    r   r	   z&V1beta1CSIDriverSpec.pod_info_on_mount]   s    ( """r   c                     || _         y)a  
        Sets the pod_info_on_mount of this V1beta1CSIDriverSpec.
        If set to true, podInfoOnMount indicates this CSI volume driver requires
        additional pod information (like podName, podUID, etc.) during mount
        operations. If set to false, pod information will not be passed on
        mount. Default is false. The CSI driver specifies podInfoOnMount as part
        of driver deployment. If true, Kubelet will pass pod information as
        VolumeContext in the CSI NodePublishVolume() calls. The CSI driver is
        responsible for parsing and validating the information passed in as
        VolumeContext. The following VolumeConext will be passed if
        podInfoOnMount is set to true. This list might grow, but the prefix will
        be used. "csi.storage.k8s.io/pod.name": pod.Name
        "csi.storage.k8s.io/pod.namespace": pod.Namespace
        "csi.storage.k8s.io/pod.uid": string(pod.UID)

        :param pod_info_on_mount: The pod_info_on_mount of this
        V1beta1CSIDriverSpec.
        :type: bool
        Nr   )r   r	   s     r   r	   z&V1beta1CSIDriverSpec.pod_info_on_mounts   s    , 0D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>z.V1beta1CSIDriverSpec.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!   z.V1beta1CSIDriverSpec.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V1beta1CSIDriverSpec.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V1beta1CSIDriverSpec.to_str   s     4<<>""r   c                 "    | j                         S )z*
        For `print` and `pprint`
        )r1   r   s    r   __repr__zV1beta1CSIDriverSpec.__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V1beta1CSIDriverSpec.__eq__   s%     e12==ENN**r   c                     | |k(   S )z<
        Returns true if both objects are not equal
         r6   s     r   __ne__zV1beta1CSIDriverSpec.__ne__   s     u}r   )NN)__name__
__module____qualname____doc__r%   attribute_mapr   propertyr   setterr	   r   r1   r3   r8   r;   r:   r   r   r   r      s     '-6J- *+-
1 ! !& , ,* # #* 0 0..#+r   r   )r?   pprintr   sixr   reobjectr   r:   r   r   <module>rG      s#   	   	i6 ir   