
                             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\
5      r " S	 S
\
5      r " S S\
5      r " S S\
5      rg)z3Supporting libraries for the config-helper command.    )absolute_import)division)unicode_literals)config)credsc                       \ rS rSrSrS rSrg)ConfigHelperResult   a  The result of the gcloud config config-helper command that gets serialzied.

Attributes:
  credential: Credential, The OAuth2 credential information.
  configuration: Configuration, Local Cloud SDK configuration information.
  sentinels: Sentinels, Paths to various sentinel files.
c                     [        U5      U l        [        X#5      U l        [	        [
        R                  " 5       R                  5      U l        g N)	
Credential
credentialConfigurationconfiguration	Sentinelsr   Pathsconfig_sentinel_file	sentinels)selfr   active_configuration
propertiess       6lib/googlecloudsdk/command_lib/config/config_helper.py__init__ConfigHelperResult.__init__#   s4     ,DO&';HDv||~BBCDN    )r   r   r   N__name__
__module____qualname____firstlineno____doc__r   __static_attributes__ r   r   r	   r	      s    Dr   r	   c                   "    \ rS rSrSrSrS rSrg)r   )   zHolder for credential data.

Attributes:
  access_token: str, The current OAuth2 access token.
  token_expiry: str, The expiry time in UTC as an RFC3339 formatted string.
  id_token: str, The current OAuth2 identity token, if present.
z%Y-%m-%dT%H:%M:%SZc                    [         R                  " U5      (       a  UR                  U l        [        USS 5      nOUR                  U l        [        USS 5      nU(       a  UR                  [        R                  5      OS U l        [        USS 5      nU(       a  UR                  SS 5      nO[        USS 5      nX@l
        g )Ntoken_expiryexpirytoken_responseid_tokenid_tokenb64)c_credsIsOauth2ClientCredentialsaccess_tokengetattrtokenstrftimer   _EXPIRY_FORMATr'   getr*   )r   credr(   r)   r*   s        r   r   Credential.__init__3   s    ((..++dt^T2f**dtXt,f 7=
112$ 	 T#3T:N##J5h}d3hMr   )r.   r*   r'   N)r   r   r   r    r!   r2   r   r"   r#   r   r   r   r   )   s     (.r   r   c                       \ rS rSrSrS rSrg)r   K   zHolder for configuration data.

Attributes:
  active_configuration: str, The name of the active configuration.
  properties: {str: {str: str}}, A dict of section names to properties and
    values.
c                     Xl         X l        g r   r   r   )r   r   r   s      r   r   Configuration.__init__T   s     4 Or   r9   Nr   r#   r   r   r   r   K   s    !r   r   c                       \ rS rSrSrS rSrg)r   Y   zHolder for sentinel file locations.

Attributes:
  config_sentinel: str, The path to the sentinel that indicates changes were
    made to properties or the active configuration.
c                     Xl         g r   config_sentinel)r   r?   s     r   r   Sentinels.__init__a   s    *r   r>   Nr   r#   r   r   r   r   Y   s    +r   r   N)r!   
__future__r   r   r   googlecloudsdk.corer   googlecloudsdk.core.credentialsr   r,   objectr	   r   r   r   r#   r   r   <module>rE      sL     : &  ' & <D D D!F !	+ 	+r   