Sindbad~EG File Manager

Current Path : /lib64/python3.6/site-packages/sim_plugin/__pycache__/
Upload File :
Current File : //lib64/python3.6/site-packages/sim_plugin/__pycache__/simulator.cpython-36.pyc

3

�.'e8�@sNddlmZmZmZmZmZmZmZmZm	Z	ddl
mZGdd�dee�ZdS)�)	�	uri_parse�VERSION�Capabilities�INfs�IStorageAreaNetwork�search_property�Client�LsmError�ErrorNumber)�SimArrayc@s�eZdZdZdd�Zd�dd�Zd�dd�Zd�d	d
�Zd�dd�Ze	d
d��Z
d�dd�Zd�dd�Zd�dd�Z
d�dd�Zd�dd�Zd�dd�Zd�dd�Zd�dd�Zd�d d!�Zd�d"d#�Zd�d$d%�Zd�d&d'�Zd�d(d)�Zd�d*d+�Zd�d,d-�Zd�d.d/�Zd�d0d1�Zd�d2d3�Zd�d4d5�Zd�d6d7�Zd�d8d9�Zd�d:d;�Z d�d<d=�Z!d�d>d?�Z"d�d@dA�Z#d�dBdC�Z$d�dDdE�Z%d�dFdG�Z&d�dHdI�Z'd�dJdK�Z(d�dLdM�Z)d�dNdO�Z*d�dPdQ�Z+d�dRdS�Z,d�dTdU�Z-d�dVdW�Z.d�dXdY�Z/d�dZd[�Z0d�d]d^�Z1d�d_d`�Z2d�dadb�Z3d�dcdd�Z4d�dedf�Z5d�dgdh�Z6d�didj�Z7d�dkdl�Z8d�dmdn�Z9d�dodp�Z:d�dqdr�Z;d�dsdt�Z<d�dudv�Z=d�dwdx�Z>dde?j@fdydz�ZAe?j@fd{d|�ZBe?j@fd}d~�ZCe?j@fdd��ZDe?j@fd�d��ZEdS)��	SimPluginzU
    Simple class that implements enough to allow the framework to be exercised.
    cCsd|_d|_d|_dS)N)�uri�password�	sim_array)�self�r�!/usr/lib64/python3.6/simulator.py�__init__szSimPlugin.__init__rcCs^||_||_t|�}d|krNd|dkrN|dddk	rNt|dd|�|_ntd|�|_dS)NZ
parametersZ	statefile)r
rrrr)rr
rZtimeout�flagsZqprrr�plugin_register"szSimPlugin.plugin_registercCsdS)Nr)rrrrr�plugin_unregister1szSimPlugin.plugin_unregistercCs|jj||�S)N)r�
job_status)r�job_idrrrrr4szSimPlugin.job_statuscCs|jj||�S)N)r�job_free)rrrrrrr7szSimPlugin.job_freecCs|S)a
        Fake converter. SimArray already do SimData to LSM data convert.
        We move data convert to SimArray to make this sample plugin looks
        clean.
        But in real world, data converting is often handled by plugin itself
        rather than array.
        r)Zsim_datarrr�_sim_data_2_lsm:s	zSimPlugin._sim_data_2_lsmcCs|jj||�dS)N)r�time_out_set)rZmsrrrrrEszSimPlugin.time_out_setcCs|jj|�S)N)r�time_out_get)rrrrrrIszSimPlugin.time_out_getcCs�t�}|j�|jtjtj�|jtjtj�|jtjtj�|jtjtj�|jtjtj�|jtj	tj�|jtj
tj�|jtjtj�|jtjtj�|jtj
tj�|jtjtj�|S)N)rZ
enable_all�setZPOOLS_QUICK_SEARCHZUNSUPPORTEDZVOLUMES_QUICK_SEARCHZDISKS_QUICK_SEARCHZFS_QUICK_SEARCHZACCESS_GROUPS_QUICK_SEARCHZNFS_EXPORTS_QUICK_SEARCHZTARGET_PORTS_QUICK_SEARCHZ.VOLUME_PHYSICAL_DISK_CACHE_UPDATE_SYSTEM_LEVELZ,VOLUME_WRITE_CACHE_POLICY_UPDATE_IMPACT_READZ0VOLUME_WRITE_CACHE_POLICY_UPDATE_WB_IMPACT_OTHERZ,VOLUME_READ_CACHE_POLICY_UPDATE_IMPACT_WRITE)r�systemrZrcrrr�capabilitiesLs(zSimPlugin.capabilitiescCsdtfS)NzStorage simulator)r)rrrrr�plugin_infobszSimPlugin.plugin_infocCs|jj�}dd�|D�S)NcSsg|]}tj|��qSr)rr)�.0�srrr�
<listcomp>gsz%SimPlugin.systems.<locals>.<listcomp>)r�systems)rrZsim_syssrrrr$es
zSimPlugin.systemscCs|jj||�S)N)r�system_read_cache_pct_update)rrZread_pctrrrrr%isz&SimPlugin.system_read_cache_pct_updateNcCs"|jj|�}tdd�|D�||�S)NcSsg|]}tj|��qSr)rr)r!�prrrr#osz#SimPlugin.pools.<locals>.<listcomp>)r�poolsr)r�
search_key�search_valuerZ	sim_poolsrrrr'lszSimPlugin.poolscCs |jj�}tdd�|D�||�S)NcSsg|]}tj|��qSr)rr)r!�vrrrr#usz%SimPlugin.volumes.<locals>.<listcomp>)r�volumesr)rr(r)r�sim_volsrrrr+rs
zSimPlugin.volumescCs |jj�}tdd�|D�||�S)NcSsg|]}tj|��qSr)rr)r!�drrrr#{sz#SimPlugin.disks.<locals>.<listcomp>)r�disksr)rr(r)rZ	sim_disksrrrr.xs
zSimPlugin.diskscCs |jj|j||||�}tj|�S)N)r�
volume_create�idrr)r�poolZvolume_name�
size_bytesZprovisioningr�sim_volrrrr/~szSimPlugin.volume_createcCs|jj|j|�S)N)r�
volume_deleter0)r�volumerrrrr4�szSimPlugin.volume_deletecCs|jj|j||�}tj|�S)N)r�
volume_resizer0rr)rr5�new_size_bytesrr3rrrr6�szSimPlugin.volume_resizecCs,|dk	r|j}n|j}|jj|||j||�S)N)r0Zpool_idr�volume_replicate)rr1�rep_type�
volume_src�namerZdst_pool_idrrrr8�s
zSimPlugin.volume_replicatecCs|jj|j|�S)N)r�!volume_replicate_range_block_sizer0)rrrrrrr<�sz+SimPlugin.volume_replicate_range_block_sizecCs|jj||j|j||�S)N)r�volume_replicate_ranger0)rr9r:Zvolume_destZrangesrrrrr=�sz SimPlugin.volume_replicate_rangecCs|jj|j|�S)N)r�
volume_enabler0)rr5rrrrr>�szSimPlugin.volume_enablecCs|jj|j|�S)N)r�volume_disabler0)rr5rrrrr?�szSimPlugin.volume_disablecCs |jj�}tdd�|D�||�S)NcSsg|]}tj|��qSr)rr)r!�arrrr#�sz+SimPlugin.access_groups.<locals>.<listcomp>)rZagsr)rr(r)rZsim_agsrrr�
access_groups�s
zSimPlugin.access_groupscCs |jj||||j|�}tj|�S)N)r�access_group_creater0rr)rr;�init_id�	init_typerr�sim_agrrrrB�szSimPlugin.access_group_createcCs|jj|j|�S)N)r�access_group_deleter0)r�access_grouprrrrrF�szSimPlugin.access_group_deletecCs|jj|j|||�}tj|�S)N)r�access_group_initiator_addr0rr)rrGrCrDrrErrrrH�sz$SimPlugin.access_group_initiator_addcCs|jj|j|||�}tj|�S)N)r�access_group_initiator_deleter0rr)rrGrCrDrrErrrrI�sz'SimPlugin.access_group_initiator_deletecCs|jj|j|j|�S)N)r�volume_maskr0)rrGr5rrrrrJ�szSimPlugin.volume_maskcCs|jj|j|j|�S)N)r�
volume_unmaskr0)rrGr5rrrrrK�szSimPlugin.volume_unmaskcCs|jj|j|�}dd�|D�S)NcSsg|]}tj|��qSr)rr)r!r*rrrr#�sz@SimPlugin.volumes_accessible_by_access_group.<locals>.<listcomp>)r�"volumes_accessible_by_access_groupr0)rrGrr,rrrrL�s
z,SimPlugin.volumes_accessible_by_access_groupcCs|jj|j|�}dd�|D�S)NcSsg|]}tj|��qSr)rr)r!r*rrrr#�sz=SimPlugin.access_groups_granted_to_volume.<locals>.<listcomp>)r�access_groups_granted_to_volumer0)rr5rr,rrrrM�s
z)SimPlugin.access_groups_granted_to_volumecCs:|r$|r$|dks|dkr$ttjd��|jj||||||�S)Nz?out_user and out_password only supported if inbound is supplied)r	r
ZINVALID_ARGUMENTr�iscsi_chap_auth)rrCZin_userZin_passwordZout_userZout_passwordrrrrrN�szSimPlugin.iscsi_chap_authcCs|jj|j|�S)N)r�volume_child_dependencyr0)rr5rrrrrO�sz!SimPlugin.volume_child_dependencycCs|jj|j|�S)N)r�volume_child_dependency_rmr0)rr5rrrrrP�sz$SimPlugin.volume_child_dependency_rmcCs |jj�}tdd�|D�||�S)NcSsg|]}tj|��qSr)rr)r!�frrrr#�sz SimPlugin.fs.<locals>.<listcomp>)r�fsr)rr(r)rZsim_fssrrrrR�s
zSimPlugin.fscCs|jj|j||�}tj|�S)N)r�	fs_creater0rr)rr1r;r2r�sim_fsrrrrS�szSimPlugin.fs_createcCs|jj|j|�S)N)r�	fs_deleter0)rrRrrrrrU�szSimPlugin.fs_deletecCs|jj|j||�}tj|�S)N)r�	fs_resizer0rr)rrRr7rrTrrrrV�szSimPlugin.fs_resizecCs2|dkr|jj|j|d|�S|jj|j||j|�S)N)r�fs_cloner0)rZsrc_fsZdest_fs_name�snapshotrrrrrW�s
zSimPlugin.fs_clonecCs6|dkr|jj|j||d|�S|jj|j|||j|�S)N)r�
fs_file_cloner0)rrRZ
src_file_nameZdest_file_namerXrrrrrY�s
zSimPlugin.fs_file_clonecCs|jj|j|�}dd�|D�S)NcSsg|]}tj|��qSr)rr)r!r"rrrr#sz*SimPlugin.fs_snapshots.<locals>.<listcomp>)r�fs_snapshotsr0)rrRrZ	sim_snapsrrrrZszSimPlugin.fs_snapshotscCs|jj|j||�S)N)r�fs_snapshot_creater0)rrRZ
snapshot_namerrrrr[szSimPlugin.fs_snapshot_createcCs|jj|j|j|�S)N)r�fs_snapshot_deleter0)rrRrXrrrrr\
szSimPlugin.fs_snapshot_deleteFcCs|jj|j|j||||�S)N)r�fs_snapshot_restorer0)rrRrX�filesZ
restore_filesZ	all_filesrrrrr]szSimPlugin.fs_snapshot_restorecCs|jj|j||�S)N)r�fs_child_dependencyr0)rrRr^rrrrr_szSimPlugin.fs_child_dependencycCs|jj|j||�S)N)r�fs_child_dependency_rmr0)rrRr^rrrrr`sz SimPlugin.fs_child_dependency_rmcCsdgS)NZstandardr)rrrrr�export_authszSimPlugin.export_authcCs"|jj|�}tdd�|D�||�S)NcSsg|]}tj|��qSr)rr)r!�errrr# sz%SimPlugin.exports.<locals>.<listcomp>)r�exportsr)rr(r)rZsim_expsrrrrcszSimPlugin.exportscCs*|jj|||||||||	dd�
}tj|�S)Nr)r)rZ	fs_exportrr)rZfs_idZexport_pathZ	root_listZrw_listZro_listZanon_uidZanon_gidZ	auth_typeZoptionsrZsim_exprrr�	export_fs#s
zSimPlugin.export_fscCs|jj|j|�S)N)rZfs_unexportr0)rZexportrrrr�
export_remove*szSimPlugin.export_removecCs |jj�}tdd�|D�||�S)NcSsg|]}tj|��qSr)rr)r!�trrrr#0sz*SimPlugin.target_ports.<locals>.<listcomp>)r�target_portsr)rr(r)rZsim_tgtsrrrrg-s
zSimPlugin.target_portscCs|jj|�S)N)r�volume_raid_info)rr5rrrrrh3szSimPlugin.volume_raid_infocCs|jj|�S)N)r�pool_member_info)rr1rrrrri6szSimPlugin.pool_member_infocCs|jj|�S)N)r�volume_raid_create_cap_get)rrrrrrrj9sz$SimPlugin.volume_raid_create_cap_getcCs|jj||||�S)N)r�volume_raid_create)rr;Z	raid_typer.Z
strip_sizerrrrrk<szSimPlugin.volume_raid_createcCs|jj|�S)N)r�volume_ident_led_on)rr5rrrrrlAszSimPlugin.volume_ident_led_oncCs|jj|�S)N)r�volume_ident_led_off)rr5rrrrrmDszSimPlugin.volume_ident_led_offcCs |jj�}tdd�|D�||�S)NcSsg|]}tj|��qSr)rr)r!�brrrr#Ksz'SimPlugin.batteries.<locals>.<listcomp>)r�	batteriesr)rr(r)rZ
sim_batteriesrrrroGs
zSimPlugin.batteriescCs|jj|�S)N)r�volume_cache_info)rr5rrrrrpNszSimPlugin.volume_cache_infocCs|jj||�S)N)r�!volume_physical_disk_cache_update)rr5ZpdcrrrrrqQsz+SimPlugin.volume_physical_disk_cache_updatecCs|jj||�S)N)r�volume_read_cache_policy_update)rr5ZrcprrrrrrUsz)SimPlugin.volume_read_cache_policy_updatecCs|jj||�S)N)r� volume_write_cache_policy_update)rr5ZwcprrrrrsYsz*SimPlugin.volume_write_cache_policy_update)r)r)r)r)r)r)r)r)r)r)NNr)NNr)NNr)r)r)r)r)r)r)r)r)NNr)r)r)r)r)r)r)r)r)r)r)r)NNr)r)r)r)Nr)Nr)r)r)r)Fr)r)r)r)NNr)r)r)NNr)r)r)r)r)r)r)F�__name__�
__module__�__qualname__�__doc__rrrrr�staticmethodrrrrr r$r%r'r+r.r/r4r6r8r<r=r>r?rArBrFrHrIrJrKrLrMrNrOrPrRrSrUrVrWrYrZr[r\r]r_r`rarcrdrergrhrirjrkrlrmrZ	FLAG_RSVDrorprqrrrsrrrrrs�






























	
























rN)
Zlsmrrrrrrrr	r
Zsim_plugin.simarrayrrrrrr�<module>s,

Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists