B
    `                 @   s   d Z ddlmZmZmZ eZdZeddddddd	d
ddd
Z	yddl
mZ ddlZdZW n ek
rp   dZY nX dZdd Zdd ZdddZdS )z
Common methods and constants
    )absolute_importdivisionprint_functionF   i  i@B i ʚ;l    J)l     I5 l     NZol     @=7M.cl      B3v^!< )
bytesbkbmbgbtbZpbZebZzbZyb)ElementFactoryNTz20.11.0c               C   s   t S )N)
HAS_SF_SDK r   r   o/home/dcms/DCMS/lib/python3.7/site-packages/ansible_collections/netapp/elementsw/plugins/module_utils/netapp.py
has_sf_sdk?   s    r   c            	   C   s0   t t dddt dddgdt dddgdddS )	NTstr)requiredtypeuser)r   r   aliasespass)r   r   r   Zno_log)hostnameusernamepassword)dictr   r   r   r   ontap_sf_host_argument_specC   s    
r   c       
   
   C   s   |d kr| j d }| j d }| j d }t }|d k	r<||d< |d k	rL||d< ts\| jdd ytj|||f|}W nv tjjtjj	fk
r }	 z|r|	| jt
|	d W d d }	~	X Y n2 tk
r }	 ztdt
|	 W d d }	~	X Y nX |S )	Nr   r   r   porttimeoutz+the python SolidFire SDK module is required)msgz"Unable to create SF connection: %s)paramsr   r   Z	fail_jsonr   create	solidfirecommonZApiConnectionErrorZApiServerErrorrepr	Exception)
moduler   r   Zraise_on_connection_errorr   r   r   options
return_valexcr   r   r   create_sf_connectionL   s(    


 "r)   )NNFN)__doc__
__future__r   r   r   r   __metaclass__r   r   ZSF_BYTE_MAPZsolidfire.factoryr   Zsolidfire.commonr!   ImportErrorZCOLLECTION_VERSIONr   r   r)   r   r   r   r   <module>!   s0   
	