# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: google/cloud/storageinsights/v1/storageinsights.proto

require 'google/protobuf'

require 'google/api/annotations_pb'
require 'google/api/client_pb'
require 'google/api/field_behavior_pb'
require 'google/api/resource_pb'
require 'google/protobuf/empty_pb'
require 'google/protobuf/field_mask_pb'
require 'google/protobuf/timestamp_pb'
require 'google/rpc/status_pb'
require 'google/type/date_pb'
require 'google/type/datetime_pb'

Google::Protobuf::DescriptorPool.generated_pool.build do
  add_file("google/cloud/storageinsights/v1/storageinsights.proto", :syntax => :proto3) do
    add_message "google.cloud.storageinsights.v1.ListReportConfigsRequest" do
      optional :parent, :string, 1
      optional :page_size, :int32, 2
      optional :page_token, :string, 3
      optional :filter, :string, 4
      optional :order_by, :string, 5
    end
    add_message "google.cloud.storageinsights.v1.ListReportConfigsResponse" do
      repeated :report_configs, :message, 1, "google.cloud.storageinsights.v1.ReportConfig"
      optional :next_page_token, :string, 2
      repeated :unreachable, :string, 3
    end
    add_message "google.cloud.storageinsights.v1.GetReportConfigRequest" do
      optional :name, :string, 1
    end
    add_message "google.cloud.storageinsights.v1.CreateReportConfigRequest" do
      optional :parent, :string, 1
      optional :report_config, :message, 3, "google.cloud.storageinsights.v1.ReportConfig"
      optional :request_id, :string, 4
    end
    add_message "google.cloud.storageinsights.v1.UpdateReportConfigRequest" do
      optional :update_mask, :message, 1, "google.protobuf.FieldMask"
      optional :report_config, :message, 2, "google.cloud.storageinsights.v1.ReportConfig"
      optional :request_id, :string, 3
    end
    add_message "google.cloud.storageinsights.v1.DeleteReportConfigRequest" do
      optional :name, :string, 1
      optional :force, :bool, 2
      optional :request_id, :string, 3
    end
    add_message "google.cloud.storageinsights.v1.ReportDetail" do
      optional :name, :string, 1
      optional :snapshot_time, :message, 2, "google.protobuf.Timestamp"
      optional :report_path_prefix, :string, 8
      optional :shards_count, :int64, 9
      optional :status, :message, 4, "google.rpc.Status"
      map :labels, :string, :string, 5
      optional :target_datetime, :message, 6, "google.type.DateTime"
      optional :report_metrics, :message, 7, "google.cloud.storageinsights.v1.ReportDetail.Metrics"
    end
    add_message "google.cloud.storageinsights.v1.ReportDetail.Metrics" do
      optional :processed_records_count, :int64, 1
    end
    add_message "google.cloud.storageinsights.v1.ListReportDetailsRequest" do
      optional :parent, :string, 1
      optional :page_size, :int32, 2
      optional :page_token, :string, 3
      optional :filter, :string, 4
      optional :order_by, :string, 5
    end
    add_message "google.cloud.storageinsights.v1.ListReportDetailsResponse" do
      repeated :report_details, :message, 1, "google.cloud.storageinsights.v1.ReportDetail"
      optional :next_page_token, :string, 2
      repeated :unreachable, :string, 3
    end
    add_message "google.cloud.storageinsights.v1.GetReportDetailRequest" do
      optional :name, :string, 1
    end
    add_message "google.cloud.storageinsights.v1.OperationMetadata" do
      optional :create_time, :message, 1, "google.protobuf.Timestamp"
      optional :end_time, :message, 2, "google.protobuf.Timestamp"
      optional :target, :string, 3
      optional :verb, :string, 4
      optional :status_message, :string, 5
      optional :requested_cancellation, :bool, 6
      optional :api_version, :string, 7
    end
    add_message "google.cloud.storageinsights.v1.FrequencyOptions" do
      optional :frequency, :enum, 1, "google.cloud.storageinsights.v1.FrequencyOptions.Frequency"
      optional :start_date, :message, 2, "google.type.Date"
      optional :end_date, :message, 3, "google.type.Date"
    end
    add_enum "google.cloud.storageinsights.v1.FrequencyOptions.Frequency" do
      value :FREQUENCY_UNSPECIFIED, 0
      value :DAILY, 1
      value :WEEKLY, 2
    end
    add_message "google.cloud.storageinsights.v1.CSVOptions" do
      optional :record_separator, :string, 1
      optional :delimiter, :string, 2
      optional :header_required, :bool, 3
    end
    add_message "google.cloud.storageinsights.v1.ParquetOptions" do
    end
    add_message "google.cloud.storageinsights.v1.CloudStorageFilters" do
      optional :bucket, :string, 1
    end
    add_message "google.cloud.storageinsights.v1.CloudStorageDestinationOptions" do
      optional :bucket, :string, 1
      optional :destination_path, :string, 2
    end
    add_message "google.cloud.storageinsights.v1.ObjectMetadataReportOptions" do
      repeated :metadata_fields, :string, 1
      oneof :filter do
        optional :storage_filters, :message, 2, "google.cloud.storageinsights.v1.CloudStorageFilters"
      end
      oneof :destination_options do
        optional :storage_destination_options, :message, 3, "google.cloud.storageinsights.v1.CloudStorageDestinationOptions"
      end
    end
    add_message "google.cloud.storageinsights.v1.ReportConfig" do
      optional :name, :string, 1
      optional :create_time, :message, 2, "google.protobuf.Timestamp"
      optional :update_time, :message, 3, "google.protobuf.Timestamp"
      optional :frequency_options, :message, 5, "google.cloud.storageinsights.v1.FrequencyOptions"
      map :labels, :string, :string, 10
      optional :display_name, :string, 11
      oneof :report_format do
        optional :csv_options, :message, 6, "google.cloud.storageinsights.v1.CSVOptions"
        optional :parquet_options, :message, 7, "google.cloud.storageinsights.v1.ParquetOptions"
      end
      oneof :report_kind do
        optional :object_metadata_report_options, :message, 8, "google.cloud.storageinsights.v1.ObjectMetadataReportOptions"
      end
    end
  end
end

module Google
  module Cloud
    module StorageInsights
      module V1
        ListReportConfigsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.storageinsights.v1.ListReportConfigsRequest").msgclass
        ListReportConfigsResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.storageinsights.v1.ListReportConfigsResponse").msgclass
        GetReportConfigRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.storageinsights.v1.GetReportConfigRequest").msgclass
        CreateReportConfigRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.storageinsights.v1.CreateReportConfigRequest").msgclass
        UpdateReportConfigRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.storageinsights.v1.UpdateReportConfigRequest").msgclass
        DeleteReportConfigRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.storageinsights.v1.DeleteReportConfigRequest").msgclass
        ReportDetail = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.storageinsights.v1.ReportDetail").msgclass
        ReportDetail::Metrics = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.storageinsights.v1.ReportDetail.Metrics").msgclass
        ListReportDetailsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.storageinsights.v1.ListReportDetailsRequest").msgclass
        ListReportDetailsResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.storageinsights.v1.ListReportDetailsResponse").msgclass
        GetReportDetailRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.storageinsights.v1.GetReportDetailRequest").msgclass
        OperationMetadata = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.storageinsights.v1.OperationMetadata").msgclass
        FrequencyOptions = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.storageinsights.v1.FrequencyOptions").msgclass
        FrequencyOptions::Frequency = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.storageinsights.v1.FrequencyOptions.Frequency").enummodule
        CSVOptions = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.storageinsights.v1.CSVOptions").msgclass
        ParquetOptions = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.storageinsights.v1.ParquetOptions").msgclass
        CloudStorageFilters = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.storageinsights.v1.CloudStorageFilters").msgclass
        CloudStorageDestinationOptions = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.storageinsights.v1.CloudStorageDestinationOptions").msgclass
        ObjectMetadataReportOptions = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.storageinsights.v1.ObjectMetadataReportOptions").msgclass
        ReportConfig = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.storageinsights.v1.ReportConfig").msgclass
      end
    end
  end
end