
                             S r SSKJr  SSKJr  SSKJr  SSKJr  SSKJr  SSK	J
r
  SSKJr  SS	KJr  SS
KJr  SrSrS rS rS rg)zSpanner SSD caches API helper.    )absolute_import)division)unicode_literals)
list_pager)apis)errors)labels_util)
properties)	resourcesspannerv1c                    [         R                  " [        [        5      n[         R                  " [        [        5      n[
        R                  R                  U S[        R                  R                  R                  R                  0SS9nUR                  UR                  5       S9n[        R                   " UR"                  USSS9$ )z&List SSD caches in the instanceConfig.
projectsIdz spanner.projects.instanceConfigsparams
collection)parent	ssdCachespageSize)fieldbatch_size_attribute)r   GetClientInstance	_API_NAME_API_VERSIONGetMessagesModuler   REGISTRYParser
   VALUEScoreproject	GetOrFail2SpannerProjectsInstanceConfigsSsdCachesListRequestRelativeNamer   YieldFromList"projects_instanceConfigs_ssdCaches)configclientmsgsrefreqs        0lib/googlecloudsdk/api_lib/spanner/ssd_caches.pyListr,       s    !!)\:&				<	8$  J--22::DDE3 	! 	#
 	?? 	@ 	# 
	!	!//	%	
     c                    [         R                  " [        [        5      n[         R                  " [        [        5      n[
        R                  R                  U [        R                  R                  R                  R                  US.SS9nUR                  UR                  5       S9nUR                  R!                  U5      $ )z4Gets the SSD cache in the specified instance config.r   instanceConfigsId*spanner.projects.instanceConfigs.ssdCachesr   name)r   r   r   r   r   r   r   r   r
   r   r   r    r!   1SpannerProjectsInstanceConfigsSsdCachesGetRequestr#   r%   Get)	ssd_cacher&   r'   r(   r)   r*   s         r+   r5   r5   4   s    !!)\:&				<	8$  "))..66@@% > 	! 	# 	>> 	? 	# 
	2	2	6	6s	;;r-   c           	        ^^^ [         R                  " [        [        5      m[         R                  " [        [        5      m[
        R                  R                  U R                  [        R                  R                  R                  R                  U R                  S.SS9mTR                  TR!                  5       S9n/ nU R"                  b"  U R"                  Ul        UR'                  S5        U R(                  b"  U R(                  Ul        UR'                  S5        UUU4S jn[,        R.                  " U TR                  R0                  U5      nUR2                  (       a"  UR4                  Ul        UR'                  S5        U(       d  [6        R8                  " S	5      eTR;                  TR!                  5       TR=                  US
R?                  U5      S9S9nTR@                  RC                  U5      $ )zUpdate an SSD cache.r/   r1   r   r2   size_gibdisplay_namec                     > TR                  TR                  5       S9n TR                  R                  U 5      R                  $ )Nr2   )r4   r#   r%   r5   labels)r*   r'   r(   r)   s    r+   	GetLabelsPatch.<locals>.GetLabels^   sD    

@
@ A C 4488=DDDr-   r;   zNo updates requested.,)ssdCache
updateMask)r3   updateSsdCacheRequest)"r   r   r   r   r   r   r   r   cache_idr
   r   r   r    r!   r&   SsdCacher#   r8   sizeGibappendr9   displayNamer	   ProcessUpdateArgsLazyLabelsValueneeds_updater;   r   NoFieldsSpecifiedError3SpannerProjectsInstanceConfigsSsdCachesPatchRequestUpdateSsdCacheRequestjoinr%   Patch)	argsr6   update_maskr<   labels_updater*   r'   r(   r)   s	         @@@r+   rN   rN   F   s   !!)\:&				<	8$  
mm"))..66@@#{{ > 	! 	# mm!1!1!3m4)+	]]Iz"	" --I~&E 33
DMM%%y- $++Ix 	

'
'(?
@@@@ 66+)> 7  	A 	# 
	2	2	8	8	==r-   N)__doc__
__future__r   r   r   apitools.base.pyr   googlecloudsdk.api_lib.utilr   googlecloudsdk.command_lib.air   $googlecloudsdk.command_lib.util.argsr	   googlecloudsdk.corer
   r   r   r   r,   r5   rN    r-   r+   <module>rZ      s>    % &  ' ' , 0 < * )	(<$/>r-   