
    7/                    0   d Z ddlmZ ddlmZ ddlmZ ddlmZ dZ	 G d dej                        Z G d	 d
ej                        Z G d dej                        Z G d dej                        Z G d dej                        Z G d dej                        Z G d dej                        Z G d dej                        Z G d dej                        Z G d dej                        Z G d dej                        Z G d dej                        Z G d d ej                        Z G d! d"ej                        Z G d# d$ej                        Z G d% d&ej                        Z G d' d(ej                        Z G d) d*ej                        Z G d+ d,ej                        Z G d- d.ej                        Z G d/ d0ej                        Z G d1 d2ej                        Z  G d3 d4ej                        Z! G d5 d6ej                        Z" G d7 d8ej                        Z# G d9 d:ej                        Z$ G d; d<ej                        Z% G d= d>ej                        Z& G d? d@ej                        Z' G dA dBej                        Z( G dC dDej                        Z) G dE dFej                        Z* G dG dHej                        Z+ G dI dJej                        Z, G dK dLej                        Z- G dM dNej                        Z. G dO dPej                        Z/ G dQ dRej                        Z0 G dS dTej                        Z1 G dU dVej                        Z2 G dW dXej                        Z3 G dY dZej                        Z4 G d[ d\ej                        Z5 G d] d^ej                        Z6 G d_ d`ej                        Z7 G da dbej                        Z8 G dc ddej                        Z9 G de dfej                        Z: G dg dhej                        Z; G di djej                        Z< G dk dlej                        Z= G dm dnej                        Z> G do dpej                        Z? G dq drej                        Z@ G ds dtej                        ZA G du dvej                        ZB G dw dxej                        ZC G dy dzej                        ZD G d{ d|ej                        ZE G d} d~ej                        ZF G d dej                        ZG G d dej                        ZH G d dej                        ZI G d dej                        ZJ G d dej                        ZK G d dej                        ZL G d dej                        ZM G d dej                        ZN G d dej                        ZO G d dej                        ZP G d dej                        ZQ G d dej                        ZR G d dej                        ZS G d dej                        ZT G d dej                        ZU G d dej                        ZV G d dej                        ZW G d dej                        ZX G d dej                        ZY G d dej                        ZZ G d dej                        Z[ G d dej                        Z\ G d dej                        Z] G d dej                        Z^ G d dej                        Z_ G d dej                        Z` G d dej                        Za G d dej                        Zb G d dej                        Zc G d dej                        Zd G d dej                        Ze G d dej                        Zf G d dej                        Zg G d dej                        Zh G dÄ dej                        Zi G dń dej                        Zj G dǄ dej                        Zk G dɄ dej                        Zl G d˄ dej                        Zm G d̈́ dej                        Zn G dτ dej                        Zo G dф dej                        Zp G dӄ dej                        Zq G dՄ dej                        Zr G dׄ dej                        Zs G dل dej                        Zt G dۄ dej                        Zu G d݄ dej                        Zv G d߄ dej                        Zw G d dej                        Zx G d dej                        Zy G d dej                        Zz G d dej                        Z{ G d dej                        Z| G d dej                        Z} G d dej                        Z~ G d dej                        Z G d dej                        Z G d dej                        Z G d dej                        Z G d dej                        Z G d dej                        Z G d dej                        Z G d dej                        Z G d d ej                        Z G d dej                        Z G d dej                        Z G d dej                        Z G d dej                        Z ej                  e~d	d
        ej                  e~j                  dd        ej                  e~j                  dd       y(  zGenerated message classes for netapp version v1.

Google Cloud NetApp Volumes is a fully-managed, cloud-based data storage
service that provides advanced data management capabilities and highly
scalable performance with global availability.
    )absolute_import)messages)encoding)extra_typesnetappc                      e Zd ZdZ G d dej
                        Z ej                  d       G d dej                               Z
 ej                  dd	      Z ej                  d
      Z ej                  dd	      Z ej                  d      Z ej                  d      Z ej                  d      Z ej                  d      Z ej                  d      Z ej                  d      Z ej                  d      Z ej.                  dd      Z ej                  d      Z ej                  d      Z ej                  d      Z ej                  d      Z ej                  d      Z ej                  d      Z ej                  dd	      Z ej                  d      Z  ejB                  dd      Z" ej                  d      Z# ej                  d      Z$y) ActiveDirectorya  ActiveDirectory is the public representation of the active directory
  config.

  Enums:
    StateValueValuesEnum: Output only. The state of the AD.

  Messages:
    LabelsValue: Labels for the active directory.

  Fields:
    administrators: Optional. Users to be added to the Built-in
      Admininstrators group.
    aesEncryption: If enabled, AES encryption will be enabled for SMB
      communication.
    backupOperators: Optional. Users to be added to the Built-in Backup
      Operator active directory group.
    createTime: Output only. Create time of the active directory.
    description: Description of the active directory.
    dns: Required. Comma separated list of DNS server IP addresses for the
      Active Directory domain.
    domain: Required. Name of the Active Directory domain
    encryptDcConnections: If enabled, traffic between the SMB server to Domain
      Controller (DC) will be encrypted.
    kdcHostname: Name of the active directory machine. This optional parameter
      is used only while creating kerberos volume
    kdcIp: KDC server IP address for the active directory machine.
    labels: Labels for the active directory.
    ldapSigning: Specifies whether or not the LDAP traffic needs to be signed.
    name: Identifier. The resource name of the active directory. Format: `proj
      ects/{project_number}/locations/{location_id}/activeDirectories/{active_
      directory_id}`.
    netBiosPrefix: Required. NetBIOSPrefix is used as a prefix for SMB server
      name.
    nfsUsersWithLdap: If enabled, will allow access to local users and LDAP
      users. If access is needed for only LDAP users, it has to be disabled.
    organizationalUnit: The Organizational Unit (OU) within the Windows Active
      Directory the user belongs to.
    password: Required. Password of the Active Directory domain administrator.
    securityOperators: Optional. Domain users to be given the
      SeSecurityPrivilege.
    site: The Active Directory site the service will limit Domain Controller
      discovery too.
    state: Output only. The state of the AD.
    stateDetails: Output only. The state details of the Active Directory.
    username: Required. Username of the Active Directory domain administrator.
  c                   0    e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zy
)$ActiveDirectory.StateValueValuesEnuma  Output only. The state of the AD.

    Values:
      STATE_UNSPECIFIED: Unspecified Active Directory State
      CREATING: Active Directory State is Creating
      READY: Active Directory State is Ready
      UPDATING: Active Directory State is Updating
      IN_USE: Active Directory State is In use
      DELETING: Active Directory State is Deleting
      ERROR: Active Directory State is Error
      DIAGNOSING: Active Directory State is Diagnosing.
    r                        N)__name__
__module____qualname____doc__STATE_UNSPECIFIEDCREATINGREADYUPDATINGIN_USEDELETINGERROR
DIAGNOSING     Ilib/googlecloudsdk/generated_clients/apis/netapp/v1/netapp_v1_messages.pyStateValueValuesEnumr   C   s2     HEHFHEJr    r"   additionalPropertiesc                   d    e Zd ZdZ G d dej
                        Z ej                  ddd      Zy)ActiveDirectory.LabelsValuezLabels for the active directory.

    Messages:
      AdditionalProperty: An additional property for a LabelsValue object.

    Fields:
      additionalProperties: Additional properties of type LabelsValue
    c                   X    e Zd ZdZ ej
                  d      Z ej
                  d      Zy).ActiveDirectory.LabelsValue.AdditionalPropertyAn additional property for a LabelsValue object.

      Fields:
        key: Name of the additional property.
        value: A string attribute.
      r   r   Nr   r   r   r   	_messagesStringFieldkeyvaluer   r    r!   AdditionalPropertyr'   d   -    
 "I!!!$c#i##A&er    r.   r   TrepeatedN	r   r   r   r   r*   Messager.   MessageFieldr#   r   r    r!   LabelsValuer%   Y   4    	'Y.. 	' 29112FTXYr    r5   r   Tr0   r   r   r   r   r   r      	   
                                       N)%r   r   r   r   r*   Enumr"   r   MapUnrecognizedFieldsr3   r5   r+   administratorsBooleanFieldaesEncryptionbackupOperators
createTimedescriptiondnsdomainencryptDcConnectionskdcHostnamekdcIpr4   labelsldapSigningnamenetBiosPrefixnfsUsersWithLdaporganizationalUnitpasswordsecurityOperatorssite	EnumFieldstatestateDetailsusernamer   r    r!   r	   r	      s   -^Y^^ , "8!!"89ZI%% Z :Z. )9((T:.()((+-)I))!d;/$y$$Q'*%	%%a(+	a # 9  #&///2%	%%a(+
)


#%!9!!-4&&	&&r*+			r	"$')''+-+Y++B/,y,,R0"Y""2&(+i++B>			r	"$
)

4b
9%&&&r*,"Y""2&(r    r	   c                      e Zd ZdZ G d dej
                        Z G d dej
                        Z ej                  d       G d dej                               Z ej                  d	      Z ej                  dd
      Z ej                   d      Z ej                  d      Z ej                  d      Z ej                  d      Z ej*                  dd      Z ej                  d      Z ej0                  d      Z ej0                  d      Z ej                  d      Z ej                  d      Z ej                  dd      Z ej                  d      Z ej                   d      Zy)BackupaF  A NetApp Backup.

  Enums:
    BackupTypeValueValuesEnum: Output only. Type of backup, manually created
      or created by a backup policy.
    StateValueValuesEnum: Output only. The backup state.

  Messages:
    LabelsValue: Resource labels to represent user provided metadata.

  Fields:
    backupRegion: Output only. Region in which backup is stored. Format:
      `projects/{project_id}/locations/{location}`
    backupType: Output only. Type of backup, manually created or created by a
      backup policy.
    chainStorageBytes: Output only. Total size of all backups in a chain in
      bytes = baseline backup size + sum(incremental backup size)
    createTime: Output only. The time when the backup was created.
    description: A description of the backup with 2048 characters or less.
      Requests with longer descriptions will be rejected.
    enforcedRetentionEndTime: Output only. The time until which the backup is
      not deletable.
    labels: Resource labels to represent user provided metadata.
    name: Identifier. The resource name of the backup. Format: `projects/{proj
      ect_id}/locations/{location}/backupVaults/{backup_vault_id}/backups/{bac
      kup_id}`.
    satisfiesPzi: Output only. Reserved for future use
    satisfiesPzs: Output only. Reserved for future use
    sourceSnapshot: If specified, backup will be created from the given
      snapshot. If not specified, there will be a new snapshot taken to
      initiate the backup creation. Format: `projects/{project_id}/locations/{
      location}/volumes/{volume_id}/snapshots/{snapshot_id}`
    sourceVolume: Volume full name of this backup belongs to. Format:
      `projects/{projects_id}/locations/{location}/volumes/{volume_id}`
    state: Output only. The backup state.
    volumeRegion: Output only. Region of the volume from which the backup was
      created. Format: `projects/{project_id}/locations/{location}`
    volumeUsageBytes: Output only. Size of the file system when the backup was
      created. When creating a new volume from the backup, the volume capacity
      will have to be at least as big.
  c                       e Zd ZdZdZdZdZy) Backup.BackupTypeValueValuesEnumzOutput only. Type of backup, manually created or created by a backup
    policy.

    Values:
      TYPE_UNSPECIFIED: Unspecified backup type.
      MANUAL: Manual backup type.
      SCHEDULED: Scheduled backup type.
    r   r   r   N)r   r   r   r   TYPE_UNSPECIFIEDMANUAL	SCHEDULEDr   r    r!   BackupTypeValueValuesEnumrc      s     FIr    rg   c                   ,    e Zd ZdZdZdZdZdZdZdZ	dZ
y	)
Backup.StateValueValuesEnuma  Output only. The backup state.

    Values:
      STATE_UNSPECIFIED: State not set.
      CREATING: Backup is being created. While in this state, the snapshot for
        the backup point-in-time may not have been created yet, and so the
        point-in-time may not have been fixed.
      UPLOADING: Backup is being uploaded. While in this state, none of the
        writes to the volume will be included in the backup.
      READY: Backup is available for use.
      DELETING: Backup is being deleted.
      ERROR: Backup is not valid and cannot be used for creating new volumes
        or restoring existing volumes.
      UPDATING: Backup is being updated.
    r   r   r   r   r   r   r   N)r   r   r   r   r   r   	UPLOADINGr   r   r   r   r   r    r!   r"   ri      s-     HIEHEHr    r"   r#   c                   d    e Zd ZdZ G d dej
                        Z ej                  ddd      Zy)Backup.LabelsValueResource labels to represent user provided metadata.

    Messages:
      AdditionalProperty: An additional property for a LabelsValue object.

    Fields:
      additionalProperties: Additional properties of type LabelsValue
    c                   X    e Zd ZdZ ej
                  d      Z ej
                  d      Zy)%Backup.LabelsValue.AdditionalPropertyr(   r   r   Nr)   r   r    r!   r.   ro      r/   r    r.   r   Tr0   Nr2   r   r    r!   r5   rl      r6   r    r5   r   r   r   r   r   r   r   r7   r8   r9   r:   r;   r<   r=   r>   N) r   r   r   r   r*   rF   rg   r"   r   rG   r3   r5   r+   backupRegionr\   
backupTypeIntegerFieldchainStorageBytesrL   rM   enforcedRetentionEndTimer4   rS   rU   rI   satisfiesPzisatisfiesPzssourceSnapshotsourceVolumer]   volumeRegionvolumeUsageBytesr   r    r!   ra   ra      su   (T).. Y^^ 0 "8!!"89ZI%% Z :Z. '&&q),"y""#>B*,i,,Q/$y$$Q'*%	%%a(+2Y2215!9!!-3&			q	!$'''*,'''+,(9((,.&&&r*,
)

4b
9%&&&r*,+Y++B/r    ra   c                       e Zd ZdZ ej
                  d      Z ej                  dd      Z ej                  d      Z	 ej                  d      Zy)	BackupConfiga  BackupConfig contains backup related config on a volume.

  Fields:
    backupChainBytes: Output only. Total size of all backups in a chain in
      bytes = baseline backup size + sum(incremental backup size).
    backupPolicies: Optional. When specified, schedule backups will be created
      based on the policy configuration.
    backupVault: Optional. Name of backup vault. Format:
      projects/{project_id}/locations/{location}/backupVaults/{backup_vault_id
      }
    scheduledBackupEnabled: Optional. When set to true, scheduled backup is
      enabled on the volume. This field should be nil when there's no backup
      policy attached.
  r   r   Tr0   r   r   N)r   r   r   r   r*   rr   backupChainBytesr+   backupPoliciesbackupVaultrI   scheduledBackupEnabledr   r    r!   r|   r|     sU     ,Y++A.(9((T:.%	%%a(+1911!4r    r|   c                      e Zd ZdZ G d dej
                        Z ej                  d       G d dej                               Z
 ej                  dej                  j                        Z ej                  d	      Z ej                  d
ej                  j                        Z ej                  d      Z ej&                  d      Z ej*                  dd      Z ej                  dej                  j                        Z ej                  d      Z ej2                  dd      Z ej                  dej                  j                        Zy)BackupPolicya!  Backup Policy.

  Enums:
    StateValueValuesEnum: Output only. The backup policy state.

  Messages:
    LabelsValue: Resource labels to represent user provided metadata.

  Fields:
    assignedVolumeCount: Output only. The total number of volumes assigned by
      this backup policy.
    createTime: Output only. The time when the backup policy was created.
    dailyBackupLimit: Number of daily backups to keep. Note that the minimum
      daily backup limit is 2.
    description: Description of the backup policy.
    enabled: If enabled, make backups automatically according to the
      schedules. This will be applied to all volumes that have this policy
      attached and enforced on volume level. If not specified, default is
      true.
    labels: Resource labels to represent user provided metadata.
    monthlyBackupLimit: Number of monthly backups to keep. Note that the sum
      of daily, weekly and monthly backups should be greater than 1.
    name: Identifier. The resource name of the backup policy. Format: `project
      s/{project_id}/locations/{location}/backupPolicies/{backup_policy_id}`.
    state: Output only. The backup policy state.
    weeklyBackupLimit: Number of weekly backups to keep. Note that the sum of
      daily, weekly and monthly backups should be greater than 1.
  c                   (    e Zd ZdZdZdZdZdZdZdZ	y)	!BackupPolicy.StateValueValuesEnumaW  Output only. The backup policy state.

    Values:
      STATE_UNSPECIFIED: State not set.
      CREATING: BackupPolicy is being created.
      READY: BackupPolicy is available for use.
      DELETING: BackupPolicy is being deleted.
      ERROR: BackupPolicy is not valid and cannot be used.
      UPDATING: BackupPolicy is being updated.
    r   r   r   r   r   r   N
r   r   r   r   r   r   r   r   r   r   r   r    r!   r"   r   6  (    	 HEHEHr    r"   r#   c                   d    e Zd ZdZ G d dej
                        Z ej                  ddd      Zy)BackupPolicy.LabelsValuerm   c                   X    e Zd ZdZ ej
                  d      Z ej
                  d      Zy)+BackupPolicy.LabelsValue.AdditionalPropertyr(   r   r   Nr)   r   r    r!   r.   r   S  r/   r    r.   r   Tr0   Nr2   r   r    r!   r5   r   H  r6   r    r5   r   variantr   r   r   r   r   r   r7   r8   r9   N)r   r   r   r   r*   rF   r"   r   rG   r3   r5   rr   VariantINT32assignedVolumeCountr+   rL   dailyBackupLimitrM   rI   enabledr4   rS   monthlyBackupLimitrU   r\   r]   weeklyBackupLimitr   r    r!   r   r     s@   :Y^^ $ "8!!"89ZI%% Z :Z. /	..q):K:K:Q:QR$y$$Q'*+Y++Ay7H7H7N7NO%	%%a(+"I""1%'!9!!-3&-y--a9J9J9P9PQ			q	!$
)

4a
8%,i,,R9J9J9P9PQr    r   c                       e Zd ZdZ ej
                  dej                  j                        Z ej                  d      Z
 ej                  d      Z ej                  d      Z ej                  d      Zy)	BackupRetentionPolicyab  Retention policy for backups in the backup vault

  Fields:
    backupMinimumEnforcedRetentionDays: Required. Minimum retention duration
      in days for backups in the backup vault.
    dailyBackupImmutable: Optional. Indicates if the daily backups are
      immutable. At least one of daily_backup_immutable,
      weekly_backup_immutable, monthly_backup_immutable and
      manual_backup_immutable must be true.
    manualBackupImmutable: Optional. Indicates if the manual backups are
      immutable. At least one of daily_backup_immutable,
      weekly_backup_immutable, monthly_backup_immutable and
      manual_backup_immutable must be true.
    monthlyBackupImmutable: Optional. Indicates if the monthly backups are
      immutable. At least one of daily_backup_immutable,
      weekly_backup_immutable, monthly_backup_immutable and
      manual_backup_immutable must be true.
    weeklyBackupImmutable: Optional. Indicates if the weekly backups are
      immutable. At least one of daily_backup_immutable,
      weekly_backup_immutable, monthly_backup_immutable and
      manual_backup_immutable must be true.
  r   r   r   r   r   r   N)r   r   r   r   r*   rr   r   r   "backupMinimumEnforcedRetentionDaysrI   dailyBackupImmutablemanualBackupImmutablemonthlyBackupImmutableweeklyBackupImmutabler   r    r!   r   r   l  sv    . (>y'='=aIZIZI`I`'a$///20)0031911!40)003r    r   c                   p   e Zd ZdZ G d dej
                        Z G d dej
                        Z ej                  d       G d dej                               Z ej                  d	      Z ej                  d
d      Z ej                   dd      Z ej                  d      Z ej                  d      Z ej                  d      Z ej                  d      Z ej                  dd      Z ej                  d      Z ej                  d      Z ej                  d      Z ej                   dd      Zy)BackupVaulta=  A NetApp BackupVault.

  Enums:
    BackupVaultTypeValueValuesEnum: Optional. Type of backup vault to be
      created. Default is IN_REGION.
    StateValueValuesEnum: Output only. The backup vault state.

  Messages:
    LabelsValue: Resource labels to represent user provided metadata.

  Fields:
    backupRegion: Optional. Region where the backups are stored. Format:
      `projects/{project_id}/locations/{location}`
    backupRetentionPolicy: Optional. Backup retention policy defining the
      retenton of backups.
    backupVaultType: Optional. Type of backup vault to be created. Default is
      IN_REGION.
    createTime: Output only. Create time of the backup vault.
    description: Description of the backup vault.
    destinationBackupVault: Output only. Name of the Backup vault created in
      backup region. Format: `projects/{project_id}/locations/{location}/backu
      pVaults/{backup_vault_id}`
    kmsConfig: Optional. Specifies the KMS config to be used for backup
      encryption.
    labels: Resource labels to represent user provided metadata.
    name: Identifier. The resource name of the backup vault. Format: `projects
      /{project_id}/locations/{location}/backupVaults/{backup_vault_id}`.
    sourceBackupVault: Output only. Name of the Backup vault created in source
      region. Format: `projects/{project_id}/locations/{location}/backupVaults
      /{backup_vault_id}`
    sourceRegion: Output only. Region in which the backup vault is created.
      Format: `projects/{project_id}/locations/{location}`
    state: Output only. The backup vault state.
  c                       e Zd ZdZdZdZdZy)*BackupVault.BackupVaultTypeValueValuesEnumzOptional. Type of backup vault to be created. Default is IN_REGION.

    Values:
      BACKUP_VAULT_TYPE_UNSPECIFIED: BackupVault type not set.
      IN_REGION: BackupVault type is IN_REGION.
      CROSS_REGION: BackupVault type is CROSS_REGION.
    r   r   r   N)r   r   r   r   BACKUP_VAULT_TYPE_UNSPECIFIED	IN_REGIONCROSS_REGIONr   r    r!   BackupVaultTypeValueValuesEnumr     s     %&!ILr    r   c                   (    e Zd ZdZdZdZdZdZdZdZ	y)	 BackupVault.StateValueValuesEnumaQ  Output only. The backup vault state.

    Values:
      STATE_UNSPECIFIED: State not set.
      CREATING: BackupVault is being created.
      READY: BackupVault is available for use.
      DELETING: BackupVault is being deleted.
      ERROR: BackupVault is not valid and cannot be used.
      UPDATING: BackupVault is being updated.
    r   r   r   r   r   r   Nr   r   r    r!   r"   r     r   r    r"   r#   c                   d    e Zd ZdZ G d dej
                        Z ej                  ddd      Zy)BackupVault.LabelsValuerm   c                   X    e Zd ZdZ ej
                  d      Z ej
                  d      Zy)*BackupVault.LabelsValue.AdditionalPropertyr(   r   r   Nr)   r   r    r!   r.   r     r/   r    r.   r   Tr0   Nr2   r   r    r!   r5   r     r6   r    r5   r   r   r   r   r   r   r   r   r7   r8   r9   r:   r;   N)r   r   r   r   r*   rF   r   r"   r   rG   r3   r5   r+   rp   r4   backupRetentionPolicyr\   backupVaultTyperL   rM   destinationBackupVault	kmsConfigrS   rU   sourceBackupVaultsourceRegionr]   r   r    r!   r   r     sB   !F
y~~ 
Y^^ $ "8!!"89ZI%% Z :Z. '&&q),0)001H!L'I''(H!L/$y$$Q'*%	%%a(+09003#i##A&)!9!!-3&			q	!$+i++B/&&&r*,
)

4b
9%r    r   c                       e Zd ZdZ ej
                  dej                  j                        Z ej                  d      Z
 ej                  dd      Z ej                  d      Z ej                  d      Zy	)
CacheConfigau  Configuration of the cache volume.

  Fields:
    atimeScrubDays: Optional. Duration in days after which inactive files can
      be scrubbed from FlexCache volume.
    atimeScrubEnabled: Optional. Flag indicating whether the atime based scrub
      is enabled for the FlexCache volume.
    cachePrePopulate: Optional. Pre-populate cache volume with data from the
      origin volume.
    cifsChangeNotifyEnabled: Optional. Flag indicating whether a CIFS change
      notification is enabled for the FlexCache volume.
    writeBackEnabled: Optional. Flag indicating whether writeback is enabled
      for the FlexCache volume.
  r   r   r   CachePrePopulater   r   r   N)r   r   r   r   r*   rr   r   r   atimeScrubDaysrI   atimeScrubEnabledr4   cachePrePopulatecifsChangeNotifyEnabledwriteBackEnabledr   r    r!   r   r     sx     *9))!Y5F5F5L5LM.,i,,Q/+Y++,>B2I2215+Y++A.r    r   c                      e Zd ZdZ G d dej
                        Z ej                  dd      Z ej                  dd      Z
 ej                  d      Z ej                  d      Z ej                  d	      Z ej                  d
      Z ej                  dd      Z ej                  d      Z ej                  d      Z ej                  d      Z ej                  d      Zy)CacheParametersa  Cache Parameters for the volume.

  Enums:
    CacheStateValueValuesEnum: Output only. State of the cache volume
      indicating the peering status.

  Fields:
    cacheConfig: Optional. Configuration of the cache volume.
    cacheState: Output only. State of the cache volume indicating the peering
      status.
    command: Output only. Copy-paste-able commands to be used on user's ONTAP
      to accept peering requests.
    enableGlobalFileLock: Optional. Field indicating whether cache volume as
      global file lock enabled.
    passphrase: Output only. Temporary passphrase generated to accept cluster
      peering command.
    peerClusterName: Required. Name of the origin volume's ONTAP cluster.
    peerIpAddresses: Required. List of IC LIF addresses of the origin volume's
      ONTAP cluster.
    peerSvmName: Required. Name of the origin volume's SVM.
    peerVolumeName: Required. Name of the origin volume for the cache volume.
    peeringCommandExpiryTime: Optional. Expiration time for the peering
      command to be executed on user's ONTAP.
    stateDetails: Output only. Detailed description of the current cache
      state.
  c                   $    e Zd ZdZdZdZdZdZdZy))CacheParameters.CacheStateValueValuesEnuma*  Output only. State of the cache volume indicating the peering status.

    Values:
      CACHE_STATE_UNSPECIFIED: Default unspecified state.
      PENDING_CLUSTER_PEERING: State indicating waiting for cluster peering to
        be established.
      PENDING_SVM_PEERING: State indicating waiting for SVM peering to be
        established.
      PEERED: State indicating successful establishment of peering with origin
        volumes's ONTAP cluster.
      ERROR: Terminal state wherein peering with origin volume's ONTAP cluster
        has failed.
    r   r   r   r   r   N)	r   r   r   r   CACHE_STATE_UNSPECIFIEDPENDING_CLUSTER_PEERINGPENDING_SVM_PEERINGPEEREDr   r   r    r!   CacheStateValueValuesEnumr   &  s%      FEr    r   r   r   r   r   r   r   r   r   Tr0   r7   r8   r9   r:   N)r   r   r   r   r*   rF   r   r4   cacheConfigr\   
cacheStater+   commandrI   enableGlobalFileLock
passphrasepeerClusterNamepeerIpAddressespeerSvmNamepeerVolumeNamepeeringCommandExpiryTimer^   r   r    r!   r   r   
  s    6).. ( '	&&}a8+"y""#>B*!I!!!$'///2$y$$Q'*)I))!,/)I))!d;/%	%%a(+(9((+.2Y2226&&&r*,r    r   c                       e Zd ZdZ ej
                  dd      Z ej
                  dd      Z ej                  d      Z	y)r   a  Pre-populate cache volume with data from the origin volume.

  Fields:
    excludePathList: Optional. List of directory-paths to be excluded for pre-
      population for the FlexCache volume.
    pathList: Optional. List of directory-paths to be pre-populated for the
      FlexCache volume.
    recursion: Optional. Flag indicating whether the directories listed with
      the pathList need to be recursively pre-populated.
  r   Tr0   r   r   N)
r   r   r   r   r*   r+   excludePathListpathListrI   	recursionr   r    r!   r   r   G  sC    	 *I))!d;/"Y""1t4($i$$Q')r    r   c                       e Zd ZdZy)CancelOperationRequestz3The request message for Operations.CancelOperation.Nr   r   r   r   r   r    r!   r   r   X  s    <r    r   c                   |    e Zd ZdZ ej
                  d      Z ej
                  d      Z ej
                  d      Zy)DailySchedulea]  Make a snapshot every day e.g. at 04:00, 05:20, 23:50

  Fields:
    hour: Set the hour to start the snapshot (0-23), defaults to midnight (0).
    minute: Set the minute of the hour to start the snapshot (0-59), defaults
      to the top of the hour (0).
    snapshotsToKeep: The maximum number of Snapshots to keep for the hourly
      schedule
  r   r   r   N)	r   r   r   r   r*   
FloatFieldhourminutesnapshotsToKeepr   r    r!   r   r   \  s?     
		a	 $9"&(I((+/r    r   c                       e Zd ZdZ ej
                  d      Z ej
                  d      Z ej
                  d      Z ej                  dd      Z
 ej
                  d      Zy)	DestinationVolumeParametersa  DestinationVolumeParameters specify input parameters used for creating
  destination volume.

  Fields:
    description: Description for the destination volume.
    shareName: Destination volume's share name. If not specified, source
      volume's share name will be used.
    storagePool: Required. Existing destination StoragePool name.
    tieringPolicy: Optional. Tiering policy for the volume.
    volumeId: Desired destination volume resource id. If not specified, source
      volume's resource id will be used. This value must start with a
      lowercase letter followed by up to 62 lowercase letters, numbers, or
      hyphens, and cannot end with a hyphen.
  r   r   r   TieringPolicyr   r   N)r   r   r   r   r*   r+   rM   	shareNamestoragePoolr4   tieringPolicyvolumeIdr   r    r!   r   r   l  se     &	%%a(+#i##A&)%	%%a(+()((!<-"Y""1%(r    r   c                       e Zd ZdZy)EncryptVolumesRequestzPEncryptVolumesRequest specifies the KMS config to encrypt existing
  volumes.
  Nr   r   r    r!   r   r         r    r   c                       e Zd ZdZ ej
                  d      Z ej
                  dd      Z ej
                  d      Z ej
                  d      Z	y)	EstablishPeeringRequestaA  EstablishPeeringRequest establishes cluster and svm peerings between the
  source and the destination replications.

  Fields:
    peerClusterName: Required. Name of the user's local source cluster to be
      peered with the destination cluster.
    peerIpAddresses: Optional. List of IPv4 ip addresses to be used for
      peering.
    peerSvmName: Required. Name of the user's local source vserver svm to be
      peered with the destination vserver svm.
    peerVolumeName: Required. Name of the user's local source volume to be
      peered with the destination volume.
  r   r   Tr0   r   r   N)
r   r   r   r   r*   r+   r   r   r   r   r   r    r!   r   r     sS     *I))!,/)I))!d;/%	%%a(+(9((+.r    r   c                   :    e Zd ZdZ ej
                  ddd      Zy)ExportPolicyzhDefines the export policy for the volume.

  Fields:
    rules: Required. List of export policy rules
  SimpleExportPolicyRuler   Tr0   N)r   r   r   r   r*   r4   rulesr   r    r!   r   r     s      !)
 
 !91t
L%r    r   c                       e Zd ZdZy)GoogleProtobufEmptya!  A generic empty message that you can re-use to avoid defining duplicated
  empty messages in your APIs. A typical example is to use it as the request
  or the response type of an API method. For instance: service Foo { rpc
  Bar(google.protobuf.Empty) returns (google.protobuf.Empty); }
  Nr   r   r    r!   r   r     s    r    r   c                   X    e Zd ZdZ ej
                  d      Z ej
                  d      Zy)HourlySchedulea  Make a snapshot every hour e.g. at 04:00, 05:00, 06:00.

  Fields:
    minute: Set the minute of the hour to start the snapshot (0-59), defaults
      to the top of the hour (0).
    snapshotsToKeep: The maximum number of Snapshots to keep for the hourly
      schedule
  r   r   N)r   r   r   r   r*   r   r   r   r   r    r!   r   r     s-      9"&(I((+/r    r   c                      e Zd ZdZ ej
                  d      Z ej
                  d      Z ej
                  d      Z ej
                  d      Z	 ej
                  d      Z
 ej
                  d      Z ej
                  d      Zy	)
HybridPeeringDetailsa;  HybridPeeringDetails contains details about the hybrid peering.

  Fields:
    command: Output only. Copy-paste-able commands to be used on user's ONTAP
      to accept peering requests.
    commandExpiryTime: Output only. Expiration time for the peering command to
      be executed on user's ONTAP.
    passphrase: Output only. Temporary passphrase generated to accept cluster
      peering command.
    peerClusterName: Output only. Name of the user's local source cluster to
      be peered with the destination cluster.
    peerSvmName: Output only. Name of the user's local source vserver svm to
      be peered with the destination vserver svm.
    peerVolumeName: Output only. Name of the user's local source volume to be
      peered with the destination volume.
    subnetIp: Output only. IP address of the subnet.
  r   r   r   r   r   r   r   N)r   r   r   r   r*   r+   r   commandExpiryTimer   r   r   r   subnetIpr   r    r!   r   r     s    $ "I!!!$'+i++A.$y$$Q'*)I))!,/%	%%a(+(9((+."Y""1%(r    r   c                   z   e Zd ZdZ G d dej
                        Z G d dej
                        Z ej                  d       G d dej                               Z ej                  d	      Z ej                  d
      Z ej                  dd      Z ej"                  dd      Z ej&                  dej(                  j*                        Z ej                  d      Z ej                  dd      Z ej                  d      Z ej                  d      Z ej                  d      Z ej                  dd      Zy)HybridReplicationParametersa  The Hybrid Replication parameters for the volume.

  Enums:
    HybridReplicationTypeValueValuesEnum: Optional. Type of the hybrid
      replication.
    ReplicationScheduleValueValuesEnum: Optional. Replication Schedule for the
      replication created.

  Messages:
    LabelsValue: Optional. Labels to be added to the replication as the key
      value pairs.

  Fields:
    clusterLocation: Optional. Name of source cluster location associated with
      the Hybrid replication. This is a free-form field for the display
      purpose only.
    description: Optional. Description of the replication.
    hybridReplicationType: Optional. Type of the hybrid replication.
    labels: Optional. Labels to be added to the replication as the key value
      pairs.
    largeVolumeConstituentCount: Optional. Constituent volume count for large
      volume.
    peerClusterName: Required. Name of the user's local source cluster to be
      peered with the destination cluster.
    peerIpAddresses: Required. List of node ip addresses to be peered with.
    peerSvmName: Required. Name of the user's local source vserver svm to be
      peered with the destination vserver svm.
    peerVolumeName: Required. Name of the user's local source volume to be
      peered with the destination volume.
    replication: Required. Desired name for the replication of this volume.
    replicationSchedule: Optional. Replication Schedule for the replication
      created.
  c                   $    e Zd ZdZdZdZdZdZdZy)@HybridReplicationParameters.HybridReplicationTypeValueValuesEnuma  Optional. Type of the hybrid replication.

    Values:
      VOLUME_HYBRID_REPLICATION_TYPE_UNSPECIFIED: Unspecified hybrid
        replication type.
      MIGRATION: Hybrid replication type for migration.
      CONTINUOUS_REPLICATION: Hybrid replication type for continuous
        replication.
      ONPREM_REPLICATION: New field for reversible OnPrem replication, to be
        used for data protection.
      REVERSE_ONPREM_REPLICATION: New field for reversible OnPrem replication,
        to be used for data protection.
    r   r   r   r   r   N)	r   r   r   r   *VOLUME_HYBRID_REPLICATION_TYPE_UNSPECIFIED	MIGRATIONCONTINUOUS_REPLICATIONONPREM_REPLICATIONREVERSE_ONPREM_REPLICATIONr   r    r!   $HybridReplicationTypeValueValuesEnumr     s&     23.I!"r    r   c                        e Zd ZdZdZdZdZdZy)>HybridReplicationParameters.ReplicationScheduleValueValuesEnumaQ  Optional. Replication Schedule for the replication created.

    Values:
      HYBRID_REPLICATION_SCHEDULE_UNSPECIFIED: Unspecified
        HybridReplicationSchedule
      EVERY_10_MINUTES: Replication happens once every 10 minutes.
      HOURLY: Replication happens once every hour.
      DAILY: Replication happens once every day.
    r   r   r   r   N)r   r   r   r   'HYBRID_REPLICATION_SCHEDULE_UNSPECIFIEDEVERY_10_MINUTESHOURLYDAILYr   r    r!   "ReplicationScheduleValueValuesEnumr     s     /0+FEr    r   r#   c                   d    e Zd ZdZ G d dej
                        Z ej                  ddd      Zy)'HybridReplicationParameters.LabelsValuezOptional. Labels to be added to the replication as the key value
    pairs.

    Messages:
      AdditionalProperty: An additional property for a LabelsValue object.

    Fields:
      additionalProperties: Additional properties of type LabelsValue
    c                   X    e Zd ZdZ ej
                  d      Z ej
                  d      Zy):HybridReplicationParameters.LabelsValue.AdditionalPropertyr(   r   r   Nr)   r   r    r!   r.   r  .  r/   r    r.   r   Tr0   Nr2   r   r    r!   r5   r  "  4    	'Y.. 	' 29112FTXYr    r5   r   r   r   r   r   r   r   r   Tr0   r7   r8   r9   r:   N)r   r   r   r   r*   rF   r   r   r   rG   r3   r5   r+   clusterLocationrM   r\   hybridReplicationTyper4   rS   rr   r   r   largeVolumeConstituentCountr   r   r   r   replicationreplicationScheduler   r    r!   r   r     s?    D#Y^^ #(9>>  "8!!"89ZI%% Z :Z0 *I))!,/%	%%a(+-)--.TVWX!9!!-3& 6	 6 6q)BSBSBYBY Z)I))!,/)I))!d;/%	%%a(+(9((+.%	%%b)++	++,PRTUr    r   c                      e Zd ZdZ G d dej
                        Z ej                  d       G d dej                               Z
 ej                  d      Z ej                  d      Z ej                  d	      Z ej                  d
      Z ej                   dd      Z ej                  d      Z ej                  d      Z ej(                  dd      Z ej                  d      Zy)	KmsConfiga  KmsConfig is the customer managed encryption key(CMEK) configuration.

  Enums:
    StateValueValuesEnum: Output only. State of the KmsConfig.

  Messages:
    LabelsValue: Labels as key value pairs

  Fields:
    createTime: Output only. Create time of the KmsConfig.
    cryptoKeyName: Required. Customer managed crypto key resource full name.
      Format: projects/{project}/locations/{location}/keyRings/{key_ring}/cryp
      toKeys/{key}.
    description: Description of the KmsConfig.
    instructions: Output only. Instructions to provide the access to the
      customer provided encryption key.
    labels: Labels as key value pairs
    name: Identifier. Name of the KmsConfig.
    serviceAccount: Output only. The Service account which will have access to
      the customer provided encryption key.
    state: Output only. State of the KmsConfig.
    stateDetails: Output only. State details of the KmsConfig.
  c                   @    e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZdZdZy)KmsConfig.StateValueValuesEnuma  Output only. State of the KmsConfig.

    Values:
      STATE_UNSPECIFIED: Unspecified KmsConfig State
      READY: KmsConfig State is Ready
      CREATING: KmsConfig State is Creating
      DELETING: KmsConfig State is Deleting
      UPDATING: KmsConfig State is Updating
      IN_USE: KmsConfig State is In Use.
      ERROR: KmsConfig State is Error
      KEY_CHECK_PENDING: KmsConfig State is Pending to verify crypto key
        access.
      KEY_NOT_REACHABLE: KmsConfig State is Not accessbile by the SDE service
        account to the crypto key.
      DISABLING: KmsConfig State is Disabling.
      DISABLED: KmsConfig State is Disabled.
      MIGRATING: KmsConfig State is Migrating. The existing volumes are
        migrating from SMEK to CMEK.
    r   r   r   r   r   r   r   r   r7   r8   r9   r:   N)r   r   r   r   r   r   r   r   r   r   r   KEY_CHECK_PENDINGKEY_NOT_REACHABLE	DISABLINGDISABLED	MIGRATINGr   r    r!   r"   r  a  sH    & EHHHFEIHIr    r"   r#   c                   d    e Zd ZdZ G d dej
                        Z ej                  ddd      Zy)KmsConfig.LabelsValuezLabels as key value pairs

    Messages:
      AdditionalProperty: An additional property for a LabelsValue object.

    Fields:
      additionalProperties: Additional properties of type LabelsValue
    c                   X    e Zd ZdZ ej
                  d      Z ej
                  d      Zy)(KmsConfig.LabelsValue.AdditionalPropertyr(   r   r   Nr)   r   r    r!   r.   r    r/   r    r.   r   Tr0   Nr2   r   r    r!   r5   r    r6   r    r5   r   r   r   r   r   r   r   r7   r8   N)r   r   r   r   r*   rF   r"   r   rG   r3   r5   r+   rL   cryptoKeyNamerM   instructionsr4   rS   rU   serviceAccountr\   r]   r^   r   r    r!   r  r  H  s    0Y^^ B "8!!"89ZI%% Z :Z. %y$$Q'*')''*-%	%%a(+&&&q),!9!!-3&			q	!$(9((+.
)

4a
8%&&&q),r    r  c                       e Zd ZdZ ej
                  ddd      Z ej                  d      Z ej                  dd      Z	y)	ListActiveDirectoriesResponsea"  ListActiveDirectoriesResponse contains all the active directories
  requested.

  Fields:
    activeDirectories: The list of active directories.
    nextPageToken: A token identifying a page of results the server should
      return.
    unreachable: Locations that could not be reached.
  r	   r   Tr0   r   r   N)
r   r   r   r   r*   r4   activeDirectoriesr+   nextPageTokenunreachabler   r    r!   r  r    sG     -i,,->DQ')''*-%	%%a$7+r    r  c                       e Zd ZdZ ej
                  ddd      Z ej                  d      Z ej                  dd      Z	y)	ListBackupPoliciesResponsea  ListBackupPoliciesResponse contains all the backup policies requested.

  Fields:
    backupPolicies: The list of backup policies.
    nextPageToken: A token identifying a page of results the server should
      return.
    unreachable: Locations that could not be reached.
  r   r   Tr0   r   r   N)
r   r   r   r   r*   r4   r~   r+   r  r  r   r    r!   r   r     sE     *9)).!dK.')''*-%	%%a$7+r    r   c                       e Zd ZdZ ej
                  ddd      Z ej                  d      Z ej                  dd      Z	y)	ListBackupVaultsResponseal  ListBackupVaultsResponse is the result of ListBackupVaultsRequest.

  Fields:
    backupVaults: A list of backupVaults in the project for the specified
      location.
    nextPageToken: The token you can use to retrieve the next page of results.
      Not returned if there are no more results in the list.
    unreachable: Locations that could not be reached.
  r   r   Tr0   r   r   N)
r   r   r   r   r*   r4   backupVaultsr+   r  r  r   r    r!   r"  r"    sE     (''q4H,')''*-%	%%a$7+r    r"  c                       e Zd ZdZ ej
                  ddd      Z ej                  d      Z ej                  dd      Z	y)	ListBackupsResponsea7  ListBackupsResponse is the result of ListBackupsRequest.

  Fields:
    backups: A list of backups in the project.
    nextPageToken: The token you can use to retrieve the next page of results.
      Not returned if there are no more results in the list.
    unreachable: Locations that could not be reached.
  ra   r   Tr0   r   r   N)
r   r   r   r   r*   r4   backupsr+   r  r  r   r    r!   r%  r%    sE     #I""8Q>'')''*-%	%%a$7+r    r%  c                       e Zd ZdZ ej
                  ddd      Z ej                  d      Z ej                  dd      Z	y)	ListKmsConfigsResponsea  ListKmsConfigsResponse is the response to a ListKmsConfigsRequest.

  Fields:
    kmsConfigs: The list of KmsConfigs
    nextPageToken: A token identifying a page of results the server should
      return.
    unreachable: Locations that could not be reached.
  r  r   Tr0   r   r   N)
r   r   r   r   r*   r4   
kmsConfigsr+   r  r  r   r    r!   r(  r(    sE     &y%%k1tD*')''*-%	%%a$7+r    r(  c                   ^    e Zd ZdZ ej
                  ddd      Z ej                  d      Zy)ListLocationsResponsezThe response message for Locations.ListLocations.

  Fields:
    locations: A list of locations that matches the specified filter in the
      request.
    nextPageToken: The standard List next-page token.
  Locationr   Tr0   r   N)	r   r   r   r   r*   r4   	locationsr+   r  r   r    r!   r+  r+    s1     %i$$ZTB)')''*-r    r+  c                   ^    e Zd ZdZ ej
                  d      Z ej                  ddd      Zy)ListOperationsResponsezThe response message for Operations.ListOperations.

  Fields:
    nextPageToken: The standard List next-page token.
    operations: A list of operations that matches the specified filter in the
      request.
  r   	Operationr   Tr0   N)	r   r   r   r   r*   r+   r  r4   
operationsr   r    r!   r/  r/    s1     ()''*-%y%%k1tD*r    r/  c                       e Zd ZdZ ej
                  d      Z ej                  ddd      Z ej
                  dd      Z	y)	ListQuotaRulesResponsea  ListQuotaRulesResponse is the response to a ListQuotaRulesRequest.

  Fields:
    nextPageToken: A token identifying a page of results the server should
      return.
    quotaRules: List of quota rules
    unreachable: Locations that could not be reached.
  r   	QuotaRuler   Tr0   r   N)
r   r   r   r   r*   r+   r  r4   
quotaRulesr  r   r    r!   r3  r3    sE     ()''*-%y%%k1tD*%	%%a$7+r    r3  c                       e Zd ZdZ ej
                  d      Z ej                  ddd      Z ej
                  dd      Z	y)	ListReplicationsResponseaj  ListReplicationsResponse is the result of ListReplicationsRequest.

  Fields:
    nextPageToken: The token you can use to retrieve the next page of results.
      Not returned if there are no more results in the list.
    replications: A list of replications in the project for the specified
      volume.
    unreachable: Locations that could not be reached.
  r   Replicationr   Tr0   r   N)
r   r   r   r   r*   r+   r  r4   replicationsr  r   r    r!   r7  r7    sE     ()''*-'''q4H,%	%%a$7+r    r7  c                       e Zd ZdZ ej
                  d      Z ej                  ddd      Z ej
                  dd      Z	y)	ListSnapshotsResponseaX  ListSnapshotsResponse is the result of ListSnapshotsRequest.

  Fields:
    nextPageToken: The token you can use to retrieve the next page of results.
      Not returned if there are no more results in the list.
    snapshots: A list of snapshots in the project for the specified volume.
    unreachable: Locations that could not be reached.
  r   Snapshotr   Tr0   r   N)
r   r   r   r   r*   r+   r  r4   	snapshotsr  r   r    r!   r;  r;  +  sE     ()''*-$i$$ZTB)%	%%a$7+r    r;  c                       e Zd ZdZ ej
                  d      Z ej                  ddd      Z ej
                  dd      Z	y)	ListStoragePoolsResponsea  ListStoragePoolsResponse is the response to a ListStoragePoolsRequest.

  Fields:
    nextPageToken: A token identifying a page of results the server should
      return.
    storagePools: The list of StoragePools
    unreachable: Locations that could not be reached.
  r   StoragePoolr   Tr0   r   N)
r   r   r   r   r*   r+   r  r4   storagePoolsr  r   r    r!   r?  r?  :  sE     ()''*-'''q4H,%	%%a$7+r    r?  c                       e Zd ZdZ ej
                  d      Z ej
                  dd      Z ej                  ddd      Z	y)	ListVolumesResponsezMessage for response to listing Volumes

  Fields:
    nextPageToken: A token identifying a page of results the server should
      return.
    unreachable: Locations that could not be reached.
    volumes: The list of Volume
  r   r   Tr0   Volumer   N)
r   r   r   r   r*   r+   r  r  r4   volumesr   r    r!   rC  rC  I  sE     ()''*-%	%%a$7+"I""8Q>'r    rC  c                   p   e Zd ZdZ ej
                  d       G d dej                               Z ej
                  d       G d dej                               Z	 ej                  d      Z ej                  dd      Z ej                  d	      Z ej                  dd
      Z ej                  d      Zy)r,  ao  A resource that represents a Google Cloud location.

  Messages:
    LabelsValue: Cross-service attributes for the location. For example
      {"cloud.googleapis.com/region": "us-east1"}
    MetadataValue: Service-specific metadata. For example the available
      capacity at the given location.

  Fields:
    displayName: The friendly name for this location, typically a nearby city
      name. For example, "Tokyo".
    labels: Cross-service attributes for the location. For example
      {"cloud.googleapis.com/region": "us-east1"}
    locationId: The canonical id for this location. For example: `"us-east1"`.
    metadata: Service-specific metadata. For example the available capacity at
      the given location.
    name: Resource name for the location, which may vary between
      implementations. For example: `"projects/example-project/locations/us-
      east1"`
  r#   c                   d    e Zd ZdZ G d dej
                        Z ej                  ddd      Zy)Location.LabelsValuea  Cross-service attributes for the location. For example
    {"cloud.googleapis.com/region": "us-east1"}

    Messages:
      AdditionalProperty: An additional property for a LabelsValue object.

    Fields:
      additionalProperties: Additional properties of type LabelsValue
    c                   X    e Zd ZdZ ej
                  d      Z ej
                  d      Zy)'Location.LabelsValue.AdditionalPropertyr(   r   r   Nr)   r   r    r!   r.   rJ  z  r/   r    r.   r   Tr0   Nr2   r   r    r!   r5   rH  n  r  r    r5   c                   d    e Zd ZdZ G d dej
                        Z ej                  ddd      Zy)Location.MetadataValuea(  Service-specific metadata. For example the available capacity at the
    given location.

    Messages:
      AdditionalProperty: An additional property for a MetadataValue object.

    Fields:
      additionalProperties: Properties of the object. Contains field @type
        with type URL.
    c                   Z    e Zd ZdZ ej
                  d      Z ej                  dd      Zy))Location.MetadataValue.AdditionalPropertyAn additional property for a MetadataValue object.

      Fields:
        key: Name of the additional property.
        value: A extra_types.JsonValue attribute.
      r   extra_types.JsonValuer   N	r   r   r   r   r*   r+   r,   r4   r-   r   r    r!   r.   rN    0    
 "I!!!$c$i$$%<a@er    r.   r   Tr0   Nr2   r   r    r!   MetadataValuerL    6    		AY.. 	A 29112FTXYr    rS  r   r   r   r   r   N)r   r   r   r   r   rG   r*   r3   r5   rS  r+   displayNamer4   rS   
locationIdmetadatarU   r   r    r!   r,  r,  X  s    * "8!!"89ZI%% Z :Z0 "8!!"89Zi'' Z :Z2 &	%%a(+!9!!-3&$y$$Q'*#Y##OQ7(			q	!$r    r,  c                       e Zd ZdZ G d dej
                        Z G d dej
                        Z ej                  d      Z	 ej                  ddd	      Z ej                  dd
d	      Zy)LocationMetadataa  Metadata for a given google.cloud.location.Location.

  Enums:
    SupportedFlexPerformanceValueListEntryValuesEnum:
    SupportedServiceLevelsValueListEntryValuesEnum:

  Fields:
    hasVcp: Output only. Indicates if the location has VCP support.
    supportedFlexPerformance: Output only. Supported flex performance in a
      location.
    supportedServiceLevels: Output only. Supported service levels in a
      location.
  c                       e Zd ZdZdZdZdZy)ALocationMetadata.SupportedFlexPerformanceValueListEntryValuesEnuma%  SupportedFlexPerformanceValueListEntryValuesEnum enum type.

    Values:
      FLEX_PERFORMANCE_UNSPECIFIED: Unspecified flex performance.
      FLEX_PERFORMANCE_DEFAULT: Flex Storage Pool with default performance.
      FLEX_PERFORMANCE_CUSTOM: Flex Storage Pool with custom performance.
    r   r   r   N)r   r   r   r   FLEX_PERFORMANCE_UNSPECIFIEDFLEX_PERFORMANCE_DEFAULTFLEX_PERFORMANCE_CUSTOMr   r    r!   0SupportedFlexPerformanceValueListEntryValuesEnumr[    s     $%  r    r_  c                   $    e Zd ZdZdZdZdZdZdZy)?LocationMetadata.SupportedServiceLevelsValueListEntryValuesEnuma  SupportedServiceLevelsValueListEntryValuesEnum enum type.

    Values:
      SERVICE_LEVEL_UNSPECIFIED: Unspecified service level.
      PREMIUM: Premium service level.
      EXTREME: Extreme service level.
      STANDARD: Standard service level.
      FLEX: Flex service level.
    r   r   r   r   r   N	r   r   r   r   SERVICE_LEVEL_UNSPECIFIEDPREMIUMEXTREMESTANDARDFLEXr   r    r!   .SupportedServiceLevelsValueListEntryValuesEnumra    #     !"GGHDr    rh  r   r   Tr0   r   N)r   r   r   r   r*   rF   r_  rh  rI   hasVcpr\   supportedFlexPerformancesupportedServiceLevelsr   r    r!   rY  rY    so    
  
 y~~   "9!!!$&0Y001cefquv.9../_abmqrr    rY  c                       e Zd ZdZ ej
                  d      Z ej                  d      Z ej                  d      Z	 ej                  d      Z
y)MonthlySchedulea  Make a snapshot once a month e.g. at 2nd 04:00, 7th 05:20, 24th 23:50

  Fields:
    daysOfMonth: Set the day or days of the month to make a snapshot (1-31).
      Accepts a comma separated number of days. Defaults to '1'.
    hour: Set the hour to start the snapshot (0-23), defaults to midnight (0).
    minute: Set the minute of the hour to start the snapshot (0-59), defaults
      to the top of the hour (0).
    snapshotsToKeep: The maximum number of Snapshots to keep for the hourly
      schedule
  r   r   r   r   N)r   r   r   r   r*   r+   daysOfMonthr   r   r   r   r   r    r!   rn  rn    sQ    
 &	%%a(+			a	 $9"&(I((+/r    rn  c                       e Zd ZdZ G d dej
                        Z ej                  d      Z ej                  d      Z	 ej                  d      Z
 ej                  d      Z ej                  dd      Zy	)
MountOptiona)  View only mount options for a volume.

  Enums:
    ProtocolValueValuesEnum: Protocol to mount with.

  Fields:
    export: Export string
    exportFull: Full export string
    instructions: Instructions for mounting
    ipAddress: Output only. IP Address.
    protocol: Protocol to mount with.
  c                   $    e Zd ZdZdZdZdZdZdZy)#MountOption.ProtocolValueValuesEnumzProtocol to mount with.

    Values:
      PROTOCOLS_UNSPECIFIED: Unspecified protocol
      NFSV3: NFS V3 protocol
      NFSV4: NFS V4 protocol
      SMB: SMB protocol
      ISCSI: ISCSI protocol
    r   r   r   r   r   N	r   r   r   r   PROTOCOLS_UNSPECIFIEDNFSV3NFSV4SMBISCSIr   r    r!   ProtocolValueValuesEnumrs    #     EE
CEr    rz  r   r   r   r   r   N)r   r   r   r   r*   rF   rz  r+   export
exportFullr  	ipAddressr\   protocolr   r    r!   rq  rq    sv    	   !9  #&$y$$Q'*&&&q),#i##A&) Y  !:A>(r    rq  c                       e Zd ZdZ ej
                  dd      Z ej                  d      Z ej                  dd      Z	y)	5NetappProjectsLocationsActiveDirectoriesCreateRequesta  A NetappProjectsLocationsActiveDirectoriesCreateRequest object.

  Fields:
    activeDirectory: A ActiveDirectory resource to be passed as the request
      body.
    activeDirectoryId: Required. ID of the active directory to create. Must be
      unique within the parent resource. Must contain only letters, numbers
      and hyphen, with the first character a letter , the last a letter or a
      number, and a 63 character maximum.
    parent: Required. Value for parent.
  r	   r   r   r   TrequiredN)
r   r   r   r   r*   r4   activeDirectoryr+   activeDirectoryIdparentr   r    r!   r  r    sE    
 +I**+<a@/+i++A. 9  T2&r    r  c                   8    e Zd ZdZ ej
                  dd      Zy)5NetappProjectsLocationsActiveDirectoriesDeleteRequestzA NetappProjectsLocationsActiveDirectoriesDeleteRequest object.

  Fields:
    name: Required. Name of the active directory.
  r   Tr  Nr   r   r   r   r*   r+   rU   r   r    r!   r  r  "       
		q4	0$r    r  c                   8    e Zd ZdZ ej
                  dd      Zy)2NetappProjectsLocationsActiveDirectoriesGetRequestz|A NetappProjectsLocationsActiveDirectoriesGetRequest object.

  Fields:
    name: Required. Name of the active directory.
  r   Tr  Nr  r   r    r!   r  r  ,  r  r    r  c                       e Zd ZdZ ej
                  d      Z ej
                  d      Z ej                  dej                  j                        Z ej
                  d      Z ej
                  dd	      Zy
)3NetappProjectsLocationsActiveDirectoriesListRequesta  A NetappProjectsLocationsActiveDirectoriesListRequest object.

  Fields:
    filter: Filtering results
    orderBy: Hint for how to order the results
    pageSize: Requested page size. Server may return fewer items than
      requested. If unspecified, the server will pick an appropriate default.
    pageToken: A token identifying a page of results the server should return.
    parent: Required. Parent value for ListActiveDirectoriesRequest
  r   r   r   r   r   r   Tr  Nr   r   r   r   r*   r+   filterorderByrr   r   r   pageSize	pageTokenr  r   r    r!   r  r  6  s    	 !9  #&!I!!!$'#Y##Ay/@/@/F/FG(#i##A&) 9  T2&r    r  c                       e Zd ZdZ ej
                  dd      Z ej                  dd      Z ej                  d      Z	y)	4NetappProjectsLocationsActiveDirectoriesPatchRequesta  A NetappProjectsLocationsActiveDirectoriesPatchRequest object.

  Fields:
    activeDirectory: A ActiveDirectory resource to be passed as the request
      body.
    name: Identifier. The resource name of the active directory. Format: `proj
      ects/{project_number}/locations/{location_id}/activeDirectories/{active_
      directory_id}`.
    updateMask: Required. Field mask is used to specify the fields to be
      overwritten in the Active Directory resource by the update. The fields
      specified in the update_mask are relative to the resource, not the full
      request. A field will be overwritten if it is in the mask. If the user
      does not provide a mask then all fields will be overwritten.
  r	   r   r   Tr  r   N)
r   r   r   r   r*   r4   r  r+   rU   
updateMaskr   r    r!   r  r  I  sD     +I**+<a@/			q4	0$$y$$Q'*r    r  c                       e Zd ZdZ ej
                  dd      Z ej                  d      Z ej                  dd      Z	y)	2NetappProjectsLocationsBackupPoliciesCreateRequesta3  A NetappProjectsLocationsBackupPoliciesCreateRequest object.

  Fields:
    backupPolicy: A BackupPolicy resource to be passed as the request body.
    backupPolicyId: Required. The ID to use for the backup policy. The ID must
      be unique within the specified location. Must contain only letters,
      numbers and hyphen, with the first character a letter, the last a letter
      or a number, and a 63 character maximum.
    parent: Required. The location to create the backup policies of, in the
      format `projects/{project_id}/locations/{location}`
  r   r   r   r   Tr  N)
r   r   r   r   r*   r4   backupPolicyr+   backupPolicyIdr  r   r    r!   r  r  ^  sC    
 ('':,(9((+. 9  T2&r    r  c                   8    e Zd ZdZ ej
                  dd      Zy)2NetappProjectsLocationsBackupPoliciesDeleteRequestzA NetappProjectsLocationsBackupPoliciesDeleteRequest object.

  Fields:
    name: Required. The backup policy resource name, in the format `projects/{
      project_id}/locations/{location}/backupPolicies/{backup_policy_id}`
  r   Tr  Nr  r   r    r!   r  r  p       
		q4	0$r    r  c                   8    e Zd ZdZ ej
                  dd      Zy)/NetappProjectsLocationsBackupPoliciesGetRequestzA NetappProjectsLocationsBackupPoliciesGetRequest object.

  Fields:
    name: Required. The backupPolicy resource name, in the format `projects/{p
      roject_id}/locations/{location}/backupPolicies/{backup_policy_id}`
  r   Tr  Nr  r   r    r!   r  r  {  r  r    r  c                       e Zd ZdZ ej
                  d      Z ej
                  d      Z ej                  dej                  j                        Z ej
                  d      Z ej
                  dd	      Zy
)0NetappProjectsLocationsBackupPoliciesListRequesta  A NetappProjectsLocationsBackupPoliciesListRequest object.

  Fields:
    filter: Filtering results
    orderBy: Hint for how to order the results
    pageSize: Requested page size. Server may return fewer items than
      requested. If unspecified, the server will pick an appropriate default.
    pageToken: A token identifying a page of results the server should return.
    parent: Required. Parent value for ListBackupPoliciesRequest
  r   r   r   r   r   r   Tr  Nr  r   r    r!   r  r    r  r    r  c                       e Zd ZdZ ej
                  dd      Z ej                  dd      Z ej                  d      Z	y)	1NetappProjectsLocationsBackupPoliciesPatchRequesta  A NetappProjectsLocationsBackupPoliciesPatchRequest object.

  Fields:
    backupPolicy: A BackupPolicy resource to be passed as the request body.
    name: Identifier. The resource name of the backup policy. Format: `project
      s/{project_id}/locations/{location}/backupPolicies/{backup_policy_id}`.
    updateMask: Required. Field mask is used to specify the fields to be
      overwritten in the Backup Policy resource by the update. The fields
      specified in the update_mask are relative to the resource, not the full
      request. A field will be overwritten if it is in the mask. If the user
      does not provide a mask then all fields will be overwritten.
  r   r   r   Tr  r   N)
r   r   r   r   r*   r4   r  r+   rU   r  r   r    r!   r  r    sC     ('':,			q4	0$$y$$Q'*r    r  c                       e Zd ZdZ ej
                  dd      Z ej                  d      Z ej                  dd      Z	y)	7NetappProjectsLocationsBackupVaultsBackupsCreateRequesta/  A NetappProjectsLocationsBackupVaultsBackupsCreateRequest object.

  Fields:
    backup: A Backup resource to be passed as the request body.
    backupId: Required. The ID to use for the backup. The ID must be unique
      within the specified backupVault. Must contain only letters, numbers and
      hyphen, with the first character a letter, the last a letter or a
      number, and a 63 character maximum.
    parent: Required. The NetApp backupVault to create the backups of, in the
      format `projects/*/locations/*/backupVaults/{backup_vault_id}`
  ra   r   r   r   Tr  N)
r   r   r   r   r*   r4   backupr+   backupIdr  r   r    r!   r  r    sC    
 "9!!(A.&"Y""1%( 9  T2&r    r  c                   8    e Zd ZdZ ej
                  dd      Zy)7NetappProjectsLocationsBackupVaultsBackupsDeleteRequestzA NetappProjectsLocationsBackupVaultsBackupsDeleteRequest object.

  Fields:
    name: Required. The backup resource name, in the format `projects/{project
      _id}/locations/{location}/backupVaults/{backup_vault_id}/backups/{backup
      _id}`
  r   Tr  Nr  r   r    r!   r  r         
		q4	0$r    r  c                   8    e Zd ZdZ ej
                  dd      Zy)4NetappProjectsLocationsBackupVaultsBackupsGetRequestzA NetappProjectsLocationsBackupVaultsBackupsGetRequest object.

  Fields:
    name: Required. The backup resource name, in the format `projects/{project
      _id}/locations/{location}/backupVaults/{backup_vault_id}/backups/{backup
      _id}`
  r   Tr  Nr  r   r    r!   r  r    r  r    r  c                       e Zd ZdZ ej
                  d      Z ej
                  d      Z ej                  dej                  j                        Z ej
                  d      Z ej
                  dd	      Zy
)5NetappProjectsLocationsBackupVaultsBackupsListRequesta  A NetappProjectsLocationsBackupVaultsBackupsListRequest object.

  Fields:
    filter: The standard list filter. If specified, backups will be returned
      based on the attribute name that matches the filter expression. If
      empty, then no backups are filtered out. See https://google.aip.dev/160
    orderBy: Sort results. Supported values are "name", "name desc" or ""
      (unsorted).
    pageSize: The maximum number of items to return. The service may return
      fewer than this value. The maximum value is 1000; values above 1000 will
      be coerced to 1000.
    pageToken: The next_page_token value to use if there are additional
      results to retrieve for this list request.
    parent: Required. The backupVault for which to retrieve backup
      information, in the format `projects/{project_id}/locations/{location}/b
      ackupVaults/{backup_vault_id}`. To retrieve backup information for all
      locations, use "-" for the `{location}` value. To retrieve backup
      information for all backupVaults, use "-" for the `{backup_vault_id}`
      value. To retrieve backup information for a volume, use "-" for the
      `{backup_vault_id}` value and specify volume full name with the filter.
  r   r   r   r   r   r   Tr  Nr  r   r    r!   r  r    ss    , !9  #&!I!!!$'#Y##Ay/@/@/F/FG(#i##A&) 9  T2&r    r  c                       e Zd ZdZ ej
                  dd      Z ej                  dd      Z ej                  d      Z	y)	6NetappProjectsLocationsBackupVaultsBackupsPatchRequesta  A NetappProjectsLocationsBackupVaultsBackupsPatchRequest object.

  Fields:
    backup: A Backup resource to be passed as the request body.
    name: Identifier. The resource name of the backup. Format: `projects/{proj
      ect_id}/locations/{location}/backupVaults/{backup_vault_id}/backups/{bac
      kup_id}`.
    updateMask: Required. Field mask is used to specify the fields to be
      overwritten in the Backup resource to be updated. The fields specified
      in the update_mask are relative to the resource, not the full request. A
      field will be overwritten if it is in the mask. If the user does not
      provide a mask then all fields will be overwritten.
  ra   r   r   Tr  r   N)
r   r   r   r   r*   r4   r  r+   rU   r  r   r    r!   r  r    sC     "9!!(A.&			q4	0$$y$$Q'*r    r  c                       e Zd ZdZ ej
                  dd      Z ej                  d      Z ej                  dd      Z	y)	0NetappProjectsLocationsBackupVaultsCreateRequesta'  A NetappProjectsLocationsBackupVaultsCreateRequest object.

  Fields:
    backupVault: A BackupVault resource to be passed as the request body.
    backupVaultId: Required. The ID to use for the backupVault. The ID must be
      unique within the specified location. Must contain only letters, numbers
      and hyphen, with the first character a letter, the last a letter or a
      number, and a 63 character maximum.
    parent: Required. The location to create the backup vaults, in the format
      `projects/{project_id}/locations/{location}`
  r   r   r   r   Tr  N)
r   r   r   r   r*   r4   r   r+   backupVaultIdr  r   r    r!   r  r    sC    
 '	&&}a8+')''*- 9  T2&r    r  c                   8    e Zd ZdZ ej
                  dd      Zy)0NetappProjectsLocationsBackupVaultsDeleteRequestzA NetappProjectsLocationsBackupVaultsDeleteRequest object.

  Fields:
    name: Required. The backupVault resource name, in the format `projects/{pr
      oject_id}/locations/{location}/backupVaults/{backup_vault_id}`
  r   Tr  Nr  r   r    r!   r  r    r  r    r  c                   8    e Zd ZdZ ej
                  dd      Zy)-NetappProjectsLocationsBackupVaultsGetRequestzA NetappProjectsLocationsBackupVaultsGetRequest object.

  Fields:
    name: Required. The backupVault resource name, in the format `projects/{pr
      oject_id}/locations/{location}/backupVaults/{backup_vault_id}`
  r   Tr  Nr  r   r    r!   r  r  %  r  r    r  c                       e Zd ZdZ ej
                  d      Z ej
                  d      Z ej                  dej                  j                        Z ej
                  d      Z ej
                  dd	      Zy
).NetappProjectsLocationsBackupVaultsListRequesta  A NetappProjectsLocationsBackupVaultsListRequest object.

  Fields:
    filter: List filter.
    orderBy: Sort results. Supported values are "name", "name desc" or ""
      (unsorted).
    pageSize: The maximum number of items to return.
    pageToken: The next_page_token value to use if there are additional
      results to retrieve for this list request.
    parent: Required. The location for which to retrieve backupVault
      information, in the format `projects/{project_id}/locations/{location}`.
  r   r   r   r   r   r   Tr  Nr  r   r    r!   r  r  0  s     !9  #&!I!!!$'#Y##Ay/@/@/F/FG(#i##A&) 9  T2&r    r  c                       e Zd ZdZ ej
                  dd      Z ej                  dd      Z ej                  d      Z	y)	/NetappProjectsLocationsBackupVaultsPatchRequesta  A NetappProjectsLocationsBackupVaultsPatchRequest object.

  Fields:
    backupVault: A BackupVault resource to be passed as the request body.
    name: Identifier. The resource name of the backup vault. Format: `projects
      /{project_id}/locations/{location}/backupVaults/{backup_vault_id}`.
    updateMask: Required. Field mask is used to specify the fields to be
      overwritten in the Backup resource to be updated. The fields specified
      in the update_mask are relative to the resource, not the full request. A
      field will be overwritten if it is in the mask. If the user does not
      provide a mask then all fields will be overwritten.
  r   r   r   Tr  r   N)
r   r   r   r   r*   r4   r   r+   rU   r  r   r    r!   r  r  E  sC     '	&&}a8+			q4	0$$y$$Q'*r    r  c                   8    e Zd ZdZ ej
                  dd      Zy)!NetappProjectsLocationsGetRequestzcA NetappProjectsLocationsGetRequest object.

  Fields:
    name: Resource name for the location.
  r   Tr  Nr  r   r    r!   r  r  X  r  r    r  c                       e Zd ZdZ ej
                  dd      Z ej                  d      Z ej                  dd      Z	y)	.NetappProjectsLocationsKmsConfigsCreateRequesta  A NetappProjectsLocationsKmsConfigsCreateRequest object.

  Fields:
    kmsConfig: A KmsConfig resource to be passed as the request body.
    kmsConfigId: Required. Id of the requesting KmsConfig. Must be unique
      within the parent resource. Must contain only letters, numbers and
      hyphen, with the first character a letter, the last a letter or a
      number, and a 63 character maximum.
    parent: Required. Value for parent.
  r  r   r   r   Tr  N)
r   r   r   r   r*   r4   r   r+   kmsConfigIdr  r   r    r!   r  r  b  sC    	 %i$$[!4)%	%%a(+ 9  T2&r    r  c                   8    e Zd ZdZ ej
                  dd      Zy).NetappProjectsLocationsKmsConfigsDeleteRequestzqA NetappProjectsLocationsKmsConfigsDeleteRequest object.

  Fields:
    name: Required. Name of the KmsConfig.
  r   Tr  Nr  r   r    r!   r  r  s  r  r    r  c                   ^    e Zd ZdZ ej
                  dd      Z ej                  dd      Zy)/NetappProjectsLocationsKmsConfigsEncryptRequestzA NetappProjectsLocationsKmsConfigsEncryptRequest object.

  Fields:
    encryptVolumesRequest: A EncryptVolumesRequest resource to be passed as
      the request body.
    name: Required. Name of the KmsConfig.
  r   r   r   Tr  N)	r   r   r   r   r*   r4   encryptVolumesRequestr+   rU   r   r    r!   r  r  }  s3     1)001H!L			q4	0$r    r  c                   8    e Zd ZdZ ej
                  dd      Zy)+NetappProjectsLocationsKmsConfigsGetRequestzmA NetappProjectsLocationsKmsConfigsGetRequest object.

  Fields:
    name: Required. Name of the KmsConfig
  r   Tr  Nr  r   r    r!   r  r    r  r    r  c                       e Zd ZdZ ej
                  d      Z ej
                  d      Z ej                  dej                  j                        Z ej
                  d      Z ej
                  dd	      Zy
),NetappProjectsLocationsKmsConfigsListRequesta  A NetappProjectsLocationsKmsConfigsListRequest object.

  Fields:
    filter: List filter.
    orderBy: Sort results. Supported values are "name", "name desc" or ""
      (unsorted).
    pageSize: The maximum number of items to return.
    pageToken: The next_page_token value to use if there are additional
      results to retrieve for this list request.
    parent: Required. Parent value
  r   r   r   r   r   r   Tr  Nr  r   r    r!   r  r    s    
 !9  #&!I!!!$'#Y##Ay/@/@/F/FG(#i##A&) 9  T2&r    r  c                       e Zd ZdZ ej
                  dd      Z ej                  dd      Z ej                  d      Z	y)	-NetappProjectsLocationsKmsConfigsPatchRequesta%  A NetappProjectsLocationsKmsConfigsPatchRequest object.

  Fields:
    kmsConfig: A KmsConfig resource to be passed as the request body.
    name: Identifier. Name of the KmsConfig.
    updateMask: Required. Field mask is used to specify the fields to be
      overwritten in the KmsConfig resource by the update. The fields
      specified in the update_mask are relative to the resource, not the full
      request. A field will be overwritten if it is in the mask. If the user
      does not provide a mask then all fields will be overwritten.
  r  r   r   Tr  r   N)
r   r   r   r   r*   r4   r   r+   rU   r  r   r    r!   r  r    sC    
 %i$$[!4)			q4	0$$y$$Q'*r    r  c                   ^    e Zd ZdZ ej
                  dd      Z ej                  dd      Zy).NetappProjectsLocationsKmsConfigsVerifyRequestzA NetappProjectsLocationsKmsConfigsVerifyRequest object.

  Fields:
    name: Required. Name of the KMS Config to be verified.
    verifyKmsConfigRequest: A VerifyKmsConfigRequest resource to be passed as
      the request body.
  r   Tr  VerifyKmsConfigRequestr   N)	r   r   r   r   r*   r+   rU   r4   verifyKmsConfigRequestr   r    r!   r  r    s3     
		q4	0$19112JANr    r  c                       e Zd ZdZ ej
                  dd      Z ej
                  d      Z ej
                  dd      Z ej                  dej                  j                  	      Z ej
                  d
      Zy)"NetappProjectsLocationsListRequesta  A NetappProjectsLocationsListRequest object.

  Fields:
    extraLocationTypes: Optional. Unless explicitly documented otherwise,
      don't use this unsupported field which is primarily intended for
      internal usage.
    filter: A filter to narrow down results to a preferred subset. The
      filtering language accepts strings like `"displayName=tokyo"`, and is
      documented in more detail in [AIP-160](https://google.aip.dev/160).
    name: The resource that owns the locations collection, if applicable.
    pageSize: The maximum number of results to return. If not set, the service
      selects a default.
    pageToken: A page token received from the `next_page_token` field in the
      response. Send that page token to receive the subsequent page.
  r   Tr0   r   r   r  r   r   r   N)r   r   r   r   r*   r+   extraLocationTypesr  rU   rr   r   r   r  r  r   r    r!   r  r    sv      -y,,Q> 9  #&			q4	0$#Y##Ay/@/@/F/FG(#i##A&)r    r  c                   ^    e Zd ZdZ ej
                  dd      Z ej                  dd      Zy).NetappProjectsLocationsOperationsCancelRequestzA NetappProjectsLocationsOperationsCancelRequest object.

  Fields:
    cancelOperationRequest: A CancelOperationRequest resource to be passed as
      the request body.
    name: The name of the operation resource to be cancelled.
  r   r   r   Tr  N)	r   r   r   r   r*   r4   cancelOperationRequestr+   rU   r   r    r!   r  r    s3     29112JAN			q4	0$r    r  c                   8    e Zd ZdZ ej
                  dd      Zy).NetappProjectsLocationsOperationsDeleteRequestzA NetappProjectsLocationsOperationsDeleteRequest object.

  Fields:
    name: The name of the operation resource to be deleted.
  r   Tr  Nr  r   r    r!   r  r    r  r    r  c                   8    e Zd ZdZ ej
                  dd      Zy)+NetappProjectsLocationsOperationsGetRequestzqA NetappProjectsLocationsOperationsGetRequest object.

  Fields:
    name: The name of the operation resource.
  r   Tr  Nr  r   r    r!   r  r    r  r    r  c                       e Zd ZdZ ej
                  d      Z ej
                  dd      Z ej                  dej                  j                        Z ej
                  d      Zy	)
,NetappProjectsLocationsOperationsListRequestzA NetappProjectsLocationsOperationsListRequest object.

  Fields:
    filter: The standard list filter.
    name: The name of the operation's parent resource.
    pageSize: The standard list page size.
    pageToken: The standard list page token.
  r   r   Tr  r   r   r   N)r   r   r   r   r*   r+   r  rU   rr   r   r   r  r  r   r    r!   r  r     sa     !9  #&			q4	0$#Y##Ay/@/@/F/FG(#i##A&)r    r  c                       e Zd ZdZ ej
                  dd      Z ej                  dd      Z ej
                  d      Z	y)	0NetappProjectsLocationsStoragePoolsCreateRequesta  A NetappProjectsLocationsStoragePoolsCreateRequest object.

  Fields:
    parent: Required. Value for parent.
    storagePool: A StoragePool resource to be passed as the request body.
    storagePoolId: Required. Id of the requesting storage pool. Must be unique
      within the parent resource. Must contain only letters, numbers and
      hyphen, with the first character a letter, the last a letter or a
      number, and a 63 character maximum.
  r   Tr  r@  r   r   N)
r   r   r   r   r*   r+   r  r4   r   storagePoolIdr   r    r!   r  r    sC    	 !9  T2&&	&&}a8+')''*-r    r  c                   8    e Zd ZdZ ej
                  dd      Zy)0NetappProjectsLocationsStoragePoolsDeleteRequestzuA NetappProjectsLocationsStoragePoolsDeleteRequest object.

  Fields:
    name: Required. Name of the storage pool
  r   Tr  Nr  r   r    r!   r  r  !  r  r    r  c                   8    e Zd ZdZ ej
                  dd      Zy)-NetappProjectsLocationsStoragePoolsGetRequestzrA NetappProjectsLocationsStoragePoolsGetRequest object.

  Fields:
    name: Required. Name of the storage pool
  r   Tr  Nr  r   r    r!   r  r  +  r  r    r  c                       e Zd ZdZ ej
                  d      Z ej
                  d      Z ej                  dej                  j                        Z ej
                  d      Z ej
                  dd	      Zy
).NetappProjectsLocationsStoragePoolsListRequesta  A NetappProjectsLocationsStoragePoolsListRequest object.

  Fields:
    filter: Optional. List filter.
    orderBy: Optional. Sort results. Supported values are "name", "name desc"
      or "" (unsorted).
    pageSize: Optional. The maximum number of items to return.
    pageToken: Optional. The next_page_token value to use if there are
      additional results to retrieve for this list request.
    parent: Required. Parent value
  r   r   r   r   r   r   Tr  Nr  r   r    r!   r  r  5  r  r    r  c                       e Zd ZdZ ej
                  dd      Z ej                  dd      Z ej
                  d      Z	y)	/NetappProjectsLocationsStoragePoolsPatchRequesta/  A NetappProjectsLocationsStoragePoolsPatchRequest object.

  Fields:
    name: Identifier. Name of the storage pool
    storagePool: A StoragePool resource to be passed as the request body.
    updateMask: Required. Field mask is used to specify the fields to be
      overwritten in the StoragePool resource by the update. The fields
      specified in the update_mask are relative to the resource, not the full
      request. A field will be overwritten if it is in the mask. If the user
      does not provide a mask then all fields will be overwritten.
  r   Tr  r@  r   r   N)
r   r   r   r   r*   r+   rU   r4   r   r  r   r    r!   r  r  I  sC    
 
		q4	0$&	&&}a8+$y$$Q'*r    r  c                   ^    e Zd ZdZ ej
                  dd      Z ej                  dd      Zy)0NetappProjectsLocationsStoragePoolsSwitchRequestzA NetappProjectsLocationsStoragePoolsSwitchRequest object.

  Fields:
    name: Required. Name of the storage pool
    switchActiveReplicaZoneRequest: A SwitchActiveReplicaZoneRequest resource
      to be passed as the request body.
  r   Tr  SwitchActiveReplicaZoneRequestr   N)	r   r   r   r   r*   r+   rU   r4   switchActiveReplicaZoneRequestr   r    r!   r  r  [  s4     
		q4	0$#99#9#9:Z\]#^ r    r  c                   ^    e Zd ZdZ ej
                  dd      Z ej                  dd      Zy)BNetappProjectsLocationsStoragePoolsValidateDirectoryServiceRequesta  A NetappProjectsLocationsStoragePoolsValidateDirectoryServiceRequest
  object.

  Fields:
    name: Required. Name of the storage pool
    validateDirectoryServiceRequest: A ValidateDirectoryServiceRequest
      resource to be passed as the request body.
  r   Tr  ValidateDirectoryServiceRequestr   N)	r   r   r   r   r*   r+   rU   r4   validateDirectoryServiceRequestr   r    r!   r  r  h  s4     
		q4	0$$:I$:$:;\^_$`!r    r  c                       e Zd ZdZ ej
                  dd      Z ej                  dd      Z ej
                  d      Z	y)	+NetappProjectsLocationsVolumesCreateRequesta  A NetappProjectsLocationsVolumesCreateRequest object.

  Fields:
    parent: Required. Value for parent.
    volume: A Volume resource to be passed as the request body.
    volumeId: Required. Id of the requesting volume. Must be unique within the
      parent resource. Must contain only letters, numbers and hyphen, with the
      first character a letter, the last a letter or a number, and a 63
      character maximum.
  r   Tr  rD  r   r   N)
r   r   r   r   r*   r+   r  r4   volumer   r   r    r!   r  r  v  sC    	 !9  T2&!9!!(A.&"Y""1%(r    r  c                   \    e Zd ZdZ ej
                  d      Z ej                  dd      Zy)+NetappProjectsLocationsVolumesDeleteRequesta?  A NetappProjectsLocationsVolumesDeleteRequest object.

  Fields:
    force: If this field is set as true, CCFE will not block the volume
      resource deletion even if it has any snapshots resource. (Otherwise, the
      request will only work if the volume has no snapshots.)
    name: Required. Name of the volume
  r   r   Tr  N)	r   r   r   r   r*   rI   forcer+   rU   r   r    r!   r  r    s/     !)
 
 
#%			q4	0$r    r  c                   8    e Zd ZdZ ej
                  dd      Zy)(NetappProjectsLocationsVolumesGetRequestzgA NetappProjectsLocationsVolumesGetRequest object.

  Fields:
    name: Required. Name of the volume
  r   Tr  Nr  r   r    r!   r  r    r  r    r  c                       e Zd ZdZ ej
                  d      Z ej
                  d      Z ej                  dej                  j                        Z ej
                  d      Z ej
                  dd	      Zy
))NetappProjectsLocationsVolumesListRequesta  A NetappProjectsLocationsVolumesListRequest object.

  Fields:
    filter: Filtering results
    orderBy: Hint for how to order the results
    pageSize: Requested page size. Server may return fewer items than
      requested. If unspecified, the server will pick an appropriate default.
    pageToken: A token identifying a page of results the server should return.
    parent: Required. Parent value for ListVolumesRequest
  r   r   r   r   r   r   Tr  Nr  r   r    r!   r  r    r  r    r  c                       e Zd ZdZ ej
                  dd      Z ej
                  d      Z ej                  dd      Z	y)	*NetappProjectsLocationsVolumesPatchRequesta  A NetappProjectsLocationsVolumesPatchRequest object.

  Fields:
    name: Identifier. Name of the volume
    updateMask: Required. Field mask is used to specify the fields to be
      overwritten in the Volume resource by the update. The fields specified
      in the update_mask are relative to the resource, not the full request. A
      field will be overwritten if it is in the mask. If the user does not
      provide a mask then all fields will be overwritten.
    volume: A Volume resource to be passed as the request body.
  r   Tr  r   rD  r   N)
r   r   r   r   r*   r+   rU   r  r4   r  r   r    r!   r  r    sC    
 
		q4	0$$y$$Q'*!9!!(A.&r    r  c                       e Zd ZdZ ej
                  dd      Z ej                  dd      Z ej
                  d      Z	y)	5NetappProjectsLocationsVolumesQuotaRulesCreateRequesta  A NetappProjectsLocationsVolumesQuotaRulesCreateRequest object.

  Fields:
    parent: Required. Parent value for CreateQuotaRuleRequest
    quotaRule: A QuotaRule resource to be passed as the request body.
    quotaRuleId: Required. ID of the quota rule to create. Must be unique
      within the parent resource. Must contain only letters, numbers,
      underscore and hyphen, with the first character a letter or underscore,
      the last a letter or underscore or a number, and a 63 character maximum.
  r   Tr  r4  r   r   N)
r   r   r   r   r*   r+   r  r4   	quotaRulequotaRuleIdr   r    r!   r  r    sC    	 !9  T2&$i$$[!4)%	%%a(+r    r  c                   8    e Zd ZdZ ej
                  dd      Zy)5NetappProjectsLocationsVolumesQuotaRulesDeleteRequestzyA NetappProjectsLocationsVolumesQuotaRulesDeleteRequest object.

  Fields:
    name: Required. Name of the quota rule.
  r   Tr  Nr  r   r    r!   r  r    r  r    r  c                   8    e Zd ZdZ ej
                  dd      Zy)2NetappProjectsLocationsVolumesQuotaRulesGetRequestzuA NetappProjectsLocationsVolumesQuotaRulesGetRequest object.

  Fields:
    name: Required. Name of the quota rule
  r   Tr  Nr  r   r    r!   r  r    r  r    r  c                       e Zd ZdZ ej
                  d      Z ej
                  d      Z ej                  dej                  j                        Z ej
                  d      Z ej
                  dd	      Zy
)3NetappProjectsLocationsVolumesQuotaRulesListRequesta  A NetappProjectsLocationsVolumesQuotaRulesListRequest object.

  Fields:
    filter: Optional. Filtering results
    orderBy: Optional. Hint for how to order the results
    pageSize: Optional. Requested page size. Server may return fewer items
      than requested. If unspecified, the server will pick an appropriate
      default.
    pageToken: Optional. A token identifying a page of results the server
      should return.
    parent: Required. Parent value for ListQuotaRulesRequest
  r   r   r   r   r   r   Tr  Nr  r   r    r!   r  r    r  r    r  c                       e Zd ZdZ ej
                  dd      Z ej                  dd      Z ej
                  d      Z	y)	4NetappProjectsLocationsVolumesQuotaRulesPatchRequesta  A NetappProjectsLocationsVolumesQuotaRulesPatchRequest object.

  Fields:
    name: Identifier. The resource name of the quota rule. Format: `projects/{
      project_number}/locations/{location_id}/volumes/volumes/{volume_id}/quot
      aRules/{quota_rule_id}`.
    quotaRule: A QuotaRule resource to be passed as the request body.
    updateMask: Optional. Field mask is used to specify the fields to be
      overwritten in the Quota Rule resource by the update. The fields
      specified in the update_mask are relative to the resource, not the full
      request. A field will be overwritten if it is in the mask. If the user
      does not provide a mask then all fields will be overwritten.
  r   Tr  r4  r   r   N)
r   r   r   r   r*   r+   rU   r4   r   r  r   r    r!   r	  r	    sC     
		q4	0$$i$$[!4)$y$$Q'*r    r	  c                       e Zd ZdZ ej
                  dd      Z ej                  dd      Z ej
                  d      Z	y)	7NetappProjectsLocationsVolumesReplicationsCreateRequesta=  A NetappProjectsLocationsVolumesReplicationsCreateRequest object.

  Fields:
    parent: Required. The NetApp volume to create the replications of, in the
      format `projects/{project_id}/locations/{location}/volumes/{volume_id}`
    replication: A Replication resource to be passed as the request body.
    replicationId: Required. ID of the replication to create. Must be unique
      within the parent resource. Must contain only letters, numbers and
      hyphen, with the first character a letter, the last a letter or a
      number, and a 63 character maximum.
  r   Tr  r8  r   r   N)
r   r   r   r   r*   r+   r  r4   r  replicationIdr   r    r!   r  r    sC    
 !9  T2&&	&&}a8+')''*-r    r  c                   8    e Zd ZdZ ej
                  dd      Zy)7NetappProjectsLocationsVolumesReplicationsDeleteRequestzA NetappProjectsLocationsVolumesReplicationsDeleteRequest object.

  Fields:
    name: Required. The replication resource name, in the format
      `projects/*/locations/*/volumes/*/replications/{replication_id}`
  r   Tr  Nr  r   r    r!   r  r  $  r  r    r  c                   ^    e Zd ZdZ ej
                  dd      Z ej                  dd      Zy)ANetappProjectsLocationsVolumesReplicationsEstablishPeeringRequestaz  A NetappProjectsLocationsVolumesReplicationsEstablishPeeringRequest
  object.

  Fields:
    establishPeeringRequest: A EstablishPeeringRequest resource to be passed
      as the request body.
    name: Required. The resource name of the replication, in the format of pro
      jects/{project_id}/locations/{location}/volumes/{volume_id}/replications
      /{replication_id}.
  r   r   r   Tr  N)	r   r   r   r   r*   r4   establishPeeringRequestr+   rU   r   r    r!   r  r  /  s3    	 3I223LaP			q4	0$r    r  c                   8    e Zd ZdZ ej
                  dd      Zy)4NetappProjectsLocationsVolumesReplicationsGetRequestzA NetappProjectsLocationsVolumesReplicationsGetRequest object.

  Fields:
    name: Required. The replication resource name, in the format `projects/{pr
      oject_id}/locations/{location}/volumes/{volume_id}/replications/{replica
      tion_id}`
  r   Tr  Nr  r   r    r!   r  r  ?  r  r    r  c                       e Zd ZdZ ej
                  d      Z ej
                  d      Z ej                  dej                  j                        Z ej
                  d      Z ej
                  dd	      Zy
)5NetappProjectsLocationsVolumesReplicationsListRequesta  A NetappProjectsLocationsVolumesReplicationsListRequest object.

  Fields:
    filter: List filter.
    orderBy: Sort results. Supported values are "name", "name desc" or ""
      (unsorted).
    pageSize: The maximum number of items to return.
    pageToken: The next_page_token value to use if there are additional
      results to retrieve for this list request.
    parent: Required. The volume for which to retrieve replication
      information, in the format
      `projects/{project_id}/locations/{location}/volumes/{volume_id}`.
  r   r   r   r   r   r   Tr  Nr  r   r    r!   r  r  K  s     !9  #&!I!!!$'#Y##Ay/@/@/F/FG(#i##A&) 9  T2&r    r  c                       e Zd ZdZ ej
                  dd      Z ej                  dd      Z ej
                  d      Z	y)	6NetappProjectsLocationsVolumesReplicationsPatchRequesta  A NetappProjectsLocationsVolumesReplicationsPatchRequest object.

  Fields:
    name: Identifier. The resource name of the Replication. Format: `projects/
      {project_id}/locations/{location}/volumes/{volume_id}/replications/{repl
      ication_id}`.
    replication: A Replication resource to be passed as the request body.
    updateMask: Required. Mask of fields to update. At least one path must be
      supplied in this field.
  r   Tr  r8  r   r   N)
r   r   r   r   r*   r+   rU   r4   r  r  r   r    r!   r  r  a  sC    	 
		q4	0$&	&&}a8+$y$$Q'*r    r  c                   ^    e Zd ZdZ ej
                  dd      Z ej                  dd      Zy)7NetappProjectsLocationsVolumesReplicationsResumeRequestap  A NetappProjectsLocationsVolumesReplicationsResumeRequest object.

  Fields:
    name: Required. The resource name of the replication, in the format of pro
      jects/{project_id}/locations/{location}/volumes/{volume_id}/replications
      /{replication_id}.
    resumeReplicationRequest: A ResumeReplicationRequest resource to be passed
      as the request body.
  r   Tr  ResumeReplicationRequestr   N)	r   r   r   r   r*   r+   rU   r4   resumeReplicationRequestr   r    r!   r  r  r  s4     
		q4	0$3Y334NPQRr    r  c                   ^    e Zd ZdZ ej
                  dd      Z ej                  dd      Zy)ANetappProjectsLocationsVolumesReplicationsReverseDirectionRequesta  A NetappProjectsLocationsVolumesReplicationsReverseDirectionRequest
  object.

  Fields:
    name: Required. The resource name of the replication, in the format of pro
      jects/{project_id}/locations/{location}/volumes/{volume_id}/replications
      /{replication_id}.
    reverseReplicationDirectionRequest: A ReverseReplicationDirectionRequest
      resource to be passed as the request body.
  r   Tr  "ReverseReplicationDirectionRequestr   N)	r   r   r   r   r*   r+   rU   r4   "reverseReplicationDirectionRequestr   r    r!   r  r    s4    	 
		q4	0$'=y'='=>bde'f$r    r  c                   ^    e Zd ZdZ ej
                  dd      Z ej                  dd      Zy)5NetappProjectsLocationsVolumesReplicationsStopRequestaj  A NetappProjectsLocationsVolumesReplicationsStopRequest object.

  Fields:
    name: Required. The resource name of the replication, in the format of pro
      jects/{project_id}/locations/{location}/volumes/{volume_id}/replications
      /{replication_id}.
    stopReplicationRequest: A StopReplicationRequest resource to be passed as
      the request body.
  r   Tr  StopReplicationRequestr   N)	r   r   r   r   r*   r+   rU   r4   stopReplicationRequestr   r    r!   r"  r"    3     
		q4	0$19112JANr    r"  c                   ^    e Zd ZdZ ej
                  dd      Z ej                  dd      Zy)5NetappProjectsLocationsVolumesReplicationsSyncRequestaj  A NetappProjectsLocationsVolumesReplicationsSyncRequest object.

  Fields:
    name: Required. The resource name of the replication, in the format of pro
      jects/{project_id}/locations/{location}/volumes/{volume_id}/replications
      /{replication_id}.
    syncReplicationRequest: A SyncReplicationRequest resource to be passed as
      the request body.
  r   Tr  SyncReplicationRequestr   N)	r   r   r   r   r*   r+   rU   r4   syncReplicationRequestr   r    r!   r'  r'    r%  r    r'  c                   ^    e Zd ZdZ ej
                  dd      Z ej                  dd      Zy),NetappProjectsLocationsVolumesRestoreRequesta3  A NetappProjectsLocationsVolumesRestoreRequest object.

  Fields:
    name: Required. The volume resource name, in the format
      `projects/{project_id}/locations/{location}/volumes/{volume_id}`
    restoreBackupFilesRequest: A RestoreBackupFilesRequest resource to be
      passed as the request body.
  r   Tr  RestoreBackupFilesRequestr   N)	r   r   r   r   r*   r+   rU   r4   restoreBackupFilesRequestr   r    r!   r+  r+    s4     
		q4	0$4i445PRSTr    r+  c                   ^    e Zd ZdZ ej
                  dd      Z ej                  dd      Zy)+NetappProjectsLocationsVolumesRevertRequesta/  A NetappProjectsLocationsVolumesRevertRequest object.

  Fields:
    name: Required. The resource name of the volume, in the format of
      projects/{project_id}/locations/{location}/volumes/{volume_id}.
    revertVolumeRequest: A RevertVolumeRequest resource to be passed as the
      request body.
  r   Tr  RevertVolumeRequestr   N)	r   r   r   r   r*   r+   rU   r4   revertVolumeRequestr   r    r!   r/  r/    s3     
		q4	0$.	../DaHr    r/  c                       e Zd ZdZ ej
                  dd      Z ej                  dd      Z ej
                  d      Z	y)	4NetappProjectsLocationsVolumesSnapshotsCreateRequesta+  A NetappProjectsLocationsVolumesSnapshotsCreateRequest object.

  Fields:
    parent: Required. The NetApp volume to create the snapshots of, in the
      format `projects/{project_id}/locations/{location}/volumes/{volume_id}`
    snapshot: A Snapshot resource to be passed as the request body.
    snapshotId: Required. ID of the snapshot to create. Must be unique within
      the parent resource. Must contain only letters, numbers and hyphen, with
      the first character a letter, the last a letter or a number, and a 63
      character maximum.
  r   Tr  r<  r   r   N)
r   r   r   r   r*   r+   r  r4   snapshot
snapshotIdr   r    r!   r3  r3    sC    
 !9  T2&#Y##J2($y$$Q'*r    r3  c                   8    e Zd ZdZ ej
                  dd      Zy)4NetappProjectsLocationsVolumesSnapshotsDeleteRequestzA NetappProjectsLocationsVolumesSnapshotsDeleteRequest object.

  Fields:
    name: Required. The snapshot resource name, in the format
      `projects/*/locations/*/volumes/*/snapshots/{snapshot_id}`
  r   Tr  Nr  r   r    r!   r7  r7    r  r    r7  c                   8    e Zd ZdZ ej
                  dd      Zy)1NetappProjectsLocationsVolumesSnapshotsGetRequestzA NetappProjectsLocationsVolumesSnapshotsGetRequest object.

  Fields:
    name: Required. The snapshot resource name, in the format `projects/{proje
      ct_id}/locations/{location}/volumes/{volume_id}/snapshots/{snapshot_id}`
  r   Tr  Nr  r   r    r!   r9  r9    r  r    r9  c                       e Zd ZdZ ej
                  d      Z ej
                  d      Z ej                  dej                  j                        Z ej
                  d      Z ej
                  dd	      Zy
)2NetappProjectsLocationsVolumesSnapshotsListRequesta  A NetappProjectsLocationsVolumesSnapshotsListRequest object.

  Fields:
    filter: List filter.
    orderBy: Sort results. Supported values are "name", "name desc" or ""
      (unsorted).
    pageSize: The maximum number of items to return.
    pageToken: The next_page_token value to use if there are additional
      results to retrieve for this list request.
    parent: Required. The volume for which to retrieve snapshot information,
      in the format
      `projects/{project_id}/locations/{location}/volumes/{volume_id}`.
  r   r   r   r   r   r   Tr  Nr  r   r    r!   r;  r;    r  r    r;  c                       e Zd ZdZ ej
                  dd      Z ej                  dd      Z ej
                  d      Z	y)	3NetappProjectsLocationsVolumesSnapshotsPatchRequesta  A NetappProjectsLocationsVolumesSnapshotsPatchRequest object.

  Fields:
    name: Identifier. The resource name of the snapshot. Format: `projects/{pr
      oject_id}/locations/{location}/volumes/{volume_id}/snapshots/{snapshot_i
      d}`.
    snapshot: A Snapshot resource to be passed as the request body.
    updateMask: Required. Mask of fields to update. At least one path must be
      supplied in this field.
  r   Tr  r<  r   r   N)
r   r   r   r   r*   r+   rU   r4   r4  r  r   r    r!   r=  r=  		  sC    	 
		q4	0$#Y##J2($y$$Q'*r    r=  c                   r   e Zd ZdZ ej
                  d       G d dej                               Z ej
                  d       G d dej                               Z	 ej                  d      Z ej                  dd	      Z ej                  dd
      Z ej                  d      Z ej                  dd      Zy)r0  a	  This resource represents a long-running operation that is the result of
  a network API call.

  Messages:
    MetadataValue: Service-specific metadata associated with the operation. It
      typically contains progress information and common metadata such as
      create time. Some services might not provide such metadata. Any method
      that returns a long-running operation should document the metadata type,
      if any.
    ResponseValue: The normal, successful response of the operation. If the
      original method returns no data on success, such as `Delete`, the
      response is `google.protobuf.Empty`. If the original method is standard
      `Get`/`Create`/`Update`, the response should be the resource. For other
      methods, the response should have the type `XxxResponse`, where `Xxx` is
      the original method name. For example, if the original method name is
      `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.

  Fields:
    done: If the value is `false`, it means the operation is still in
      progress. If `true`, the operation is completed, and either `error` or
      `response` is available.
    error: The error result of the operation in case of failure or
      cancellation.
    metadata: Service-specific metadata associated with the operation. It
      typically contains progress information and common metadata such as
      create time. Some services might not provide such metadata. Any method
      that returns a long-running operation should document the metadata type,
      if any.
    name: The server-assigned name, which is only unique within the same
      service that originally returns it. If you use the default HTTP mapping,
      the `name` should be a resource name ending with
      `operations/{unique_id}`.
    response: The normal, successful response of the operation. If the
      original method returns no data on success, such as `Delete`, the
      response is `google.protobuf.Empty`. If the original method is standard
      `Get`/`Create`/`Update`, the response should be the resource. For other
      methods, the response should have the type `XxxResponse`, where `Xxx` is
      the original method name. For example, if the original method name is
      `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
  r#   c                   d    e Zd ZdZ G d dej
                        Z ej                  ddd      Zy)Operation.MetadataValuea  Service-specific metadata associated with the operation. It typically
    contains progress information and common metadata such as create time.
    Some services might not provide such metadata. Any method that returns a
    long-running operation should document the metadata type, if any.

    Messages:
      AdditionalProperty: An additional property for a MetadataValue object.

    Fields:
      additionalProperties: Properties of the object. Contains field @type
        with type URL.
    c                   Z    e Zd ZdZ ej
                  d      Z ej                  dd      Zy)*Operation.MetadataValue.AdditionalPropertyrO  r   rP  r   NrQ  r   r    r!   r.   rB  S	  rR  r    r.   r   Tr0   Nr2   r   r    r!   rS  r@  D	  s6    	AY.. 	A 29112FTXYr    rS  c                   d    e Zd ZdZ G d dej
                        Z ej                  ddd      Zy)Operation.ResponseValuea  The normal, successful response of the operation. If the original
    method returns no data on success, such as `Delete`, the response is
    `google.protobuf.Empty`. If the original method is standard
    `Get`/`Create`/`Update`, the response should be the resource. For other
    methods, the response should have the type `XxxResponse`, where `Xxx` is
    the original method name. For example, if the original method name is
    `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.

    Messages:
      AdditionalProperty: An additional property for a ResponseValue object.

    Fields:
      additionalProperties: Properties of the object. Contains field @type
        with type URL.
    c                   Z    e Zd ZdZ ej
                  d      Z ej                  dd      Zy)*Operation.ResponseValue.AdditionalPropertyzAn additional property for a ResponseValue object.

      Fields:
        key: Name of the additional property.
        value: A extra_types.JsonValue attribute.
      r   rP  r   NrQ  r   r    r!   r.   rF  r	  rR  r    r.   r   Tr0   Nr2   r   r    r!   ResponseValuerD  `	  s6     	AY.. 	A 29112FTXYr    rG  r   Statusr   r   r   r   N)r   r   r   r   r   rG   r*   r3   rS  rG  rI   doner4   errorrW  r+   rU   responser   r    r!   r0  r0  	  s    'R "8!!"89Zi'' Z :Z6 "8!!"89Zi'' Z :Z< 
 			"$
 )
 
 1
-%#Y##OQ7(			q	!$#Y##OQ7(r    r0  c                      e Zd ZdZ ej
                  d      Z ej
                  d      Z ej
                  d      Z ej                  d      Z
 ej
                  d      Z ej
                  d      Z ej
                  d      Zy	)
OperationMetadataa  Represents the metadata of the long-running operation.

  Fields:
    apiVersion: Output only. API version used to start the operation.
    createTime: Output only. The time the operation was created.
    endTime: Output only. The time the operation finished running.
    requestedCancellation: Output only. Identifies whether the user has
      requested cancellation of the operation. Operations that have been
      canceled successfully have Operation.error value with a
      google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`.
    statusMessage: Output only. Human-readable status of the operation, if
      any.
    target: Output only. Server-defined resource path for the target of the
      operation.
    verb: Output only. Name of the verb executed by the operation.
  r   r   r   r   r   r   r   N)r   r   r   r   r*   r+   
apiVersionrL   endTimerI   requestedCancellationstatusMessagetargetverbr   r    r!   rM  rM  	  s    " %y$$Q'*$y$$Q'*!I!!!$'0)003')''*- 9  #&			q	!$r    rM  c                   .   e Zd ZdZ G d dej
                        Z G d dej
                        Z ej                  d       G d dej                               Z ej                  d	      Z ej                  d
      Z ej                  dej                   j"                        Z ej&                  dd      Z ej                  d      Z ej,                  dd      Z ej                  d      Z ej                  d      Z ej,                  dd      Zy)r4  a=  QuotaRule specifies the maximum disk space a user or group can use
  within a volume. They can be used for creating default and individual quota
  rules.

  Enums:
    StateValueValuesEnum: Output only. State of the quota rule
    TypeValueValuesEnum: Required. The type of quota rule.

  Messages:
    LabelsValue: Optional. Labels of the quota rule

  Fields:
    createTime: Output only. Create time of the quota rule
    description: Optional. Description of the quota rule
    diskLimitMib: Required. The maximum allowed disk space in MiB.
    labels: Optional. Labels of the quota rule
    name: Identifier. The resource name of the quota rule. Format: `projects/{
      project_number}/locations/{location_id}/volumes/volumes/{volume_id}/quot
      aRules/{quota_rule_id}`.
    state: Output only. State of the quota rule
    stateDetails: Output only. State details of the quota rule
    target: Optional. The quota rule applies to the specified user or group,
      identified by a Unix UID/GID, Windows SID, or null for default.
    type: Required. The type of quota rule.
  c                   (    e Zd ZdZdZdZdZdZdZdZ	y)	QuotaRule.StateValueValuesEnuma1  Output only. State of the quota rule

    Values:
      STATE_UNSPECIFIED: Unspecified state for quota rule
      CREATING: Quota rule is creating
      UPDATING: Quota rule is updating
      DELETING: Quota rule is deleting
      READY: Quota rule is ready
      ERROR: Quota rule is in error state.
    r   r   r   r   r   r   N)
r   r   r   r   r   r   r   r   r   r   r   r    r!   r"   rV  	  s(    	 HHHEEr    r"   c                   $    e Zd ZdZdZdZdZdZdZy)QuotaRule.TypeValueValuesEnumaC  Required. The type of quota rule.

    Values:
      TYPE_UNSPECIFIED: Unspecified type for quota rule
      INDIVIDUAL_USER_QUOTA: Individual user quota rule
      INDIVIDUAL_GROUP_QUOTA: Individual group quota rule
      DEFAULT_USER_QUOTA: Default user quota rule
      DEFAULT_GROUP_QUOTA: Default group quota rule
    r   r   r   r   r   N)	r   r   r   r   rd   INDIVIDUAL_USER_QUOTAINDIVIDUAL_GROUP_QUOTADEFAULT_USER_QUOTADEFAULT_GROUP_QUOTAr   r    r!   TypeValueValuesEnumrX  	  s'     r    r]  r#   c                   d    e Zd ZdZ G d dej
                        Z ej                  ddd      Zy)QuotaRule.LabelsValuezOptional. Labels of the quota rule

    Messages:
      AdditionalProperty: An additional property for a LabelsValue object.

    Fields:
      additionalProperties: Additional properties of type LabelsValue
    c                   X    e Zd ZdZ ej
                  d      Z ej
                  d      Zy)(QuotaRule.LabelsValue.AdditionalPropertyr(   r   r   Nr)   r   r    r!   r.   ra  	  r/   r    r.   r   Tr0   Nr2   r   r    r!   r5   r_  	  r6   r    r5   r   r   r   r   r   r   r   r   r7   r8   N)r   r   r   r   r*   rF   r"   r]  r   rG   r3   r5   r+   rL   rM   rr   r   r   diskLimitMibr4   rS   rU   r\   r]   r^   rR  typer   r    r!   r4  r4  	  s   4Y^^ $INN   "8!!"89ZI%% Z :Z. %y$$Q'*%	%%a(+'''93D3D3J3JK,!9!!-3&			q	!$
)

4a
8%&&&q), 9  #&			2A	6$r    r4  c                      e Zd ZdZ G d dej
                        Z G d dej
                        Z G d dej
                        Z G d d	ej
                        Z	 G d
 dej
                        Z
 ej                  d       G d dej                               Z ej                  d      Z ej                  d      Z ej                  d      Z ej                  d      Z ej(                  dd      Z ej,                  d      Z ej(                  dd      Z ej2                  dd      Z ej(                  dd      Z ej(                  dd      Z ej2                  dd      Z ej                  d      Z ej2                  dd      Z ej2                  d	d      Z  ej                  d       Z! ej2                  dd!      Z" ej                  d"      Z# ej(                  d#d$      Z$y%)&r8  a	  Replication is a nested resource under Volume, that describes a cross-
  region replication relationship between 2 volumes in different regions.

  Enums:
    HybridReplicationTypeValueValuesEnum: Output only. Type of the hybrid
      replication.
    MirrorStateValueValuesEnum: Output only. Indicates the state of mirroring.
    ReplicationScheduleValueValuesEnum: Required. Indicates the schedule for
      replication.
    RoleValueValuesEnum: Output only. Indicates whether this points to source
      or destination.
    StateValueValuesEnum: Output only. State of the replication.

  Messages:
    LabelsValue: Resource labels to represent user provided metadata.

  Fields:
    clusterLocation: Optional. Location of the user cluster.
    createTime: Output only. Replication create time.
    description: A description about this replication relationship.
    destinationVolume: Output only. Full name of destination volume resource.
      Example : "projects/{project}/locations/{location}/volumes/{volume_id}"
    destinationVolumeParameters: Required. Input only. Destination volume
      parameters
    healthy: Output only. Condition of the relationship. Can be one of the
      following: - true: The replication relationship is healthy. It has not
      missed the most recent scheduled transfer. - false: The replication
      relationship is not healthy. It has missed the most recent scheduled
      transfer.
    hybridPeeringDetails: Output only. Hybrid peering details.
    hybridReplicationType: Output only. Type of the hybrid replication.
    hybridReplicationUserCommands: Output only. Copy pastable snapmirror
      commands to be executed on onprem cluster by the customer.
    labels: Resource labels to represent user provided metadata.
    mirrorState: Output only. Indicates the state of mirroring.
    name: Identifier. The resource name of the Replication. Format: `projects/
      {project_id}/locations/{location}/volumes/{volume_id}/replications/{repl
      ication_id}`.
    replicationSchedule: Required. Indicates the schedule for replication.
    role: Output only. Indicates whether this points to source or destination.
    sourceVolume: Output only. Full name of source volume resource. Example :
      "projects/{project}/locations/{location}/volumes/{volume_id}"
    state: Output only. State of the replication.
    stateDetails: Output only. State details of the replication.
    transferStats: Output only. Replication transfer statistics.
  c                   $    e Zd ZdZdZdZdZdZdZy)0Replication.HybridReplicationTypeValueValuesEnuma>  Output only. Type of the hybrid replication.

    Values:
      HYBRID_REPLICATION_TYPE_UNSPECIFIED: Unspecified hybrid replication
        type.
      MIGRATION: Hybrid replication type for migration.
      CONTINUOUS_REPLICATION: Hybrid replication type for continuous
        replication.
      ONPREM_REPLICATION: New field for reversible OnPrem replication, to be
        used for data protection.
      REVERSE_ONPREM_REPLICATION: Hybrid replication type for incremental
        Transfer in the reverse direction (GCNV is source and Onprem is
        destination)
    r   r   r   r   r   N)	r   r   r   r   #HYBRID_REPLICATION_TYPE_UNSPECIFIEDr   r   r   r   r   r    r!   r   rf  1
  s&     +,'I!"r    r   c                   4    e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zd
Zy)&Replication.MirrorStateValueValuesEnuma  Output only. Indicates the state of mirroring.

    Values:
      MIRROR_STATE_UNSPECIFIED: Unspecified MirrorState
      PREPARING: Destination volume is being prepared.
      MIRRORED: Destination volume has been initialized and is ready to
        receive replication transfers.
      STOPPED: Destination volume is not receiving replication transfers.
      TRANSFERRING: Incremental replication is in progress.
      BASELINE_TRANSFERRING: Baseline replication is in progress.
      ABORTED: Replication is aborted.
      EXTERNALLY_MANAGED: Replication is being managed from Onprem ONTAP.
      PENDING_PEERING: Peering is yet to be established.
    r   r   r   r   r   r   r   r   r7   N)r   r   r   r   MIRROR_STATE_UNSPECIFIED	PREPARINGMIRROREDSTOPPEDTRANSFERRINGBASELINE_TRANSFERRINGABORTEDEXTERNALLY_MANAGEDPENDING_PEERINGr   r    r!   MirrorStateValueValuesEnumri  F
  s9      !IHGLGOr    rs  c                        e Zd ZdZdZdZdZdZy).Replication.ReplicationScheduleValueValuesEnuma2  Required. Indicates the schedule for replication.

    Values:
      REPLICATION_SCHEDULE_UNSPECIFIED: Unspecified ReplicationSchedule
      EVERY_10_MINUTES: Replication happens once every 10 minutes.
      HOURLY: Replication happens once every hour.
      DAILY: Replication happens once every day.
    r   r   r   r   N)r   r   r   r    REPLICATION_SCHEDULE_UNSPECIFIEDr   r   r   r   r    r!   r   ru  _
  s     ()$FEr    r   c                       e Zd ZdZdZdZdZy)Replication.RoleValueValuesEnumzOutput only. Indicates whether this points to source or destination.

    Values:
      REPLICATION_ROLE_UNSPECIFIED: Unspecified replication role
      SOURCE: Indicates Source volume.
      DESTINATION: Indicates Destination volume.
    r   r   r   N)r   r   r   r   REPLICATION_ROLE_UNSPECIFIEDSOURCEDESTINATIONr   r    r!   RoleValueValuesEnumrx  m
  s     $% FKr    r|  c                   8    e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZy) Replication.StateValueValuesEnuma  Output only. State of the replication.

    Values:
      STATE_UNSPECIFIED: Unspecified replication State
      CREATING: Replication is creating.
      READY: Replication is ready.
      UPDATING: Replication is updating.
      DELETING: Replication is deleting.
      ERROR: Replication is in error state.
      PENDING_CLUSTER_PEERING: Replication is waiting for cluster peering to
        be established.
      PENDING_SVM_PEERING: Replication is waiting for SVM peering to be
        established.
      PENDING_REMOTE_RESYNC: Replication is waiting for Commands to be
        executed on Onprem ONTAP.
      EXTERNALLY_MANAGED_REPLICATION: Onprem ONTAP is destination and
        Replication can only be managed from Onprem.
    r   r   r   r   r   r   r   r   r7   r8   N)r   r   r   r   r   r   r   r   r   r   r   r   PENDING_REMOTE_RESYNCEXTERNALLY_MANAGED_REPLICATIONr   r    r!   r"   r~  y
  s@    $ HEHHE%&"r    r"   r#   c                   d    e Zd ZdZ G d dej
                        Z ej                  ddd      Zy)Replication.LabelsValuerm   c                   X    e Zd ZdZ ej
                  d      Z ej
                  d      Zy)*Replication.LabelsValue.AdditionalPropertyr(   r   r   Nr)   r   r    r!   r.   r  
  r/   r    r.   r   Tr0   Nr2   r   r    r!   r5   r  
  r6   r    r5   r   r   r   r   r   r   r   r   r   r7   UserCommandsr8   r9   r:   r;   r<   r=   r>   r?   r@   TransferStatsrA   N)%r   r   r   r   r*   rF   r   rs  r   r|  r"   r   rG   r3   r5   r+   r  rL   rM   destinationVolumer4   destinationVolumeParametersrI   healthyhybridPeeringDetailsr\   r  hybridReplicationUserCommandsrS   mirrorStaterU   r	  rolerx   r]   r^   transferStatsr   r    r!   r8  r8  
  s   -^#Y^^ #*9>> 29>> 
INN 
'Y^^ '< "8!!"89ZI%% Z :Z. *I))!,/$y$$Q'*%	%%a(++i++A. 6	 6 67TVW X"I""1%'///0FJ-)--.TVWX"8)"8"8"K!9!!-4&#	##$@"E+			r	"$+	++,PRTU			2B	7$&&&r*,
)

4b
9%&&&r*,()(("=-r    r8  c                       e Zd ZdZ ej
                  d      Z ej
                  dd      Z ej
                  d      Zy)r,  a  RestoreBackupFilesRequest restores files from a backup to a volume.

  Fields:
    backup: Required. The backup resource name, in the format `projects/{proje
      ct_id}/locations/{location}/backupVaults/{backup_vault_id}/backups/{back
      up_id}`
    fileList: Required. List of files to be restored in the form of their
      absolute path as in source volume.
    restoreDestinationPath: Optional. Absolute directory path in the
      destination volume.
  r   r   Tr0   r   N)	r   r   r   r   r*   r+   r  fileListrestoreDestinationPathr   r    r!   r,  r,  
  sB    
 !9  #&"Y""1t4(09003r    r,  c                   X    e Zd ZdZ ej
                  d      Z ej
                  d      Zy)RestoreParametersa  The RestoreParameters if volume is created from a snapshot or backup.

  Fields:
    sourceBackup: Full name of the backup resource. Format: projects/{project}
      /locations/{location}/backupVaults/{backup_vault_id}/backups/{backup_id}
    sourceSnapshot: Full name of the snapshot resource. Format: projects/{proj
      ect}/locations/{location}/volumes/{volume}/snapshots/{snapshot}
  r   r   N)r   r   r   r   r*   r+   sourceBackuprw   r   r    r!   r  r  
  s-     '&&q),(9((+.r    r  c                       e Zd ZdZy)r  z7ResumeReplicationRequest resumes a stopped replication.Nr   r   r    r!   r  r  
  s    @r    r  c                       e Zd ZdZy)r  zReverseReplicationDirectionRequest reverses direction of replication.
  Source becomes destination and destination becomes source.
  Nr   r   r    r!   r  r  
  r   r    r  c                   4    e Zd ZdZ ej
                  d      Zy)r0  aa  RevertVolumeRequest reverts the given volume to the specified snapshot.

  Fields:
    snapshotId: Required. The snapshot resource ID, in the format 'my-
      snapshot', where the specified ID is the {snapshot_id} of the fully
      qualified name like projects/{project_id}/locations/{location_id}/volume
      s/{volume_id}/snapshots/{snapshot_id}
  r   N)r   r   r   r   r*   r+   r5  r   r    r!   r0  r0  
  s     %y$$Q'*r    r0  c                   <   e Zd ZdZ G d dej
                        Z G d dej
                        Z ej                  dd      Z	 ej                  d      Z ej                  d      Z ej                  d	      Z ej                  d
      Z ej                  d      Z ej                  d      Z ej                  d      Z ej                  d      Z ej                  d      Z ej                  d      Z ej                  d      Z ej                  dd      Zy)r   a)
  An export policy rule describing various export options.

  Enums:
    AccessTypeValueValuesEnum: Access type (ReadWrite, ReadOnly, None)
    SquashModeValueValuesEnum: Optional. Defines how user identity squashing
      is applied for this export rule. This field is the preferred way to
      configure squashing behavior and takes precedence over `has_root_access`
      if both are provided.

  Fields:
    accessType: Access type (ReadWrite, ReadOnly, None)
    allowedClients: Comma separated list of allowed clients IP addresses
    anonUid: Optional. An integer representing the anonymous user ID. Range is
      0 to 4294967295. Required when squash_mode is ROOT_SQUASH or ALL_SQUASH.
    hasRootAccess: Whether Unix root access will be granted.
    kerberos5ReadOnly: If enabled (true) the rule defines a read only access
      for clients matching the 'allowedClients' specification. It enables nfs
      clients to mount using 'authentication' kerberos security mode.
    kerberos5ReadWrite: If enabled (true) the rule defines read and write
      access for clients matching the 'allowedClients' specification. It
      enables nfs clients to mount using 'authentication' kerberos security
      mode. The 'kerberos5ReadOnly' value be ignored if this is enabled.
    kerberos5iReadOnly: If enabled (true) the rule defines a read only access
      for clients matching the 'allowedClients' specification. It enables nfs
      clients to mount using 'integrity' kerberos security mode.
    kerberos5iReadWrite: If enabled (true) the rule defines read and write
      access for clients matching the 'allowedClients' specification. It
      enables nfs clients to mount using 'integrity' kerberos security mode.
      The 'kerberos5iReadOnly' value be ignored if this is enabled.
    kerberos5pReadOnly: If enabled (true) the rule defines a read only access
      for clients matching the 'allowedClients' specification. It enables nfs
      clients to mount using 'privacy' kerberos security mode.
    kerberos5pReadWrite: If enabled (true) the rule defines read and write
      access for clients matching the 'allowedClients' specification. It
      enables nfs clients to mount using 'privacy' kerberos security mode. The
      'kerberos5pReadOnly' value be ignored if this is enabled.
    nfsv3: NFS V3 protocol.
    nfsv4: NFS V4 protocol.
    squashMode: Optional. Defines how user identity squashing is applied for
      this export rule. This field is the preferred way to configure squashing
      behavior and takes precedence over `has_root_access` if both are
      provided.
  c                        e Zd ZdZdZdZdZdZy)0SimpleExportPolicyRule.AccessTypeValueValuesEnumzAccess type (ReadWrite, ReadOnly, None)

    Values:
      ACCESS_TYPE_UNSPECIFIED: Unspecified Access Type
      READ_ONLY: Read Only
      READ_WRITE: Read Write
      READ_NONE: None
    r   r   r   r   N)r   r   r   r   ACCESS_TYPE_UNSPECIFIED	READ_ONLY
READ_WRITE	READ_NONEr   r    r!   AccessTypeValueValuesEnumr  (  s      IJIr    r  c                        e Zd ZdZdZdZdZdZy)0SimpleExportPolicyRule.SquashModeValueValuesEnuma8  Optional. Defines how user identity squashing is applied for this
    export rule. This field is the preferred way to configure squashing
    behavior and takes precedence over `has_root_access` if both are provided.

    Values:
      SQUASH_MODE_UNSPECIFIED: Defaults to NO_ROOT_SQUASH.
      NO_ROOT_SQUASH: The root user (UID 0) retains full access. Other users
        are unaffected.
      ROOT_SQUASH: The root user (UID 0) is squashed to anonymous user ID.
        Other users are unaffected.
      ALL_SQUASH: All users are squashed to anonymous user ID.
    r   r   r   r   N)r   r   r   r   SQUASH_MODE_UNSPECIFIEDNO_ROOT_SQUASHROOT_SQUASH
ALL_SQUASHr   r    r!   SquashModeValueValuesEnumr  6  s      NKJr    r  r   r   r   r   r   r   r   r7   r8   r9   r:   r;   r<   N)r   r   r   r   r*   rF   r  r  r\   
accessTyper+   allowedClientsrr   anonUidhasRootAccessrI   kerberos5ReadOnlykerberos5ReadWritekerberos5iReadOnlykerberos5iReadWritekerberos5pReadOnlykerberos5pReadWritenfsv3nfsv4
squashModer   r    r!   r   r   
  s    *X).. ).. $ #y""#>B*(9((+."I""1%'')''*-,i,,Q/-y--a0-y--a0.	..q1-y--a0.	..r2
 )
 
 
$%
 )
 
 
$%"y""#>C*r    r   c                      e Zd ZdZ G d dej
                        Z ej                  d       G d dej                               Z
 ej                  d      Z ej                  d      Z ej                  dd	      Z ej                  d
      Z ej"                  dd      Z ej                  d      Z ej(                  d      Zy)r<  aP  Snapshot is a point-in-time version of a Volume's content.

  Enums:
    StateValueValuesEnum: Output only. The snapshot state.

  Messages:
    LabelsValue: Resource labels to represent user provided metadata.

  Fields:
    createTime: Output only. The time when the snapshot was created.
    description: A description of the snapshot with 2048 characters or less.
      Requests with longer descriptions will be rejected.
    labels: Resource labels to represent user provided metadata.
    name: Identifier. The resource name of the snapshot. Format: `projects/{pr
      oject_id}/locations/{location}/volumes/{volume_id}/snapshots/{snapshot_i
      d}`.
    state: Output only. The snapshot state.
    stateDetails: Output only. State details of the storage pool
    usedBytes: Output only. Current storage usage for the snapshot in bytes.
  c                   ,    e Zd ZdZdZdZdZdZdZdZ	dZ
y	)
Snapshot.StateValueValuesEnuma\  Output only. The snapshot state.

    Values:
      STATE_UNSPECIFIED: Unspecified Snapshot State
      READY: Snapshot State is Ready
      CREATING: Snapshot State is Creating
      DELETING: Snapshot State is Deleting
      UPDATING: Snapshot State is Updating
      DISABLED: Snapshot State is Disabled
      ERROR: Snapshot State is Error
    r   r   r   r   r   r   r   N)r   r   r   r   r   r   r   r   r   r  r   r   r    r!   r"   r  m  s-    
 EHHHHEr    r"   r#   c                   d    e Zd ZdZ G d dej
                        Z ej                  ddd      Zy)Snapshot.LabelsValuerm   c                   X    e Zd ZdZ ej
                  d      Z ej
                  d      Zy)'Snapshot.LabelsValue.AdditionalPropertyr(   r   r   Nr)   r   r    r!   r.   r    r/   r    r.   r   Tr0   Nr2   r   r    r!   r5   r    r6   r    r5   r   r   r   r   r   r   r   N)r   r   r   r   r*   rF   r"   r   rG   r3   r5   r+   rL   rM   r4   rS   rU   r\   r]   r^   r   	usedBytesr   r    r!   r<  r<  W  s    *Y^^ ( "8!!"89ZI%% Z :Z. %y$$Q'*%	%%a(+!9!!-3&			q	!$
)

4a
8%&&&q),"i""1%)r    r<  c                       e Zd ZdZ ej
                  dd      Z ej                  d      Z ej
                  dd      Z	 ej
                  dd      Z
 ej
                  d	d
      Zy)SnapshotPolicyaE  Snapshot Policy for a volume.

  Fields:
    dailySchedule: Daily schedule policy.
    enabled: If enabled, make snapshots automatically according to the
      schedules. Default is false.
    hourlySchedule: Hourly schedule policy.
    monthlySchedule: Monthly schedule policy.
    weeklySchedule: Weekly schedule policy.
  r   r   r   r   r   rn  r   WeeklyScheduler   N)r   r   r   r   r*   r4   dailySchedulerI   r   hourlySchedulemonthlyScheduleweeklyScheduler   r    r!   r  r    sn    	 ))((!<-"I""1%')9))*:A>.*I**+<a@/)9))*:A>.r    r  c                       e Zd ZdZ G d dej
                        Z G d dej
                        Z ej                  dd      Z	 ej                  d      Z ej                  ddd	
      Z ej                  d      Z ej                  d      Z ej                  d      Z ej                  d      Z ej"                  dd
      Z ej                  d      Z ej                  d      Z ej                  d      Z ej                  d      Zy)StandardQueryParametersa4  Query parameters accepted by all methods.

  Enums:
    FXgafvValueValuesEnum: V1 error format.
    AltValueValuesEnum: Data format for response.

  Fields:
    f__xgafv: V1 error format.
    access_token: OAuth access token.
    alt: Data format for response.
    callback: JSONP
    fields: Selector specifying which fields to include in a partial response.
    key: API key. Your API key identifies your project and provides you with
      API access, quota, and reports. Required unless you provide an OAuth 2.0
      token.
    oauth_token: OAuth 2.0 token for the current user.
    prettyPrint: Returns response with indentations and line breaks.
    quotaUser: Available to use for quota purposes for server-side
      applications. Can be any arbitrary string assigned to a user, but should
      not exceed 40 characters.
    trace: A tracing token of the form "token:<tokenid>" to include in api
      requests.
    uploadType: Legacy upload protocol for media (e.g. "media", "multipart").
    upload_protocol: Upload protocol for media (e.g. "raw", "multipart").
  c                       e Zd ZdZdZdZdZy)*StandardQueryParameters.AltValueValuesEnumzData format for response.

    Values:
      json: Responses with Content-Type of application/json
      media: Media download with context-dependent Content-Type
      proto: Responses with Content-Type of application/x-protobuf
    r   r   r   N)r   r   r   r   jsonmediaprotor   r    r!   AltValueValuesEnumr    s     DEEr    r  c                       e Zd ZdZdZdZy)-StandardQueryParameters.FXgafvValueValuesEnumzVV1 error format.

    Values:
      _1: v1 error format
      _2: v2 error format
    r   r   N)r   r   r   r   _1_2r   r    r!   FXgafvValueValuesEnumr    s     
B	
Br    r  r   r   r   r  )defaultr   r   r   r   r7   Tr8   r9   r:   r;   N)r   r   r   r   r*   rF   r  r  r\   f__xgafvr+   access_tokenaltcallbackfieldsr,   oauth_tokenrI   prettyPrint	quotaUsertrace
uploadTypeupload_protocolr   r    r!   r  r    s   4
9>> 
inn  !Y  !8!<(&&&q),	0!VD#"Y""1%( 9  #&	a #%	%%a(+&	&&q$7+#i##A&)
)


#%$y$$R(*)I))"-/r    r  c                      e Zd ZdZ ej
                  d       G d dej                               Z ej                  dej                  j                        Z ej                  ddd	      Z ej                  d
      Zy)rH  a  The `Status` type defines a logical error model that is suitable for
  different programming environments, including REST APIs and RPC APIs. It is
  used by [gRPC](https://github.com/grpc). Each `Status` message contains
  three pieces of data: error code, error message, and error details. You can
  find out more about this error model and how to work with it in the [API
  Design Guide](https://cloud.google.com/apis/design/errors).

  Messages:
    DetailsValueListEntry: A DetailsValueListEntry object.

  Fields:
    code: The status code, which should be an enum value of google.rpc.Code.
    details: A list of messages that carry the error details. There is a
      common set of message types for APIs to use.
    message: A developer-facing error message, which should be in English. Any
      user-facing error message should be localized and sent in the
      google.rpc.Status.details field, or localized by the client.
  r#   c                   d    e Zd ZdZ G d dej
                        Z ej                  ddd      Zy)Status.DetailsValueListEntryzA DetailsValueListEntry object.

    Messages:
      AdditionalProperty: An additional property for a DetailsValueListEntry
        object.

    Fields:
      additionalProperties: Properties of the object. Contains field @type
        with type URL.
    c                   Z    e Zd ZdZ ej
                  d      Z ej                  dd      Zy)/Status.DetailsValueListEntry.AdditionalPropertyzAn additional property for a DetailsValueListEntry object.

      Fields:
        key: Name of the additional property.
        value: A extra_types.JsonValue attribute.
      r   rP  r   NrQ  r   r    r!   r.   r    rR  r    r.   r   Tr0   Nr2   r   r    r!   DetailsValueListEntryr    rT  r    r  r   r   r   Tr0   r   N)r   r   r   r   r   rG   r*   r3   r  rr   r   r   coder4   detailsr+   messager   r    r!   rH  rH    s    & "8!!"89Zi// Z :Z2 
 		9+<+<+B+B	C$"I""#:AM'!I!!!$'r    rH  c                   4    e Zd ZdZ ej
                  d      Zy)r#  a  StopReplicationRequest stops a replication until resumed.

  Fields:
    force: Indicates whether to stop replication forcefully while data
      transfer is in progress. Warning! if force is true, this will abort any
      current transfers and can lead to data loss due to partial transfer. If
      force is false, stop replication will fail while data transfer is in
      progress and you will need to retry later.
  r   N)r   r   r   r   r*   rI   r  r   r    r!   r#  r#  '  s     !)
 
 
#%r    r#  c                      e Zd ZdZ G d dej
                        Z G d dej
                        Z G d dej
                        Z G d d	ej
                        Z	 e
j                  d
       G d dej                               Z ej                  d      Z ej                   d      Z ej$                  d      Z ej(                  d      Z ej(                  d      Z ej                  d      Z ej                   d      Z ej                  d      Z ej                   d      Z ej6                  dd      Z ej                   d      Z ej(                  d      Z ej(                  d      Z ej                  d      Z  ejB                  dd      Z" ej                   d      Z# ej                  d      Z$ ej                  d      Z% ej                  d      Z& ej6                  dd       Z' ej                  d!      Z( ej                   d"      Z) ej                   d#      Z* ej6                  dd$      Z+ ej6                  d	d%      Z, ej                  d&      Z- ej(                  d'      Z. ej(                  d(      Z/ ej(                  d)      Z0 ej(                  d*ejb                  jd                  +      Z3 ej                  d,      Z4y-).r@  a  StoragePool is a container for volumes with a service level and
  capacity. Volumes can be created in a pool of sufficient available capacity.
  StoragePool capacity is what you are billed for.

  Enums:
    EncryptionTypeValueValuesEnum: Output only. Specifies the current pool
      encryption key source.
    QosTypeValueValuesEnum: Optional. QoS (Quality of Service) Type of the
      storage pool
    ServiceLevelValueValuesEnum: Required. Service level of the storage pool
    StateValueValuesEnum: Output only. State of the storage pool

  Messages:
    LabelsValue: Optional. Labels as key value pairs

  Fields:
    activeDirectory: Optional. Specifies the Active Directory to be used for
      creating a SMB volume.
    allowAutoTiering: Optional. True if the storage pool supports Auto Tiering
      enabled volumes. Default is false. Auto-tiering can be enabled after
      storage pool creation but it can't be disabled once enabled.
    availableThroughputMibps: Output only. Available throughput of the storage
      pool (in MiB/s).
    capacityGib: Required. Capacity in GIB of the pool
    coldTierSizeUsedGib: Output only. Total cold tier data rounded down to the
      nearest GiB used by the storage pool.
    createTime: Output only. Create time of the storage pool
    customPerformanceEnabled: Optional. True if using Independent Scaling of
      capacity and performance (Hyperdisk) By default set to false
    description: Optional. Description of the storage pool
    enableHotTierAutoResize: Optional. Flag indicating that the hot-tier
      threshold will be auto-increased by 10% of the hot-tier when it hits
      100%. Default is true. The increment will kick in only if the new size
      after increment is still less than or equal to storage pool size.
    encryptionType: Output only. Specifies the current pool encryption key
      source.
    globalAccessAllowed: Deprecated. Used to allow SO pool to access AD or DNS
      server from other regions.
    hotTierSizeGib: Optional. Total hot tier capacity for the Storage Pool. It
      is applicable only to Flex service level. It should be less than the
      minimum storage pool size and cannot be more than the current storage
      pool size. It cannot be decreased once set.
    hotTierSizeUsedGib: Output only. Total hot tier data rounded down to the
      nearest GiB used by the storage pool.
    kmsConfig: Optional. Specifies the KMS config to be used for volume
      encryption.
    labels: Optional. Labels as key value pairs
    ldapEnabled: Optional. Flag indicating if the pool is NFS LDAP enabled or
      not.
    name: Identifier. Name of the storage pool
    network: Required. VPC Network name. Format:
      projects/{project}/global/networks/{network}
    psaRange: Optional. This field is not implemented. The values provided in
      this field are ignored.
    qosType: Optional. QoS (Quality of Service) Type of the storage pool
    replicaZone: Optional. Specifies the replica zone for regional
      storagePool.
    satisfiesPzi: Output only. Reserved for future use
    satisfiesPzs: Output only. Reserved for future use
    serviceLevel: Required. Service level of the storage pool
    state: Output only. State of the storage pool
    stateDetails: Output only. State details of the storage pool
    totalIops: Optional. Custom Performance Total IOPS of the pool if not
      provided, it will be calculated based on the total_throughput_mibps
    totalThroughputMibps: Optional. Custom Performance Total Throughput of the
      pool (in MiBps)
    volumeCapacityGib: Output only. Allocated size of all volumes in GIB in
      the storage pool
    volumeCount: Output only. Volume count of the storage pool
    zone: Optional. Specifies the active zone for regional storagePool.
  c                       e Zd ZdZdZdZdZy))StoragePool.EncryptionTypeValueValuesEnuma.  Output only. Specifies the current pool encryption key source.

    Values:
      ENCRYPTION_TYPE_UNSPECIFIED: The source of the encryption key is not
        specified.
      SERVICE_MANAGED: Google managed encryption key.
      CLOUD_KMS: Customer managed encryption key, which is stored in KMS.
    r   r   r   Nr   r   r   r   ENCRYPTION_TYPE_UNSPECIFIEDSERVICE_MANAGED	CLOUD_KMSr   r    r!   EncryptionTypeValueValuesEnumr  ~       #$OIr    r  c                       e Zd ZdZdZdZdZy)"StoragePool.QosTypeValueValuesEnumzOptional. QoS (Quality of Service) Type of the storage pool

    Values:
      QOS_TYPE_UNSPECIFIED: Unspecified QoS Type
      AUTO: QoS Type is Auto
      MANUAL: QoS Type is Manual
    r   r   r   N)r   r   r   r   QOS_TYPE_UNSPECIFIEDAUTOre   r   r    r!   QosTypeValueValuesEnumr    s     DFr    r  c                   $    e Zd ZdZdZdZdZdZdZy)'StoragePool.ServiceLevelValueValuesEnuma  Required. Service level of the storage pool

    Values:
      SERVICE_LEVEL_UNSPECIFIED: Unspecified service level.
      PREMIUM: Premium service level.
      EXTREME: Extreme service level.
      STANDARD: Standard service level.
      FLEX: Flex service level.
    r   r   r   r   r   Nrb  r   r    r!   ServiceLevelValueValuesEnumr    ri  r    r  c                   0    e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zy
) StoragePool.StateValueValuesEnuma  Output only. State of the storage pool

    Values:
      STATE_UNSPECIFIED: Unspecified Storage Pool State
      READY: Storage Pool State is Ready
      CREATING: Storage Pool State is Creating
      DELETING: Storage Pool State is Deleting
      UPDATING: Storage Pool State is Updating
      RESTORING: Storage Pool State is Restoring
      DISABLED: Storage Pool State is Disabled
      ERROR: Storage Pool State is Error
    r   r   r   r   r   r   r   r   N)r   r   r   r   r   r   r   r   r   	RESTORINGr  r   r   r    r!   r"   r    s2     EHHHIHEr    r"   r#   c                   d    e Zd ZdZ G d dej
                        Z ej                  ddd      Zy)StoragePool.LabelsValueOptional. Labels as key value pairs

    Messages:
      AdditionalProperty: An additional property for a LabelsValue object.

    Fields:
      additionalProperties: Additional properties of type LabelsValue
    c                   X    e Zd ZdZ ej
                  d      Z ej
                  d      Zy)*StoragePool.LabelsValue.AdditionalPropertyr(   r   r   Nr)   r   r    r!   r.   r    r/   r    r.   r   Tr0   Nr2   r   r    r!   r5   r    r6   r    r5   r   r   r   r   r   r   r   r7   r8   r9   r:   r;   r<   r=   r>   r?   r@   rA   rB   rC   rD   rE                           r      N)5r   r   r   r   r*   rF   r  r  r  r"   r   rG   r3   r5   r+   r  rI   allowAutoTieringr   availableThroughputMibpsrr   capacityGibcoldTierSizeUsedGibrL   customPerformanceEnabledrM   enableHotTierAutoResizer\   encryptionTypeglobalAccessAllowedhotTierSizeGibhotTierSizeUsedGibr   r4   rS   ldapEnabledrU   networkpsaRangeqosTypereplicaZoneru   rv   serviceLevelr]   r^   	totalIopstotalThroughputMibpsvolumeCapacityGibr   r   volumeCountzoner   r    r!   r@  r@  5  s   FPinn 
y~~ 
INN  Y^^ , "8!!"89ZI%% Z :Z. *I))!,/+Y++A.1Y11!4&	&&q)+.	..q1$y$$Q'*3Y33A6%	%%a(+2I2215&9&&'FK..	..r2)9))"-.-y--b1#i##B')!9!!-4&&	&&r*+			r	"$!I!!"%'"Y""2&(I 8"='%	%%b)+'''+,'''+,$$$%BBG,
)

4b
9%&&&r*,$i$$R()///3,i,,R0&	&&r93D3D3J3JK+			r	"$r    r@  c                       e Zd ZdZy)r  z^SwitchActiveReplicaZoneRequest switch the active/replica zone for a
  regional storagePool.
  Nr   r   r    r!   r  r    r   r    r  c                       e Zd ZdZy)r(  zKSyncReplicationRequest syncs the replication from source to destination.
  Nr   r   r    r!   r(  r(    s    r    r(  c                       e Zd ZdZ G d dej
                        Z ej                  dej                  j                        Z
 ej                  d      Z ej                  dd      Zy)	r   a  Defines tiering policy for the volume.

  Enums:
    TierActionValueValuesEnum: Optional. Flag indicating if the volume has
      tiering policy enable/pause. Default is PAUSED.

  Fields:
    coolingThresholdDays: Optional. Time in days to mark the volume's data
      block as cold and make it eligible for tiering, can be range from 2-183.
      Default is 31.
    hotTierBypassModeEnabled: Optional. Flag indicating that the hot tier
      bypass mode is enabled. Default is false. This is only applicable to
      Flex service level.
    tierAction: Optional. Flag indicating if the volume has tiering policy
      enable/pause. Default is PAUSED.
  c                       e Zd ZdZdZdZdZy)'TieringPolicy.TierActionValueValuesEnumaY  Optional. Flag indicating if the volume has tiering policy
    enable/pause. Default is PAUSED.

    Values:
      TIER_ACTION_UNSPECIFIED: Unspecified.
      ENABLED: When tiering is enabled, new cold data will be tiered.
      PAUSED: When paused, tiering won't be performed on new data. Existing
        data stays tiered until accessed.
    r   r   r   N)r   r   r   r   TIER_ACTION_UNSPECIFIEDENABLEDPAUSEDr   r    r!   TierActionValueValuesEnumr!    s      GFr    r%  r   r   r   r   N)r   r   r   r   r*   rF   r%  rr   r   r   coolingThresholdDaysrI   hotTierBypassModeEnabledr\   
tierActionr   r    r!   r   r     sb    ")..  0//9;L;L;R;RS3Y33A6"y""#>B*r    r   c                   0   e Zd ZdZ ej
                  d      Z ej                  d      Z ej
                  d      Z	 ej
                  d      Z
 ej
                  d      Z ej
                  d      Z ej                  d      Z ej
                  d	      Zy
)r  a  TransferStats reports all statistics related to replication transfer.

  Fields:
    lagDuration: Lag duration indicates the duration by which Destination
      region volume content lags behind the primary region volume content.
    lastTransferBytes: Last transfer size in bytes.
    lastTransferDuration: Time taken during last transfer.
    lastTransferEndTime: Time when last transfer completed.
    lastTransferError: A message describing the cause of the last transfer
      failure.
    totalTransferDuration: Cumulative time taken across all transfers for the
      replication relationship.
    transferBytes: Cumulative bytes transferred so far for the replication
      relationship.
    updateTime: Time when progress was updated last.
  r   r   r   r   r   r   r   r7   N)r   r   r   r   r*   r+   lagDurationrr   lastTransferByteslastTransferDurationlastTransferEndTimelastTransferErrortotalTransferDurationtransferBytes
updateTimer   r    r!   r  r  (  s    " &	%%a(+,i,,Q/...q1-	--a0+i++A./)//2()((+-$y$$Q'*r    r  c                   8    e Zd ZdZ ej
                  dd      Zy)r  zUserCommands contains the commands to be executed by the customer.

  Fields:
    commands: Output only. List of commands to be executed by the customer.
  r   Tr0   N)r   r   r   r   r*   r+   commandsr   r    r!   r  r  D  s     #Y""1t4(r    r  c                   `    e Zd ZdZ G d dej
                        Z ej                  dd      Zy)r  aK  ValidateDirectoryServiceRequest validates the directory service policy
  attached to the storage pool.

  Enums:
    DirectoryServiceTypeValueValuesEnum: Type of directory service policy
      attached to the storage pool.

  Fields:
    directoryServiceType: Type of directory service policy attached to the
      storage pool.
  c                       e Zd ZdZdZdZy)CValidateDirectoryServiceRequest.DirectoryServiceTypeValueValuesEnumzType of directory service policy attached to the storage pool.

    Values:
      DIRECTORY_SERVICE_TYPE_UNSPECIFIED: Directory service type is not
        specified.
      ACTIVE_DIRECTORY: Active directory policy attached to the storage pool.
    r   r   N)r   r   r   r   "DIRECTORY_SERVICE_TYPE_UNSPECIFIEDACTIVE_DIRECTORYr   r    r!   #DirectoryServiceTypeValueValuesEnumr6  [  s     *+&r    r9  r   N)	r   r   r   r   r*   rF   r9  r\   directoryServiceTyper   r    r!   r  r  N  s0    
	INN 	 -,,-RTUVr    r  c                       e Zd ZdZy)r  z@VerifyKmsConfigRequest specifies the KMS config to be validated.Nr   r   r    r!   r  r  i  s    Ir    r  c                   |    e Zd ZdZ ej
                  d      Z ej                  d      Z ej
                  d      Z	y)VerifyKmsConfigResponsea  VerifyKmsConfigResponse contains the information if the config is
  correctly and error message.

  Fields:
    healthError: Output only. Error message if config is not healthy.
    healthy: Output only. If the customer key configured correctly to the
      encrypt volume.
    instructions: Output only. Instructions for the customers to provide the
      access to the encryption key.
  r   r   r   N)
r   r   r   r   r*   r+   healthErrorrI   r  r  r   r    r!   r=  r=  m  s?    	 &	%%a(+"I""1%'&&&q),r    r=  c                   ~   e Zd ZdZ G d dej
                        Z G d dej
                        Z G d dej
                        Z G d d	ej
                        Z	 G d
 dej
                        Z
 G d dej
                        Z G d dej
                        Z ej                  d       G d dej                               Z ej"                  d      Z ej&                  dd      Z ej&                  dd      Z ej,                  d      Z ej,                  d      Z ej"                  d      Z ej"                  d      Z ej6                  dd      Z ej&                  dd      Z ej<                  d      Z ej,                  d       Z  ej&                  d!d"      Z! ej<                  d#      Z" ej"                  d$      Z# ej&                  dd%      Z$ ej<                  d&      Z% ej<                  d'      Z& ej&                  d(d)d*+      Z' ej<                  d,      Z( ej"                  d-      Z) ej"                  d.      Z* ej6                  dd/d*+      Z+ ej"                  d0      Z, ej"                  d1      Z- ej&                  d2d3      Z. ej6                  dd4d*+      Z/ ej6                  d	d5      Z0 ej6                  dd6      Z1 ej"                  d7      Z2 ej6                  dd8d*+      Z3 ejh                  d9      Z5 ej<                  d:      Z6 ej&                  d;d<      Z7 ej6                  dd=      Z8 ej"                  d>      Z9 ej"                  d?      Z: ejh                  d@      Z; ej&                  dAdB      Z< ej"                  dC      Z= ej,                  dD      Z> ej"                  dE      Z?yF)GrD  a  Volume provides a filesystem that you can mount.

  Enums:
    EncryptionTypeValueValuesEnum: Output only. Specified the current volume
      encryption key source.
    ProtocolsValueListEntryValuesEnum:
    RestrictedActionsValueListEntryValuesEnum:
    SecurityStyleValueValuesEnum: Optional. Security Style of the Volume
    ServiceLevelValueValuesEnum: Output only. Service level of the volume
    SmbSettingsValueListEntryValuesEnum:
    StateValueValuesEnum: Output only. State of the volume

  Messages:
    LabelsValue: Optional. Labels as key value pairs

  Fields:
    activeDirectory: Output only. Specifies the ActiveDirectory name of a SMB
      volume.
    backupConfig: BackupConfig of the volume.
    cacheParameters: Optional. Cache parameters for the volume.
    capacityGib: Required. Capacity in GIB of the volume
    coldTierSizeGib: Output only. Size of the volume cold tier data rounded
      down to the nearest GiB.
    createTime: Output only. Create time of the volume
    description: Optional. Description of the volume
    encryptionType: Output only. Specified the current volume encryption key
      source.
    exportPolicy: Optional. Export policy of the volume
    hasReplication: Output only. Indicates whether the volume is part of a
      replication relationship.
    hotTierSizeUsedGib: Output only. Total hot tier data rounded down to the
      nearest GiB used by the Volume. This field is only used for flex Service
      Level
    hybridReplicationParameters: Optional. The Hybrid Replication parameters
      for the volume.
    kerberosEnabled: Optional. Flag indicating if the volume is a kerberos
      volume or not, export policy rules control kerberos security modes
      (krb5, krb5i, krb5p).
    kmsConfig: Output only. Specifies the KMS config to be used for volume
      encryption.
    labels: Optional. Labels as key value pairs
    largeCapacity: Optional. Flag indicating if the volume will be a large
      capacity volume or a regular volume.
    ldapEnabled: Output only. Flag indicating if the volume is NFS LDAP
      enabled or not.
    mountOptions: Output only. Mount options of this volume
    multipleEndpoints: Optional. Flag indicating if the volume will have an IP
      address per node for volumes supporting multiple IP endpoints. Only the
      volume with large_capacity will be allowed to have multiple endpoints.
    name: Identifier. Name of the volume
    network: Output only. VPC Network name. Format:
      projects/{project}/global/networks/{network}
    protocols: Required. Protocols required for the volume
    psaRange: Output only. This field is not implemented. The values provided
      in this field are ignored.
    replicaZone: Output only. Specifies the replica zone for regional volume.
    restoreParameters: Optional. Specifies the source of the volume to be
      created from.
    restrictedActions: Optional. List of actions that are restricted on this
      volume.
    securityStyle: Optional. Security Style of the Volume
    serviceLevel: Output only. Service level of the volume
    shareName: Required. Share name of the volume
    smbSettings: Optional. SMB share settings for the volume.
    snapReserve: Optional. Snap_reserve specifies percentage of volume storage
      reserved for snapshot storage. Default is 0 percent.
    snapshotDirectory: Optional. Snapshot_directory if enabled (true) the
      volume will contain a read-only .snapshot directory which provides
      access to each of the volume's snapshots.
    snapshotPolicy: Optional. SnapshotPolicy for a volume.
    state: Output only. State of the volume
    stateDetails: Output only. State details of the volume
    storagePool: Required. StoragePool name of the volume
    throughputMibps: Optional. Throughput of the volume (in MiB/s)
    tieringPolicy: Tiering policy for the volume.
    unixPermissions: Optional. Default unix style permission (e.g. 777) the
      mount point will be created with. Applicable for NFS protocol types
      only.
    usedGib: Output only. Used capacity in GIB of the volume. This is computed
      periodically and it does not represent the realtime usage.
    zone: Output only. Specifies the active zone for regional volume.
  c                       e Zd ZdZdZdZdZy)$Volume.EncryptionTypeValueValuesEnuma0  Output only. Specified the current volume encryption key source.

    Values:
      ENCRYPTION_TYPE_UNSPECIFIED: The source of the encryption key is not
        specified.
      SERVICE_MANAGED: Google managed encryption key.
      CLOUD_KMS: Customer managed encryption key, which is stored in KMS.
    r   r   r   Nr  r   r    r!   r  rA    r  r    r  c                   $    e Zd ZdZdZdZdZdZdZy)(Volume.ProtocolsValueListEntryValuesEnumzProtocolsValueListEntryValuesEnum enum type.

    Values:
      PROTOCOLS_UNSPECIFIED: Unspecified protocol
      NFSV3: NFS V3 protocol
      NFSV4: NFS V4 protocol
      SMB: SMB protocol
      ISCSI: ISCSI protocol
    r   r   r   r   r   Nrt  r   r    r!   !ProtocolsValueListEntryValuesEnumrC    r{  r    rD  c                       e Zd ZdZdZdZy)0Volume.RestrictedActionsValueListEntryValuesEnumzRestrictedActionsValueListEntryValuesEnum enum type.

    Values:
      RESTRICTED_ACTION_UNSPECIFIED: Unspecified restricted action
      DELETE: Prevent volume from being deleted when mounted.
    r   r   N)r   r   r   r   RESTRICTED_ACTION_UNSPECIFIEDDELETEr   r    r!   )RestrictedActionsValueListEntryValuesEnumrF    s     %&!Fr    rI  c                       e Zd ZdZdZdZdZy)#Volume.SecurityStyleValueValuesEnumzOptional. Security Style of the Volume

    Values:
      SECURITY_STYLE_UNSPECIFIED: SecurityStyle is unspecified
      NTFS: SecurityStyle uses NTFS
      UNIX: SecurityStyle uses UNIX
    r   r   r   N)r   r   r   r   SECURITY_STYLE_UNSPECIFIEDNTFSUNIXr   r    r!   SecurityStyleValueValuesEnumrK    s     "#DDr    rO  c                   $    e Zd ZdZdZdZdZdZdZy)"Volume.ServiceLevelValueValuesEnuma
  Output only. Service level of the volume

    Values:
      SERVICE_LEVEL_UNSPECIFIED: Unspecified service level.
      PREMIUM: Premium service level.
      EXTREME: Extreme service level.
      STANDARD: Standard service level.
      FLEX: Flex service level.
    r   r   r   r   r   Nrb  r   r    r!   r  rQ    ri  r    r  c                   8    e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZy)*Volume.SmbSettingsValueListEntryValuesEnumaj  SmbSettingsValueListEntryValuesEnum enum type.

    Values:
      SMB_SETTINGS_UNSPECIFIED: Unspecified default option
      ENCRYPT_DATA: SMB setting encrypt data
      BROWSABLE: SMB setting browsable
      CHANGE_NOTIFY: SMB setting notify change
      NON_BROWSABLE: SMB setting not to notify change
      OPLOCKS: SMB setting oplocks
      SHOW_SNAPSHOT: SMB setting to show snapshots
      SHOW_PREVIOUS_VERSIONS: SMB setting to show previous versions
      ACCESS_BASED_ENUMERATION: SMB setting to access volume based on
        enumerartion
      CONTINUOUSLY_AVAILABLE: Continuously available enumeration
    r   r   r   r   r   r   r   r   r7   r8   N)r   r   r   r   SMB_SETTINGS_UNSPECIFIEDENCRYPT_DATA	BROWSABLECHANGE_NOTIFYNON_BROWSABLEOPLOCKSSHOW_SNAPSHOTSHOW_PREVIOUS_VERSIONSACCESS_BASED_ENUMERATIONCONTINUOUSLY_AVAILABLEr   r    r!   #SmbSettingsValueListEntryValuesEnumrS    s?      !LIMMGM r    r^  c                   8    e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZy)Volume.StateValueValuesEnuma  Output only. State of the volume

    Values:
      STATE_UNSPECIFIED: Unspecified Volume State
      READY: Volume State is Ready
      CREATING: Volume State is Creating
      DELETING: Volume State is Deleting
      UPDATING: Volume State is Updating
      RESTORING: Volume State is Restoring
      DISABLED: Volume State is Disabled
      ERROR: Volume State is Error
      PREPARING: Volume State is Preparing. Note that this is different from
        CREATING where CREATING means the volume is being created, while
        PREPARING means the volume is created and now being prepared for the
        replication.
      READ_ONLY: Volume State is Read Only
    r   r   r   r   r   r   r   r   r7   r8   N)r   r   r   r   r   r   r   r   r   r  r  r   rk  r  r   r    r!   r"   r`  0  s<    " EHHHIHEIIr    r"   r#   c                   d    e Zd ZdZ G d dej
                        Z ej                  ddd      Zy)Volume.LabelsValuer  c                   X    e Zd ZdZ ej
                  d      Z ej
                  d      Zy)%Volume.LabelsValue.AdditionalPropertyr(   r   r   Nr)   r   r    r!   r.   rd  X  r/   r    r.   r   Tr0   Nr2   r   r    r!   r5   rb  M  r6   r    r5   r   r|   r   r   r   r   r   r   r   r7   r   r8   r9   r:   r   r;   r<   r=   r>   r?   r@   rq  rA   Tr0   rB   rC   rD   rE   r  r   r  r  r  r  r  r  r  r      r  !   "   #   $   %   r   &   '   (   )   N)@r   r   r   r   r*   rF   r  rD  rI  rO  r  r^  r"   r   rG   r3   r5   r+   r  r4   backupConfigcacheParametersrr   r
  coldTierSizeGibrL   rM   r\   r  exportPolicyrI   hasReplicationr  hybridReplicationParameterskerberosEnabledr   rS   largeCapacityr  mountOptionsmultipleEndpointsrU   r  	protocolsr  r  restoreParametersrestrictedActionssecurityStyler  r   smbSettingsr   snapReservesnapshotDirectorysnapshotPolicyr]   r^   r   throughputMibpsr   unixPermissionsusedGibr  r   r    r!   rD  rD  ~  s   Qfinn )..  ).. 
Y^^ 
INN  INN 6Y^^ : "8!!"89ZI%% Z :Z. *I))!,/''':,*I**+<a@/&	&&q)+*I**1-/$y$$Q'*%	%%a(+&9&&'FJ.''':,)9))"-.-y--b1 6	 6 67TVX Y*I**2./#i##B')!9!!-4&()((,-&	&&r*+'''rDI,,i,,R0			r	"$!I!!"%'!i!!"ErTXY)"Y""2&(%	%%b)+,i,,-@"E)i))*UWYdhi%)%%&DbI-$$$%BBG,#i##B')#	##$I2X\]+$	$$R(+,i,,R0)9))*:B?.
)

4b
9%&&&r*,%	%%b)+(I((,/()(("=-)I))"-/"I""2&'			r	"$r    rD  c                       e Zd ZdZ ej
                  d      Z ej                  d      Z ej                  d      Z	 ej                  d      Z
y)r  a  Make a snapshot every week e.g. at Monday 04:00, Wednesday 05:20, Sunday
  23:50

  Fields:
    day: Set the day or days of the week to make a snapshot. Accepts a comma
      separated days of the week. Defaults to 'Sunday'.
    hour: Set the hour to start the snapshot (0-23), defaults to midnight (0).
    minute: Set the minute of the hour to start the snapshot (0-59), defaults
      to the top of the hour (0).
    snapshotsToKeep: The maximum number of Snapshots to keep for the hourly
      schedule
  r   r   r   r   N)r   r   r   r   r*   r+   dayr   r   r   r   r   r    r!   r  r    sQ     		a #			a	 $9"&(I((+/r    r  r  z$.xgafvr  1r  2N)r   
__future__r   apitools.base.protorpcliter   r*   apitools.base.pyr   r   packager3   r	   ra   r|   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r  r  r   r"  r%  r(  r+  r/  r3  r7  r;  r?  rC  r,  rY  rn  rq  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r	  r  r  r  r  r  r  r  r  r"  r'  r+  r/  r3  r7  r9  r;  r=  r0  rM  r4  r8  r,  r  r  r  r0  r   r<  r  r  rH  r#  r@  r  r(  r   r  r  r  r  r=  rD  r  AddCustomJsonFieldMappingAddCustomJsonEnumMappingr  r   r    r!   <module>r     s	   ' < % ( s'i'' s'lv0Y v0r59$$ 5,QR9$$ QRh4I-- 4>e:)## e:P/)## /.:+i'' :+z(y(( ("=Y.. =,I%% , &)"3"3 &.I-- ,i// ,*M9$$ M)++ ,Y&& ,&9,, &8iV)"3"3 iVXZ*	!! Z*z8I$5$5 8 8!2!2 88y00 8 8)++ 88Y.. 8
+I-- 
+
EY.. 
E8Y.. 88y00 8 8I-- 88y00 8?)++ ?M"y   M"`-sy(( -s`,i'' ,&"?)## "?J3I<M<M 3$1I<M<M 119J9J 13):K:K 3&(9;L;L (*39J9J 3$19J9J 11i6G6G 13y7H7H 3&(	8I8I (&3i>O>O 3$	1i>O>O 	1	19;L;L 	13I<M<M 3<(Y=N=N ((3y7H7H 3$1y7H7H 11I4E4E 13Y5F5F 3*(i6G6G (&1	(9(9 13Y5F5F 3"1Y5F5F 1
1i6G6G 
11)2C2C 1393D3D 3((I4E4E ($
OY5F5F 
O'):): '0
1Y5F5F 
11Y5F5F 11)2C2C 1'93D3D ' +y7H7H +"1y7H7H 11I4E4E 13Y5F5F 3((i6G6G ($
_y7H7H 
_aIZIZ a&)2C2C &"1)2C2C 11y/@/@ 13	0A0A 3&/1B1B /$)I<M<M )"1I<M<M 119J9J 13):K:K 3*(9;L;L ((+i>O>O +$1i>O>O 11	HYHY 1 	19;L;L 	13I<M<M 3,(Y=N=N ("Si>O>O Sg	HYHY g OI<M<M OOI<M<M OU93D3D UI)2C2C I(9;L;L ($19;L;L 11	8I8I 139J9J 3,():K:K ("i8	!! i8X"	)) "6]7	!! ]7@>)## >D4	 1 1 4$,	)) ,Ay00 A):): 
()++ 
(YDY.. YDxH&y   H&V?Y&& ?&<.i// <.~0%Y 0%f$Y.. $~#)## ~#BY%6%6 Y.. "CI%% "CJ(I%% (859$$ 5Wi&7&7 W6JY.. J*i// *"O#Y O#d,Y&& ,( # " "Z4 ! ! !114> ! ! !114>r    