
                         >    S r SSKJr  SS jrS	S jr " S S\5      rg)
z2Utilities for Cloud Monitoring Metrics Scopes API.    )apisc                 .    [         R                  " SSU S9$ )N
monitoringv1no_http)r   GetClientInstancer   s    7lib/googlecloudsdk/api_lib/monitoring/metrics_scopes.pyr	   r	      s    			dG	DD    Nc                 @    U =(       d
    [        5       n U R                  $ N)r	   MESSAGES_MODULE)clients    r
   GetMessagesModuler      s    (&(&			r   c                   @    \ rS rSrSrSS jrS rS rS rS r	S	 r
S
rg)MetricsScopeClient   zAClient for the Metrics Scope service in the Cloud Monitoring API.Nc                     U=(       d
    [        5       U l        U=(       d    [        U5      U l        U R                  R                  U l        U R                  R                  U l        g r   )r	   r   r   messageslocations_global_metricsScopes_ms_service'locations_global_metricsScopes_projects_mp_service)selfr   r   s      r
   __init__MetricsScopeClient.__init__!   sH    /-/DK9 1& 9DM{{AAD{{JJDr   c                 (    SUR                  5       -   $ )Nzlocations/global/metricsScopes/)Name)r   metrics_scope_refs     r
   MetricsScopeName#MetricsScopeClient.MetricsScopeName'   s    ,/@/E/E/GGGr   c                 L    U R                  U5      S-   UR                  5       -   $ )Nz
/projects/)r    r   )r   r   monitored_project_refs      r
   MonitoredProjectName'MetricsScopeClient.MonitoredProjectName*   s3      )*,A,F,F,HI Ir   c                     U R                   R                  UR                  5       S9nU R                  R	                  U5      $ )z9List the Metrics Scopes monitoring the specified project.)monitoredResourceContainer)r   PMonitoringLocationsGlobalMetricsScopesListMetricsScopesByMonitoredProjectRequestRelativeNamer   #ListMetricsScopesByMonitoredProject)r   project_refrequests      r
   ListMetricsScopeClient.List.   sG     	XX'2'?'?'A 	Y 	C  ??HHr   c                     U R                   R                  5       nU R                  UU5      Ul        U R                   R	                  UU R                  U5      S9nU R                  R                  U5      $ )z9Create a Monitored Project in a Monitoring Metrics Scope.)monitoredProjectparent)r   MonitoredProjectr$   name;MonitoringLocationsGlobalMetricsScopesProjectsCreateRequestr    r   Create)r   r   r#   mpr,   s        r
   r5   MetricsScopeClient.Create6   sv    		'	'	)B''(9(=?BG 		D	D(():; 
E 
= 
 ""7++r   c                     U R                   R                  U R                  UU5      S9nU R                  R	                  U5      $ )z;Delete a Monitored Project from a Monitoring Metrics Scope.)r3   )r   ;MonitoringLocationsGlobalMetricsScopesProjectsDeleteRequestr$   r   Delete)r   r   r#   r,   s       r
   r:   MetricsScopeClient.DeleteB   sP     		D	D**+<+@B 
E 
C 
 ""7++r   )r   r   r   r   )NN)__name__
__module____qualname____firstlineno____doc__r   r    r$   r-   r5   r:   __static_attributes__ r   r
   r   r      s'    IKHII
,,r   r   )Fr   )r@   googlecloudsdk.api_lib.utilr   r	   r   objectr   rB   r   r
   <module>rE      s&    9 -E 
+, +,r   