# frozen_string_literal: true
# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: google/cloud/policysimulator/v1/simulator.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/cloud/policysimulator/v1/explanations_pb'
require 'google/iam/v1/policy_pb'
require 'google/longrunning/operations_pb'
require 'google/protobuf/timestamp_pb'
require 'google/rpc/status_pb'
require 'google/type/date_pb'


descriptor_data = "\n/google/cloud/policysimulator/v1/simulator.proto\x12\x1fgoogle.cloud.policysimulator.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a\x32google/cloud/policysimulator/v1/explanations.proto\x1a\x1agoogle/iam/v1/policy.proto\x1a#google/longrunning/operations.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x17google/rpc/status.proto\x1a\x16google/type/date.proto\"\xef\x05\n\x06Replay\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x03\x12\x41\n\x05state\x18\x02 \x01(\x0e\x32-.google.cloud.policysimulator.v1.Replay.StateB\x03\xe0\x41\x03\x12\x42\n\x06\x63onfig\x18\x03 \x01(\x0b\x32-.google.cloud.policysimulator.v1.ReplayConfigB\x03\xe0\x41\x02\x12T\n\x0fresults_summary\x18\x05 \x01(\x0b\x32\x36.google.cloud.policysimulator.v1.Replay.ResultsSummaryB\x03\xe0\x41\x03\x1a\xbb\x01\n\x0eResultsSummary\x12\x11\n\tlog_count\x18\x01 \x01(\x05\x12\x17\n\x0funchanged_count\x18\x02 \x01(\x05\x12\x18\n\x10\x64ifference_count\x18\x03 \x01(\x05\x12\x13\n\x0b\x65rror_count\x18\x04 \x01(\x05\x12&\n\x0boldest_date\x18\x05 \x01(\x0b\x32\x11.google.type.Date\x12&\n\x0bnewest_date\x18\x06 \x01(\x0b\x32\x11.google.type.Date\"S\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\x0b\n\x07PENDING\x10\x01\x12\x0b\n\x07RUNNING\x10\x02\x12\r\n\tSUCCEEDED\x10\x03\x12\n\n\x06\x46\x41ILED\x10\x04:\xe1\x01\xea\x41\xdd\x01\n%policysimulator.googleapis.com/Replay\x12\x38projects/{project}/locations/{location}/replays/{replay}\x12\x36\x66olders/{folder}/locations/{location}/replays/{replay}\x12\x42organizations/{organization}/locations/{location}/replays/{replay}\"\xe5\x04\n\x0cReplayResult\x12;\n\x04\x64iff\x18\x05 \x01(\x0b\x32+.google.cloud.policysimulator.v1.ReplayDiffH\x00\x12#\n\x05\x65rror\x18\x06 \x01(\x0b\x32\x12.google.rpc.StatusH\x00\x12\x0c\n\x04name\x18\x01 \x01(\t\x12:\n\x06parent\x18\x02 \x01(\tB*\xfa\x41\'\n%policysimulator.googleapis.com/Replay\x12\x42\n\x0c\x61\x63\x63\x65ss_tuple\x18\x03 \x01(\x0b\x32,.google.cloud.policysimulator.v1.AccessTuple\x12)\n\x0elast_seen_date\x18\x04 \x01(\x0b\x32\x11.google.type.Date:\xaf\x02\xea\x41\xab\x02\n+policysimulator.googleapis.com/ReplayResult\x12Pprojects/{project}/locations/{location}/replays/{replay}/results/{replay_result}\x12Nfolders/{folder}/locations/{location}/replays/{replay}/results/{replay_result}\x12Zorganizations/{organization}/locations/{location}/replays/{replay}/results/{replay_result}B\x08\n\x06result\"h\n\x13\x43reateReplayRequest\x12\x13\n\x06parent\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12<\n\x06replay\x18\x02 \x01(\x0b\x32\'.google.cloud.policysimulator.v1.ReplayB\x03\xe0\x41\x02\"I\n\x17ReplayOperationMetadata\x12.\n\nstart_time\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"O\n\x10GetReplayRequest\x12;\n\x04name\x18\x01 \x01(\tB-\xe0\x41\x02\xfa\x41\'\n%policysimulator.googleapis.com/Replay\"\x80\x01\n\x18ListReplayResultsRequest\x12=\n\x06parent\x18\x01 \x01(\tB-\xe0\x41\x02\xfa\x41\'\n%policysimulator.googleapis.com/Replay\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\"{\n\x19ListReplayResultsResponse\x12\x45\n\x0ereplay_results\x18\x01 \x03(\x0b\x32-.google.cloud.policysimulator.v1.ReplayResult\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"\xc0\x02\n\x0cReplayConfig\x12X\n\x0epolicy_overlay\x18\x01 \x03(\x0b\x32@.google.cloud.policysimulator.v1.ReplayConfig.PolicyOverlayEntry\x12K\n\nlog_source\x18\x02 \x01(\x0e\x32\x37.google.cloud.policysimulator.v1.ReplayConfig.LogSource\x1aK\n\x12PolicyOverlayEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12$\n\x05value\x18\x02 \x01(\x0b\x32\x15.google.iam.v1.Policy:\x02\x38\x01\"<\n\tLogSource\x12\x1a\n\x16LOG_SOURCE_UNSPECIFIED\x10\x00\x12\x13\n\x0fRECENT_ACCESSES\x10\x01\"S\n\nReplayDiff\x12\x45\n\x0b\x61\x63\x63\x65ss_diff\x18\x02 \x01(\x0b\x32\x30.google.cloud.policysimulator.v1.AccessStateDiff\"\xaa\x03\n\x0f\x41\x63\x63\x65ssStateDiff\x12\x42\n\x08\x62\x61seline\x18\x01 \x01(\x0b\x32\x30.google.cloud.policysimulator.v1.ExplainedAccess\x12\x43\n\tsimulated\x18\x02 \x01(\x0b\x32\x30.google.cloud.policysimulator.v1.ExplainedAccess\x12X\n\raccess_change\x18\x03 \x01(\x0e\x32\x41.google.cloud.policysimulator.v1.AccessStateDiff.AccessChangeType\"\xb3\x01\n\x10\x41\x63\x63\x65ssChangeType\x12\"\n\x1e\x41\x43\x43\x45SS_CHANGE_TYPE_UNSPECIFIED\x10\x00\x12\r\n\tNO_CHANGE\x10\x01\x12\x12\n\x0eUNKNOWN_CHANGE\x10\x02\x12\x12\n\x0e\x41\x43\x43\x45SS_REVOKED\x10\x03\x12\x11\n\rACCESS_GAINED\x10\x04\x12\x18\n\x14\x41\x43\x43\x45SS_MAYBE_REVOKED\x10\x05\x12\x17\n\x13\x41\x43\x43\x45SS_MAYBE_GAINED\x10\x06\"\xbd\x01\n\x0f\x45xplainedAccess\x12\x42\n\x0c\x61\x63\x63\x65ss_state\x18\x01 \x01(\x0e\x32,.google.cloud.policysimulator.v1.AccessState\x12\x42\n\x08policies\x18\x02 \x03(\x0b\x32\x30.google.cloud.policysimulator.v1.ExplainedPolicy\x12\"\n\x06\x65rrors\x18\x03 \x03(\x0b\x32\x12.google.rpc.Status2\x81\x08\n\tSimulator\x12\x87\x02\n\tGetReplay\x12\x31.google.cloud.policysimulator.v1.GetReplayRequest\x1a\'.google.cloud.policysimulator.v1.Replay\"\x9d\x01\xda\x41\x04name\x82\xd3\xe4\x93\x02\x8f\x01\x12+/v1/{name=projects/*/locations/*/replays/*}Z,\x12*/v1/{name=folders/*/locations/*/replays/*}Z2\x12\x30/v1/{name=organizations/*/locations/*/replays/*}\x12\xc8\x02\n\x0c\x43reateReplay\x12\x34.google.cloud.policysimulator.v1.CreateReplayRequest\x1a\x1d.google.longrunning.Operation\"\xe2\x01\xca\x41!\n\x06Replay\x12\x17ReplayOperationMetadata\xda\x41\rparent,replay\x82\xd3\xe4\x93\x02\xa7\x01\"+/v1/{parent=projects/*/locations/*}/replays:\x06replayZ4\"*/v1/{parent=folders/*/locations/*}/replays:\x06replayZ:\"0/v1/{parent=organizations/*/locations/*}/replays:\x06replay\x12\xca\x02\n\x11ListReplayResults\x12\x39.google.cloud.policysimulator.v1.ListReplayResultsRequest\x1a:.google.cloud.policysimulator.v1.ListReplayResultsResponse\"\xbd\x01\xda\x41\x06parent\x82\xd3\xe4\x93\x02\xad\x01\x12\x35/v1/{parent=projects/*/locations/*/replays/*}/resultsZ6\x12\x34/v1/{parent=folders/*/locations/*/replays/*}/resultsZ<\x12:/v1/{parent=organizations/*/locations/*/replays/*}/results\x1aR\xca\x41\x1epolicysimulator.googleapis.com\xd2\x41.https://www.googleapis.com/auth/cloud-platformB\xef\x01\n#com.google.cloud.policysimulator.v1B\x0eSimulatorProtoP\x01ZMcloud.google.com/go/policysimulator/apiv1/policysimulatorpb;policysimulatorpb\xaa\x02\x1fGoogle.Cloud.PolicySimulator.V1\xca\x02\x1fGoogle\\Cloud\\PolicySimulator\\V1\xea\x02\"Google::Cloud::PolicySimulator::V1b\x06proto3"

pool = Google::Protobuf::DescriptorPool.generated_pool

begin
  pool.add_serialized_file(descriptor_data)
rescue TypeError
  # Compatibility code: will be removed in the next major version.
  require 'google/protobuf/descriptor_pb'
  parsed = Google::Protobuf::FileDescriptorProto.decode(descriptor_data)
  parsed.clear_dependency
  serialized = parsed.class.encode(parsed)
  file = pool.add_serialized_file(serialized)
  warn "Warning: Protobuf detected an import path issue while loading generated file #{__FILE__}"
  imports = [
    ["google.type.Date", "google/type/date.proto"],
    ["google.rpc.Status", "google/rpc/status.proto"],
    ["google.cloud.policysimulator.v1.AccessTuple", "google/cloud/policysimulator/v1/explanations.proto"],
    ["google.protobuf.Timestamp", "google/protobuf/timestamp.proto"],
    ["google.iam.v1.Policy", "google/iam/v1/policy.proto"],
  ]
  imports.each do |type_name, expected_filename|
    import_file = pool.lookup(type_name).file_descriptor
    if import_file.name != expected_filename
      warn "- #{file.name} imports #{expected_filename}, but that import was loaded as #{import_file.name}"
    end
  end
  warn "Each proto file must use a consistent fully-qualified name."
  warn "This will become an error in the next major version."
end

module Google
  module Cloud
    module PolicySimulator
      module V1
        Replay = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.policysimulator.v1.Replay").msgclass
        Replay::ResultsSummary = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.policysimulator.v1.Replay.ResultsSummary").msgclass
        Replay::State = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.policysimulator.v1.Replay.State").enummodule
        ReplayResult = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.policysimulator.v1.ReplayResult").msgclass
        CreateReplayRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.policysimulator.v1.CreateReplayRequest").msgclass
        ReplayOperationMetadata = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.policysimulator.v1.ReplayOperationMetadata").msgclass
        GetReplayRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.policysimulator.v1.GetReplayRequest").msgclass
        ListReplayResultsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.policysimulator.v1.ListReplayResultsRequest").msgclass
        ListReplayResultsResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.policysimulator.v1.ListReplayResultsResponse").msgclass
        ReplayConfig = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.policysimulator.v1.ReplayConfig").msgclass
        ReplayConfig::LogSource = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.policysimulator.v1.ReplayConfig.LogSource").enummodule
        ReplayDiff = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.policysimulator.v1.ReplayDiff").msgclass
        AccessStateDiff = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.policysimulator.v1.AccessStateDiff").msgclass
        AccessStateDiff::AccessChangeType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.policysimulator.v1.AccessStateDiff.AccessChangeType").enummodule
        ExplainedAccess = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.policysimulator.v1.ExplainedAccess").msgclass
      end
    end
  end
end
