# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: google/cloud/filestore/v1beta1/cloud_filestore_service.proto

require 'google/api/annotations_pb'
require 'google/api/client_pb'
require 'google/api/field_behavior_pb'
require 'google/api/resource_pb'
require 'google/longrunning/operations_pb'
require 'google/protobuf/field_mask_pb'
require 'google/protobuf/timestamp_pb'
require 'google/protobuf/wrappers_pb'
require 'google/protobuf'

Google::Protobuf::DescriptorPool.generated_pool.build do
  add_file("google/cloud/filestore/v1beta1/cloud_filestore_service.proto", :syntax => :proto3) do
    add_message "google.cloud.filestore.v1beta1.NetworkConfig" do
      optional :network, :string, 1
      repeated :modes, :enum, 3, "google.cloud.filestore.v1beta1.NetworkConfig.AddressMode"
      optional :reserved_ip_range, :string, 4
      repeated :ip_addresses, :string, 5
    end
    add_enum "google.cloud.filestore.v1beta1.NetworkConfig.AddressMode" do
      value :ADDRESS_MODE_UNSPECIFIED, 0
      value :MODE_IPV4, 1
    end
    add_message "google.cloud.filestore.v1beta1.FileShareConfig" do
      optional :name, :string, 1
      optional :capacity_gb, :int64, 2
      repeated :nfs_export_options, :message, 8, "google.cloud.filestore.v1beta1.NfsExportOptions"
      oneof :source do
        optional :source_backup, :string, 9
      end
    end
    add_message "google.cloud.filestore.v1beta1.NfsExportOptions" do
      repeated :ip_ranges, :string, 1
      optional :access_mode, :enum, 2, "google.cloud.filestore.v1beta1.NfsExportOptions.AccessMode"
      optional :squash_mode, :enum, 3, "google.cloud.filestore.v1beta1.NfsExportOptions.SquashMode"
      optional :anon_uid, :int64, 4
      optional :anon_gid, :int64, 5
    end
    add_enum "google.cloud.filestore.v1beta1.NfsExportOptions.AccessMode" do
      value :ACCESS_MODE_UNSPECIFIED, 0
      value :READ_ONLY, 1
      value :READ_WRITE, 2
    end
    add_enum "google.cloud.filestore.v1beta1.NfsExportOptions.SquashMode" do
      value :SQUASH_MODE_UNSPECIFIED, 0
      value :NO_ROOT_SQUASH, 1
      value :ROOT_SQUASH, 2
    end
    add_message "google.cloud.filestore.v1beta1.Instance" do
      optional :name, :string, 1
      optional :description, :string, 2
      optional :state, :enum, 5, "google.cloud.filestore.v1beta1.Instance.State"
      optional :status_message, :string, 6
      optional :create_time, :message, 7, "google.protobuf.Timestamp"
      optional :tier, :enum, 8, "google.cloud.filestore.v1beta1.Instance.Tier"
      map :labels, :string, :string, 9
      repeated :file_shares, :message, 10, "google.cloud.filestore.v1beta1.FileShareConfig"
      repeated :networks, :message, 11, "google.cloud.filestore.v1beta1.NetworkConfig"
      optional :etag, :string, 12
      optional :satisfies_pzs, :message, 13, "google.protobuf.BoolValue"
    end
    add_enum "google.cloud.filestore.v1beta1.Instance.State" do
      value :STATE_UNSPECIFIED, 0
      value :CREATING, 1
      value :READY, 2
      value :REPAIRING, 3
      value :DELETING, 4
      value :ERROR, 6
      value :RESTORING, 7
    end
    add_enum "google.cloud.filestore.v1beta1.Instance.Tier" do
      value :TIER_UNSPECIFIED, 0
      value :STANDARD, 1
      value :PREMIUM, 2
      value :BASIC_HDD, 3
      value :BASIC_SSD, 4
      value :HIGH_SCALE_SSD, 6
    end
    add_message "google.cloud.filestore.v1beta1.CreateInstanceRequest" do
      optional :parent, :string, 1
      optional :instance_id, :string, 2
      optional :instance, :message, 3, "google.cloud.filestore.v1beta1.Instance"
    end
    add_message "google.cloud.filestore.v1beta1.GetInstanceRequest" do
      optional :name, :string, 1
    end
    add_message "google.cloud.filestore.v1beta1.UpdateInstanceRequest" do
      optional :update_mask, :message, 1, "google.protobuf.FieldMask"
      optional :instance, :message, 2, "google.cloud.filestore.v1beta1.Instance"
    end
    add_message "google.cloud.filestore.v1beta1.RestoreInstanceRequest" do
      optional :name, :string, 1
      optional :file_share, :string, 2
      oneof :source do
        optional :source_snapshot, :string, 3
        optional :source_backup, :string, 4
      end
    end
    add_message "google.cloud.filestore.v1beta1.DeleteInstanceRequest" do
      optional :name, :string, 1
    end
    add_message "google.cloud.filestore.v1beta1.ListInstancesRequest" do
      optional :parent, :string, 1
      optional :page_size, :int32, 2
      optional :page_token, :string, 3
      optional :order_by, :string, 4
      optional :filter, :string, 5
    end
    add_message "google.cloud.filestore.v1beta1.ListInstancesResponse" do
      repeated :instances, :message, 1, "google.cloud.filestore.v1beta1.Instance"
      optional :next_page_token, :string, 2
      repeated :unreachable, :string, 3
    end
    add_message "google.cloud.filestore.v1beta1.Backup" do
      optional :name, :string, 1
      optional :description, :string, 2
      optional :state, :enum, 3, "google.cloud.filestore.v1beta1.Backup.State"
      optional :create_time, :message, 4, "google.protobuf.Timestamp"
      map :labels, :string, :string, 5
      optional :capacity_gb, :int64, 6
      optional :storage_bytes, :int64, 7
      optional :source_instance, :string, 8
      optional :source_file_share, :string, 9
      optional :source_instance_tier, :enum, 10, "google.cloud.filestore.v1beta1.Instance.Tier"
      optional :download_bytes, :int64, 11
      optional :satisfies_pzs, :message, 12, "google.protobuf.BoolValue"
    end
    add_enum "google.cloud.filestore.v1beta1.Backup.State" do
      value :STATE_UNSPECIFIED, 0
      value :CREATING, 1
      value :FINALIZING, 2
      value :READY, 3
      value :DELETING, 4
    end
    add_message "google.cloud.filestore.v1beta1.CreateBackupRequest" do
      optional :parent, :string, 1
      optional :backup, :message, 2, "google.cloud.filestore.v1beta1.Backup"
      optional :backup_id, :string, 3
    end
    add_message "google.cloud.filestore.v1beta1.DeleteBackupRequest" do
      optional :name, :string, 1
    end
    add_message "google.cloud.filestore.v1beta1.UpdateBackupRequest" do
      optional :backup, :message, 1, "google.cloud.filestore.v1beta1.Backup"
      optional :update_mask, :message, 2, "google.protobuf.FieldMask"
    end
    add_message "google.cloud.filestore.v1beta1.GetBackupRequest" do
      optional :name, :string, 1
    end
    add_message "google.cloud.filestore.v1beta1.ListBackupsRequest" do
      optional :parent, :string, 1
      optional :page_size, :int32, 2
      optional :page_token, :string, 3
      optional :order_by, :string, 4
      optional :filter, :string, 5
    end
    add_message "google.cloud.filestore.v1beta1.ListBackupsResponse" do
      repeated :backups, :message, 1, "google.cloud.filestore.v1beta1.Backup"
      optional :next_page_token, :string, 2
      repeated :unreachable, :string, 3
    end
  end
end

module Google
  module Cloud
    module Filestore
      module V1beta1
        NetworkConfig = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.filestore.v1beta1.NetworkConfig").msgclass
        NetworkConfig::AddressMode = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.filestore.v1beta1.NetworkConfig.AddressMode").enummodule
        FileShareConfig = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.filestore.v1beta1.FileShareConfig").msgclass
        NfsExportOptions = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.filestore.v1beta1.NfsExportOptions").msgclass
        NfsExportOptions::AccessMode = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.filestore.v1beta1.NfsExportOptions.AccessMode").enummodule
        NfsExportOptions::SquashMode = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.filestore.v1beta1.NfsExportOptions.SquashMode").enummodule
        Instance = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.filestore.v1beta1.Instance").msgclass
        Instance::State = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.filestore.v1beta1.Instance.State").enummodule
        Instance::Tier = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.filestore.v1beta1.Instance.Tier").enummodule
        CreateInstanceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.filestore.v1beta1.CreateInstanceRequest").msgclass
        GetInstanceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.filestore.v1beta1.GetInstanceRequest").msgclass
        UpdateInstanceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.filestore.v1beta1.UpdateInstanceRequest").msgclass
        RestoreInstanceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.filestore.v1beta1.RestoreInstanceRequest").msgclass
        DeleteInstanceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.filestore.v1beta1.DeleteInstanceRequest").msgclass
        ListInstancesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.filestore.v1beta1.ListInstancesRequest").msgclass
        ListInstancesResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.filestore.v1beta1.ListInstancesResponse").msgclass
        Backup = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.filestore.v1beta1.Backup").msgclass
        Backup::State = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.filestore.v1beta1.Backup.State").enummodule
        CreateBackupRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.filestore.v1beta1.CreateBackupRequest").msgclass
        DeleteBackupRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.filestore.v1beta1.DeleteBackupRequest").msgclass
        UpdateBackupRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.filestore.v1beta1.UpdateBackupRequest").msgclass
        GetBackupRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.filestore.v1beta1.GetBackupRequest").msgclass
        ListBackupsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.filestore.v1beta1.ListBackupsRequest").msgclass
        ListBackupsResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.filestore.v1beta1.ListBackupsResponse").msgclass
      end
    end
  end
end
