Ë
    eQêj(  ã                  óî   — d Z ddlmZ ddlZddlZddlZddlmZ ddl	m
Z
mZmZmZmZ ddlmZmZmZmZmZmZ ddlmZ ddlmZ dd	lmZmZ dd
lmZ ddlmZ dZ dd„Z!dd„Z"dd„Z#dd„Z$ G d„ de«      Z%y)a   
    Kubernetes

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

    The version of the OpenAPI document: release-1.37
    Generated by OpenAPI Generator (https://openapi-generator.tech)

    Do not edit the class manually.
é    )ÚannotationsN)ÚMapping)ÚAliasChoicesÚ	BaseModelÚ
ConfigDictÚFieldÚ	StrictStr)ÚAnyÚClassVarÚDictÚListÚOptionalÚcast)ÚV1DeviceSubRequest)ÚV1ExactDeviceRequest)r   ÚSet)ÚSelf)Úto_jsonable_pythonÚ_openapi_generator_to_dictc                óâ   — t        | dd «      }t        t        | «      dd «      }t        |«      rt        |dd «      |ury t        |t        d «      }t        |«      rt        |t        d «      |ury |S )NÚto_dictÚ__func__)ÚgetattrÚtypeÚcallableÚ_OPENAPI_GENERATOR_TO_DICT)Úvaluer   Útype_to_dictÚopenapi_to_dicts       úo/home/oem/CyberBrain26-unified/.venv/lib/python3.12/site-packages/kubernetes/client/models/v1_device_request.pyÚ_get_openapi_to_dictr!   !   s‚   € ô �e˜Y¨Ó-€GÜœ4 ›;¨	°4Ó8€Lä�WÔÜ�7˜J¨Ó-°\ÑAàäØÔ0°$ó€Oô �_Ô%ÜØÜ&Øó
ð ñ	ð ØÐó    c                ó‚   — t        | dd «      }t        | «      �t        |«      r	 ||¬«      S t        |«      r |«       S | S )Nr   )Ú	serialize)r   r!   r   )r   r$   r   s      r    Ú_to_legacy_itemr%   <   sB   € Ü�e˜Y¨Ó-€GÜ˜EÓ"Ð.´8¸GÔ3DÙ Ô+Ð+Ü�ÔÙ‹yÐØ€Lr"   c           	     ó   — t        | t        «      r| D �cg c]  }t        ||«      ‘Œ c}S t        | t        «      r.| j	                  «       D ��ci c]  \  }}|t        ||«      “Œ c}}S t        | |«      S c c}w c c}}w )N)Ú
isinstanceÚlistr%   ÚdictÚitems)r   r$   ÚitemÚkeys       r    Ú_to_legacy_valuer-   E   s}   € ô �%œÔØ=BÖC°T”  iÕ0ÒCÐCÜ�%œÔð #Ÿ[™[›]÷
á��Tð ”  yÓ1Ñ1ó
ð 	
ô ˜5 )Ó,Ð,ùò Dùó
s   •A5ÁA:c                óP  — t        | t        «      r| D �cg c]  }t        |«      ‘Œ c}S t        | t        «      r-| j	                  «       D ��ci c]  \  }}|t        |«      “Œ c}}S t        | «      }|� || «      S t        | dd «      }t        |«      r |«       S | S c c}w c c}}w )Nr   )r'   r(   Ú_to_openapi_valuer)   r*   r!   r   r   )r   r+   r,   Úto_openapi_dictr   s        r    r/   r/   R   s™   € Ü�%œÔØ49Ö:¨DÔ! $Õ'Ò:Ð:Ü�%œÔØ>C¿k¹k»m×L±°°d�Ô& tÓ,Ñ,ÓLÐLä*¨5Ó1€OØÐ"Ù˜uÓ%Ð%ä�e˜Y¨Ó-€GÜ�ÔÙ‹yÐØ€Lùò ;ùãLs   •BÁB"c                  ól  — e Zd ZU dZdZded<    ed edd«      dd¬«      Zd	ed<    ed
¬«      Z	ded<   ddddœZ
ded<   ddddœZded<   g d¢Zded<   e	 d&	 	 	 	 	 d'd„«       Z eddddd¬«      Zd(d„Zd(d„Zd)d„Zd)d „Zd(d!„Zed*d"„«       Zd+d,d#„Zd-d$„Z eeee«        eeee«       [ed.d%„«       Zy)/ÚV1DeviceRequesta	  
    DeviceRequest is a request for devices required for a claim. This is typically a request for a single resource like a device, but can also ask for several identical devices. With FirstAvailable it is also possible to provide a prioritized list of requests.

    Attributes:
      openapi_types (dict): The key is attribute name
                            and the value is attribute type.
      attribute_map (dict): The key is attribute name
                            and the value is json key in definition.
    NzOptional[V1ExactDeviceRequest]ÚexactlyÚfirstAvailableÚfirst_availableaÆ  FirstAvailable contains subrequests, of which exactly one will be selected by the scheduler. It tries to satisfy them in the order in which they are listed here. So if there are two entries in the list, the scheduler will only check the second one if it determines that the first one can not be used.  DRA does not yet implement scoring, so the scheduler will select the first set of devices that satisfies all the requests in the claim. And if the requirements can be satisfied on more than one node, other scheduling features will determine which node is chosen. This means that the set of devices allocated to a claim might not be the optimal set available to the cluster. Scoring will be implemented later.)ÚdefaultÚvalidation_aliasÚserialization_aliasÚdescriptionz"Optional[List[V1DeviceSubRequest]]a’  Name can be used to reference this request in a pod.spec.containers[].resources.claims entry and in a constraint of the claim.  References using the name in the DeviceRequest will uniquely identify a request when the Exactly field is set. When the FirstAvailable field is set, a reference to the name of the DeviceRequest will match whatever subrequest is chosen by the scheduler.  Must be a DNS label.)r9   r	   Únamer   zList[V1DeviceSubRequest]Ústr)r3   r5   r:   zClassVar[Dict[str, str]]Úopenapi_typesÚattribute_map©r3   r4   r:   zClassVar[List[str]]Ú_V1DeviceRequest__propertiesTc                ó„   — t        |t        «      s|S t        |«      }d|vrd|v r|d   |d<   |j                  dd «       |S )Nr4   r5   )r'   Ú_Mappingr)   Úpop)ÚclsÚobjÚremove_hidden_storage_namess      r    Ú__preprocess_input_namesz(V1DeviceRequest.__preprocess_input_names|   sQ   € ô ˜#œxÔ(ØˆJÜ�3‹iˆØ 3Ñ&Ð+<ÀÑ+CØ$'Ð(9Ñ$:ˆCÐ Ñ!Ø�‰Ð! 4Ô(Øˆ
r"   Úforbid© )Úvalidate_by_nameÚvalidate_by_aliasÚvalidate_assignmentÚextraÚprotected_namespacesc                óH   — t        j                  | j                  «       «      S )z.Returns the string representation of the model)ÚpprintÚpformatr   ©Úselfs    r    Úto_strzV1DeviceRequest.to_str“   s   € ä�~‰~˜dŸl™l›nÓ-Ð-r"   c                ó"   — | j                  «       S )zFor print and pprint)rS   rQ   s    r    Ú__repr__zV1DeviceRequest.__repr__—   s   € à�{‰{‹}Ðr"   c                óf   — t        |t        «      sy| j                  «       |j                  «       k(  S )z&Returns true if both objects are equalF)r'   r2   r   ©rR   Úothers     r    Ú__eq__zV1DeviceRequest.__eq__›   s&   € ä˜%¤Ô1Øà�|‰|‹~ §¡£Ñ0Ð0r"   c                ó0   — t        |t        «      sy| |k(   S )z*Returns true if both objects are not equalT)r'   r2   rW   s     r    Ú__ne__zV1DeviceRequest.__ne__¢   s   € ä˜%¤Ô1Øà˜E‘MÐ"Ð"r"   c                ó¼   — t        | «      }|�$t        j                  t         || «      «      «      S t        j                  t        | j	                  «       «      «      S )z8Returns the JSON representation of the model using alias)r!   ÚjsonÚdumpsr   r   )rR   r0   s     r    Úto_jsonzV1DeviceRequest.to_jsonª   sG   € ä.¨tÓ4ˆØÐ&Ü—:‘:Ô0±ÀÓ1FÓGÓHÐHÜ�z‰zÔ,¨T¯\©\«^Ó<Ó=Ð=r"   c                óJ   — | j                  t        j                  |«      «      S )z8Create an instance of V1DeviceRequest from a JSON string)Ú	from_dictr]   Úloads)rC   Újson_strs     r    Ú	from_jsonzV1DeviceRequest.from_json±   s   € ð �}‰}œTŸZ™Z¨Ó1Ó2Ð2r"   c                ó¨   — |rdndt        t        | dd«      |«      |rdndt        t        | dd«      |«      |rdndt        t        | dd«      |«      iS )z<Return all declared model fields using public or wire names.r3   Nr4   r5   r:   )r-   r   )rR   r$   s     r    r   zV1DeviceRequest.to_dict¶   sp   € ñ $‰Y¨Ô5EÄgÈdÐT]Ð_cÓFdÐfoÓ5pÙ!*ÑÐ0AÔDTÔU\Ð]aÐctÐvzÓU{ð  ~Gó  EHÙ ‰V fÔ/?ÄÈÈfÐVZÓ@[Ð]fÓ/gð
ð 	
r"   c                ó  — t        g «      }| j                  d|d¬«      }| j                  rt        | j                  «      |d<   g }| j                  r4| j                  D ]   }|j                  |�t        |«      nd«       Œ" ||d<   |S )ac  Return the dictionary representation of the model using alias.

        This has the following differences from calling pydantic's
        `self.model_dump(by_alias=True)`:

        * `None` is only added to the output dict for nullable fields that
          were set at model initialization. Other fields with value `None`
          are ignored.
        T)Úby_aliasÚexcludeÚexclude_noner3   Nr4   )ÚsetÚ
model_dumpr3   r/   r5   Úappend)rR   Úexcluded_fieldsÚ_dictÚ_itemsÚ_item_first_availables        r    Ú%__openapi_generator_modern_projectionz5V1DeviceRequest.__openapi_generator_modern_projection¾   sŸ   € ô %(ð )
ó %ˆð —‘ØØ#Øð  ó 
ˆð �<Š<Ü0°·±Ó>ˆE�)ÑàˆØ×ÒØ)-×)=Ñ)=ò wÐ%Ø—‘ÐJ_ÐJkÔ/Ð0EÔFÐquÕvðwà&,ˆEÐ"Ñ#Øˆr"   c           	     ó¼  — |€yt        |t        «      s| j                  |«      S t        t        t
        t        f   | j                  |d¬«      «      }| j                  |j                  d«      �t        j                  |d   «      nd|j                  d«      �&|d   D �cg c]  }t        j                  |«      ‘Œ c}nd|j                  d«      dœ«      }|S c c}w )z1Create an instance of V1DeviceRequest from a dictNT)rE   r3   r4   r:   r>   )r'   r)   Úmodel_validateÚ_castr   r;   r
   Ú(_V1DeviceRequest__preprocess_input_namesÚgetr   ra   r   )rC   rD   Ú_itemÚ_objs       r    ra   zV1DeviceRequest.from_dictç   sî   € ð ˆ;Øä˜#œtÔ$Ø×%Ñ% cÓ*Ð*äÜ””c�‰NØ×(Ñ(ØØ,0ð )ó ó
ˆð ×!Ñ!ØILÏÉÐQZÓI[ÐIgÔ+×5Ñ5°c¸)±nÔEÐmqØjm×jqÑjqð  sCó  kDð  kPÐPSÐTdÑPeÖfÀuÔ1×;Ñ;¸EÕBÓfð  VZØ—G‘G˜F“Oñ#
ó ˆð
 ˆùò gs   Â C
)T)rD   r
   rE   ÚboolÚreturnr
   )rz   r;   )rX   Úobjectrz   ry   )rc   r;   rz   úOptional[Self])F)r$   ry   rz   úDict[str, Any])rz   r}   )rD   zOptional[Dict[str, Any]]rz   r|   )Ú__name__Ú
__module__Ú__qualname__Ú__doc__r3   Ú__annotations__r   r   r5   r:   r<   r=   r?   Úclassmethodru   r   Úmodel_configrS   rU   rY   r[   r_   rd   r   Ú5_V1DeviceRequest__openapi_generator_modern_projectionÚsetattrr   ra   rH   r"   r    r2   r2   b   sg  … ñð /3€GÐ+Ó2Ù:?ÈÑ_kÐl|ð  Pó  `Qð  gwð  EMô  ;N€OÐ7ó  NÙð  )}ô  ~€Dˆ)ó  ~à)Ø5Øñ/€MÐ+ó ð Ø+Øñ/€MÐ+ó ò
 )N€LÐ%ÓMàð -1ðàðð &*ðð 
ò	ó ðñ ØØØ ØØô€Ló.óó1ó#ó>ð ò3ó ð3ô
óñ: ØØ"Ø-ôñ
 Ø-Ø"Øôð
 	.àòó ñr"   r2   )r   r
   rz   r
   )r   r
   r$   ry   rz   r
   )&r�   Ú
__future__r   rO   Úrer]   Úcollections.abcr   rA   Úpydanticr   r   r   r   r	   Útypingr
   r   r   r   r   r   rt   Ú.kubernetes.client.models.v1_device_sub_requestr   Ú0kubernetes.client.models.v1_exact_device_requestr   r   Útyping_extensionsr   Úpydantic_corer   r   r!   r%   r-   r/   r2   rH   r"   r    ú<module>r�      s`   ðñ	õ #Û Û 	Û å /ß JÕ Jß E× EÝ MÝ Qß  Ý "Ý ,ð :Ð óó6ó
-óô [�iõ [r"   