
    Vh              
          d dl mZmZmZ eZd dlmZ 	 d dlm	Z	 dZ
d dlmZ d dlmZmZ  e       Zej%                   ed%i d ed	
      d ed	
      d ed
      d ed
      d ed
      d ed
      d ed
      d ed
      d ed
      d ed
      d ed
      d ed	
      d ed
      d ed
      d ed
      d ed
      d ed
      d ed
      d ed
      d ed
      d  ed
      d! ed
             g Zg Zg Zg Z G d" d#e      Zy$# e$ r dZ
Y $w xY w)&    )absolute_importdivisionprint_function)
ActionBase)AnsibleArgSpecValidatorTF)AnsibleActionFail)ISESDKise_argument_specconnectedLinksdict)typecustomAttributesdescriptionstr
deviceTypegroupIdhardwareRevisionididentityStoreidentityStoreId	ipAddressmacmdmAttributesname
portalUser	productId	profileIdprotocolserialNumbersoftwareRevisionstaticGroupAssignmentboolstaticProfileAssignmentvendorc                   6     e Zd Z fdZd Zd Zd fd	Z xZS )ActionModulec                 x    t         st        d      t        t        |   |i | d| _        d| _        d | _        y )NzYansible.utils is not installed. Execute 'ansible-galaxy collection install ansible.utils'F)ANSIBLE_UTILS_IS_INSTALLEDr   superr&   __init___supports_async_supports_check_mode_result)selfargskwargs	__class__s      k/home/dcms/DCMS/lib/python3.12/site-packages/ansible_collections/cisco/ise/plugins/action/endpoints_task.pyr*   zActionModule.__init__?   sC    )#k  	lD*D;F;$$)!    c                 *   t        | j                  j                  t        t              dt        t
        t        t        t              | j                  j                        }|j                         \  }}| j                  _        |st        |      y )N)argument_specargspec)required_ifrequired_one_ofmutually_exclusiverequired_together)dataschemaschema_formatschema_conditionalsr   )r   _taskr/   r   r5   r7   r8   r9   r:   actionvalidater   )r.   aavvaliderrorss       r2   _check_argspeczActionModule._check_argspecJ   sr    %m4# $' /#5"3	! ""
 *-&vtzz#F++ r3   c                 0   t        d'i d|j                  d      d|j                  d      d|j                  d      d|j                  d      d|j                  d	      d
|j                  d      d|j                  d      d|j                  d      d|j                  d      d|j                  d      d|j                  d      d|j                  d      d|j                  d      d|j                  d      d|j                  d      d|j                  d      d|j                  d      d|j                  d      d |j                  d!      d"|j                  d#      d$|j                  d%      d&|j                  d&      }|S )(Nconnected_linksr   custom_attributesr   r   device_typer   group_idr   hardware_revisionr   r   identity_storer   identity_store_idr   
ip_addressr   r   mdm_attributesr   r   portal_userr   
product_idr   
profile_idr   r   serial_numberr   software_revisionr    static_group_assignmentr!   static_profile_assignmentr#   r$    )r   get)r.   params
new_objects      r2   
get_objectzActionModule.get_object[   s    
"JJ'78
$jj);<
 

=1
 

<0	

 ZZ	*
 %jj);<
 zz$
 "::o6
 %jj):;
 zz+.
 

5!
 "::o6
 F#
 

<0
 zz+.
  zz+.!
" ZZ
+#
$ !**^4%
& %jj);<'
( %+JJ/F$G)
* '-jj1J&K+
, ::h'-

0 r3   c                    d| j                   _        t        t        |   ||      | _        d| j
                  d<   | j                          t        | j                   j                        }|j                  dd| j                  | j                   j                              j                  }| j
                  j                  t        |             | j
                  j                  |j                                | j
                  S )NFchanged)rY   	endpointscreate_end_point_task)familyfunctionrY   )ise_response)r?   diffr)   r&   runr-   rE   r	   r/   execr[   responseupdater   	exit_json)r.   tmp	task_varsiserf   r1   s        r2   rd   zActionModule.runv   s    

\44S)D"'YDJJOO,88,??4::??3  
 (	 	 	Dh78CMMO,||r3   )NN)__name__
__module____qualname__r*   rE   r[   rd   __classcell__)r1   s   @r2   r&   r&   >   s    ,"6 r3   r&   NrW   )
__future__r   r   r   r   __metaclass__ansible.plugins.actionr   Nansible_collections.ansible.utils.plugins.module_utils.common.argspec_validater   r(   ImportErroransible.errorsr   6ansible_collections.cisco.ise.plugins.plugin_utils.iser	   r
   r5   rg   r   r7   r8   r9   r:   r&   rW   r3   r2   <module>rw      s   A @ -& "& , "#    (6* e$ U#	
 %  5) U & %( E" e ' u U# E"  E"!" 5!#$ u%%& 5)'( #/)* !%& 1+, -6   H: H]  '!&'s   D6 6E E