google-cloud-security_center-v2 0.a → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (119) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +12 -0
  3. data/AUTHENTICATION.md +122 -0
  4. data/README.md +144 -8
  5. data/lib/google/cloud/security_center/v2/rest.rb +37 -0
  6. data/lib/google/cloud/security_center/v2/security_center/client.rb +4771 -0
  7. data/lib/google/cloud/security_center/v2/security_center/credentials.rb +51 -0
  8. data/lib/google/cloud/security_center/v2/security_center/operations.rb +809 -0
  9. data/lib/google/cloud/security_center/v2/security_center/paths.rb +973 -0
  10. data/lib/google/cloud/security_center/v2/security_center/rest/client.rb +4390 -0
  11. data/lib/google/cloud/security_center/v2/security_center/rest/operations.rb +901 -0
  12. data/lib/google/cloud/security_center/v2/security_center/rest/service_stub.rb +3165 -0
  13. data/lib/google/cloud/security_center/v2/security_center/rest.rb +53 -0
  14. data/lib/google/cloud/security_center/v2/security_center.rb +56 -0
  15. data/lib/google/cloud/security_center/v2/version.rb +7 -2
  16. data/lib/google/cloud/security_center/v2.rb +45 -0
  17. data/lib/google/cloud/securitycenter/v2/access_pb.rb +44 -0
  18. data/lib/google/cloud/securitycenter/v2/application_pb.rb +42 -0
  19. data/lib/google/cloud/securitycenter/v2/attack_exposure_pb.rb +47 -0
  20. data/lib/google/cloud/securitycenter/v2/attack_path_pb.rb +49 -0
  21. data/lib/google/cloud/securitycenter/v2/backup_disaster_recovery_pb.rb +45 -0
  22. data/lib/google/cloud/securitycenter/v2/bigquery_export_pb.rb +47 -0
  23. data/lib/google/cloud/securitycenter/v2/cloud_dlp_data_profile_pb.rb +45 -0
  24. data/lib/google/cloud/securitycenter/v2/cloud_dlp_inspection_pb.rb +44 -0
  25. data/lib/google/cloud/securitycenter/v2/compliance_pb.rb +42 -0
  26. data/lib/google/cloud/securitycenter/v2/connection_pb.rb +43 -0
  27. data/lib/google/cloud/securitycenter/v2/contact_details_pb.rb +43 -0
  28. data/lib/google/cloud/securitycenter/v2/container_pb.rb +47 -0
  29. data/lib/google/cloud/securitycenter/v2/database_pb.rb +42 -0
  30. data/lib/google/cloud/securitycenter/v2/exfiltration_pb.rb +43 -0
  31. data/lib/google/cloud/securitycenter/v2/external_system_pb.rb +47 -0
  32. data/lib/google/cloud/securitycenter/v2/file_pb.rb +43 -0
  33. data/lib/google/cloud/securitycenter/v2/finding_pb.rb +109 -0
  34. data/lib/google/cloud/securitycenter/v2/group_membership_pb.rb +43 -0
  35. data/lib/google/cloud/securitycenter/v2/iam_binding_pb.rb +43 -0
  36. data/lib/google/cloud/securitycenter/v2/indicator_pb.rb +47 -0
  37. data/lib/google/cloud/securitycenter/v2/kernel_rootkit_pb.rb +42 -0
  38. data/lib/google/cloud/securitycenter/v2/kubernetes_pb.rb +57 -0
  39. data/lib/google/cloud/securitycenter/v2/label_pb.rb +42 -0
  40. data/lib/google/cloud/securitycenter/v2/load_balancer_pb.rb +42 -0
  41. data/lib/google/cloud/securitycenter/v2/log_entry_pb.rb +46 -0
  42. data/lib/google/cloud/securitycenter/v2/mitre_attack_pb.rb +44 -0
  43. data/lib/google/cloud/securitycenter/v2/mute_config_pb.rb +48 -0
  44. data/lib/google/cloud/securitycenter/v2/notification_config_pb.rb +46 -0
  45. data/lib/google/cloud/securitycenter/v2/notification_message_pb.rb +47 -0
  46. data/lib/google/cloud/securitycenter/v2/org_policy_pb.rb +44 -0
  47. data/lib/google/cloud/securitycenter/v2/process_pb.rb +46 -0
  48. data/lib/google/cloud/securitycenter/v2/resource_pb.rb +44 -0
  49. data/lib/google/cloud/securitycenter/v2/resource_value_config_pb.rb +49 -0
  50. data/lib/google/cloud/securitycenter/v2/security_marks_pb.rb +44 -0
  51. data/lib/google/cloud/securitycenter/v2/security_posture_pb.rb +43 -0
  52. data/lib/google/cloud/securitycenter/v2/securitycenter_service_pb.rb +128 -0
  53. data/lib/google/cloud/securitycenter/v2/securitycenter_service_services_pb.rb +167 -0
  54. data/lib/google/cloud/securitycenter/v2/simulation_pb.rb +49 -0
  55. data/lib/google/cloud/securitycenter/v2/source_pb.rb +44 -0
  56. data/lib/google/cloud/securitycenter/v2/toxic_combination_pb.rb +42 -0
  57. data/lib/google/cloud/securitycenter/v2/valued_resource_pb.rb +46 -0
  58. data/lib/google/cloud/securitycenter/v2/vulnerability_pb.rb +58 -0
  59. data/lib/google-cloud-security_center-v2.rb +21 -0
  60. data/proto_docs/README.md +4 -0
  61. data/proto_docs/google/api/client.rb +399 -0
  62. data/proto_docs/google/api/field_behavior.rb +85 -0
  63. data/proto_docs/google/api/launch_stage.rb +71 -0
  64. data/proto_docs/google/api/resource.rb +222 -0
  65. data/proto_docs/google/api/routing.rb +459 -0
  66. data/proto_docs/google/cloud/securitycenter/v2/access.rb +120 -0
  67. data/proto_docs/google/cloud/securitycenter/v2/application.rb +40 -0
  68. data/proto_docs/google/cloud/securitycenter/v2/attack_exposure.rb +73 -0
  69. data/proto_docs/google/cloud/securitycenter/v2/attack_path.rb +147 -0
  70. data/proto_docs/google/cloud/securitycenter/v2/backup_disaster_recovery.rb +90 -0
  71. data/proto_docs/google/cloud/securitycenter/v2/bigquery_export.rb +96 -0
  72. data/proto_docs/google/cloud/securitycenter/v2/cloud_dlp_data_profile.rb +52 -0
  73. data/proto_docs/google/cloud/securitycenter/v2/cloud_dlp_inspection.rb +50 -0
  74. data/proto_docs/google/cloud/securitycenter/v2/compliance.rb +43 -0
  75. data/proto_docs/google/cloud/securitycenter/v2/connection.rb +70 -0
  76. data/proto_docs/google/cloud/securitycenter/v2/contact_details.rb +44 -0
  77. data/proto_docs/google/cloud/securitycenter/v2/container.rb +49 -0
  78. data/proto_docs/google/cloud/securitycenter/v2/database.rb +67 -0
  79. data/proto_docs/google/cloud/securitycenter/v2/exfiltration.rb +64 -0
  80. data/proto_docs/google/cloud/securitycenter/v2/external_system.rb +106 -0
  81. data/proto_docs/google/cloud/securitycenter/v2/file.rb +72 -0
  82. data/proto_docs/google/cloud/securitycenter/v2/finding.rb +427 -0
  83. data/proto_docs/google/cloud/securitycenter/v2/group_membership.rb +48 -0
  84. data/proto_docs/google/cloud/securitycenter/v2/iam_binding.rb +56 -0
  85. data/proto_docs/google/cloud/securitycenter/v2/indicator.rb +112 -0
  86. data/proto_docs/google/cloud/securitycenter/v2/kernel_rootkit.rb +66 -0
  87. data/proto_docs/google/cloud/securitycenter/v2/kubernetes.rb +241 -0
  88. data/proto_docs/google/cloud/securitycenter/v2/label.rb +41 -0
  89. data/proto_docs/google/cloud/securitycenter/v2/load_balancer.rb +36 -0
  90. data/proto_docs/google/cloud/securitycenter/v2/log_entry.rb +58 -0
  91. data/proto_docs/google/cloud/securitycenter/v2/mitre_attack.rb +285 -0
  92. data/proto_docs/google/cloud/securitycenter/v2/mute_config.rb +100 -0
  93. data/proto_docs/google/cloud/securitycenter/v2/notification_config.rb +90 -0
  94. data/proto_docs/google/cloud/securitycenter/v2/notification_message.rb +42 -0
  95. data/proto_docs/google/cloud/securitycenter/v2/org_policy.rb +37 -0
  96. data/proto_docs/google/cloud/securitycenter/v2/process.rb +79 -0
  97. data/proto_docs/google/cloud/securitycenter/v2/resource.rb +42 -0
  98. data/proto_docs/google/cloud/securitycenter/v2/resource_value_config.rb +122 -0
  99. data/proto_docs/google/cloud/securitycenter/v2/security_marks.rb +84 -0
  100. data/proto_docs/google/cloud/securitycenter/v2/security_posture.rb +83 -0
  101. data/proto_docs/google/cloud/securitycenter/v2/securitycenter_service.rb +1136 -0
  102. data/proto_docs/google/cloud/securitycenter/v2/simulation.rb +43 -0
  103. data/proto_docs/google/cloud/securitycenter/v2/source.rb +65 -0
  104. data/proto_docs/google/cloud/securitycenter/v2/toxic_combination.rb +46 -0
  105. data/proto_docs/google/cloud/securitycenter/v2/valued_resource.rb +86 -0
  106. data/proto_docs/google/cloud/securitycenter/v2/vulnerability.rb +333 -0
  107. data/proto_docs/google/iam/v1/iam_policy.rb +87 -0
  108. data/proto_docs/google/iam/v1/options.rb +50 -0
  109. data/proto_docs/google/iam/v1/policy.rb +426 -0
  110. data/proto_docs/google/longrunning/operations.rb +164 -0
  111. data/proto_docs/google/protobuf/any.rb +145 -0
  112. data/proto_docs/google/protobuf/duration.rb +98 -0
  113. data/proto_docs/google/protobuf/empty.rb +34 -0
  114. data/proto_docs/google/protobuf/field_mask.rb +229 -0
  115. data/proto_docs/google/protobuf/struct.rb +96 -0
  116. data/proto_docs/google/protobuf/timestamp.rb +127 -0
  117. data/proto_docs/google/rpc/status.rb +48 -0
  118. data/proto_docs/google/type/expr.rb +75 -0
  119. metadata +173 -10
@@ -0,0 +1,58 @@
1
+ # frozen_string_literal: true
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # source: google/cloud/securitycenter/v2/vulnerability.proto
4
+
5
+ require 'google/protobuf'
6
+
7
+ require 'google/protobuf/timestamp_pb'
8
+
9
+
10
+ descriptor_data = "\n2google/cloud/securitycenter/v2/vulnerability.proto\x12\x1egoogle.cloud.securitycenter.v2\x1a\x1fgoogle/protobuf/timestamp.proto\"\x92\x02\n\rVulnerability\x12\x30\n\x03\x63ve\x18\x01 \x01(\x0b\x32#.google.cloud.securitycenter.v2.Cve\x12\x42\n\x11offending_package\x18\x02 \x01(\x0b\x32\'.google.cloud.securitycenter.v2.Package\x12>\n\rfixed_package\x18\x03 \x01(\x0b\x32\'.google.cloud.securitycenter.v2.Package\x12K\n\x11security_bulletin\x18\x04 \x01(\x0b\x32\x30.google.cloud.securitycenter.v2.SecurityBulletin\"\xd0\x04\n\x03\x43ve\x12\n\n\x02id\x18\x01 \x01(\t\x12=\n\nreferences\x18\x02 \x03(\x0b\x32).google.cloud.securitycenter.v2.Reference\x12\x36\n\x06\x63vssv3\x18\x03 \x01(\x0b\x32&.google.cloud.securitycenter.v2.Cvssv3\x12\x1e\n\x16upstream_fix_available\x18\x04 \x01(\x08\x12>\n\x06impact\x18\x05 \x01(\x0e\x32..google.cloud.securitycenter.v2.Cve.RiskRating\x12W\n\x15\x65xploitation_activity\x18\x06 \x01(\x0e\x32\x38.google.cloud.securitycenter.v2.Cve.ExploitationActivity\x12\x1c\n\x14observed_in_the_wild\x18\x07 \x01(\x08\x12\x10\n\x08zero_day\x18\x08 \x01(\x08\"V\n\nRiskRating\x12\x1b\n\x17RISK_RATING_UNSPECIFIED\x10\x00\x12\x07\n\x03LOW\x10\x01\x12\n\n\x06MEDIUM\x10\x02\x12\x08\n\x04HIGH\x10\x03\x12\x0c\n\x08\x43RITICAL\x10\x04\"\x84\x01\n\x14\x45xploitationActivity\x12%\n!EXPLOITATION_ACTIVITY_UNSPECIFIED\x10\x00\x12\x08\n\x04WIDE\x10\x01\x12\r\n\tCONFIRMED\x10\x02\x12\r\n\tAVAILABLE\x10\x03\x12\x0f\n\x0b\x41NTICIPATED\x10\x04\x12\x0c\n\x08NO_KNOWN\x10\x05\"(\n\tReference\x12\x0e\n\x06source\x18\x01 \x01(\t\x12\x0b\n\x03uri\x18\x02 \x01(\t\"\xb1\n\n\x06\x43vssv3\x12\x12\n\nbase_score\x18\x01 \x01(\x01\x12J\n\rattack_vector\x18\x02 \x01(\x0e\x32\x33.google.cloud.securitycenter.v2.Cvssv3.AttackVector\x12R\n\x11\x61ttack_complexity\x18\x03 \x01(\x0e\x32\x37.google.cloud.securitycenter.v2.Cvssv3.AttackComplexity\x12V\n\x13privileges_required\x18\x04 \x01(\x0e\x32\x39.google.cloud.securitycenter.v2.Cvssv3.PrivilegesRequired\x12P\n\x10user_interaction\x18\x05 \x01(\x0e\x32\x36.google.cloud.securitycenter.v2.Cvssv3.UserInteraction\x12;\n\x05scope\x18\x06 \x01(\x0e\x32,.google.cloud.securitycenter.v2.Cvssv3.Scope\x12M\n\x16\x63onfidentiality_impact\x18\x07 \x01(\x0e\x32-.google.cloud.securitycenter.v2.Cvssv3.Impact\x12G\n\x10integrity_impact\x18\x08 \x01(\x0e\x32-.google.cloud.securitycenter.v2.Cvssv3.Impact\x12J\n\x13\x61vailability_impact\x18\t \x01(\x0e\x32-.google.cloud.securitycenter.v2.Cvssv3.Impact\"\x99\x01\n\x0c\x41ttackVector\x12\x1d\n\x19\x41TTACK_VECTOR_UNSPECIFIED\x10\x00\x12\x19\n\x15\x41TTACK_VECTOR_NETWORK\x10\x01\x12\x1a\n\x16\x41TTACK_VECTOR_ADJACENT\x10\x02\x12\x17\n\x13\x41TTACK_VECTOR_LOCAL\x10\x03\x12\x1a\n\x16\x41TTACK_VECTOR_PHYSICAL\x10\x04\"l\n\x10\x41ttackComplexity\x12!\n\x1d\x41TTACK_COMPLEXITY_UNSPECIFIED\x10\x00\x12\x19\n\x15\x41TTACK_COMPLEXITY_LOW\x10\x01\x12\x1a\n\x16\x41TTACK_COMPLEXITY_HIGH\x10\x02\"\x92\x01\n\x12PrivilegesRequired\x12#\n\x1fPRIVILEGES_REQUIRED_UNSPECIFIED\x10\x00\x12\x1c\n\x18PRIVILEGES_REQUIRED_NONE\x10\x01\x12\x1b\n\x17PRIVILEGES_REQUIRED_LOW\x10\x02\x12\x1c\n\x18PRIVILEGES_REQUIRED_HIGH\x10\x03\"m\n\x0fUserInteraction\x12 \n\x1cUSER_INTERACTION_UNSPECIFIED\x10\x00\x12\x19\n\x15USER_INTERACTION_NONE\x10\x01\x12\x1d\n\x19USER_INTERACTION_REQUIRED\x10\x02\"F\n\x05Scope\x12\x15\n\x11SCOPE_UNSPECIFIED\x10\x00\x12\x13\n\x0fSCOPE_UNCHANGED\x10\x01\x12\x11\n\rSCOPE_CHANGED\x10\x02\"R\n\x06Impact\x12\x16\n\x12IMPACT_UNSPECIFIED\x10\x00\x12\x0f\n\x0bIMPACT_HIGH\x10\x01\x12\x0e\n\nIMPACT_LOW\x10\x02\x12\x0f\n\x0bIMPACT_NONE\x10\x03\"_\n\x07Package\x12\x14\n\x0cpackage_name\x18\x01 \x01(\t\x12\x0f\n\x07\x63pe_uri\x18\x02 \x01(\t\x12\x14\n\x0cpackage_type\x18\x03 \x01(\t\x12\x17\n\x0fpackage_version\x18\x04 \x01(\t\"\x7f\n\x10SecurityBulletin\x12\x13\n\x0b\x62ulletin_id\x18\x01 \x01(\t\x12\x33\n\x0fsubmission_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12!\n\x19suggested_upgrade_version\x18\x03 \x01(\tB\xec\x01\n\"com.google.cloud.securitycenter.v2B\x12VulnerabilityProtoP\x01ZJcloud.google.com/go/securitycenter/apiv2/securitycenterpb;securitycenterpb\xaa\x02\x1eGoogle.Cloud.SecurityCenter.V2\xca\x02\x1eGoogle\\Cloud\\SecurityCenter\\V2\xea\x02!Google::Cloud::SecurityCenter::V2b\x06proto3"
11
+
12
+ pool = Google::Protobuf::DescriptorPool.generated_pool
13
+
14
+ begin
15
+ pool.add_serialized_file(descriptor_data)
16
+ rescue TypeError
17
+ # Compatibility code: will be removed in the next major version.
18
+ require 'google/protobuf/descriptor_pb'
19
+ parsed = Google::Protobuf::FileDescriptorProto.decode(descriptor_data)
20
+ parsed.clear_dependency
21
+ serialized = parsed.class.encode(parsed)
22
+ file = pool.add_serialized_file(serialized)
23
+ warn "Warning: Protobuf detected an import path issue while loading generated file #{__FILE__}"
24
+ imports = [
25
+ ["google.protobuf.Timestamp", "google/protobuf/timestamp.proto"],
26
+ ]
27
+ imports.each do |type_name, expected_filename|
28
+ import_file = pool.lookup(type_name).file_descriptor
29
+ if import_file.name != expected_filename
30
+ warn "- #{file.name} imports #{expected_filename}, but that import was loaded as #{import_file.name}"
31
+ end
32
+ end
33
+ warn "Each proto file must use a consistent fully-qualified name."
34
+ warn "This will become an error in the next major version."
35
+ end
36
+
37
+ module Google
38
+ module Cloud
39
+ module SecurityCenter
40
+ module V2
41
+ Vulnerability = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v2.Vulnerability").msgclass
42
+ Cve = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v2.Cve").msgclass
43
+ Cve::RiskRating = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v2.Cve.RiskRating").enummodule
44
+ Cve::ExploitationActivity = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v2.Cve.ExploitationActivity").enummodule
45
+ Reference = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v2.Reference").msgclass
46
+ Cvssv3 = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v2.Cvssv3").msgclass
47
+ Cvssv3::AttackVector = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v2.Cvssv3.AttackVector").enummodule
48
+ Cvssv3::AttackComplexity = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v2.Cvssv3.AttackComplexity").enummodule
49
+ Cvssv3::PrivilegesRequired = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v2.Cvssv3.PrivilegesRequired").enummodule
50
+ Cvssv3::UserInteraction = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v2.Cvssv3.UserInteraction").enummodule
51
+ Cvssv3::Scope = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v2.Cvssv3.Scope").enummodule
52
+ Cvssv3::Impact = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v2.Cvssv3.Impact").enummodule
53
+ Package = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v2.Package").msgclass
54
+ SecurityBulletin = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v2.SecurityBulletin").msgclass
55
+ end
56
+ end
57
+ end
58
+ end
@@ -0,0 +1,21 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2024 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+ # This gem does not autoload during Bundler.require. To load this gem,
20
+ # issue explicit require statements for the packages desired, e.g.:
21
+ # require "google/cloud/security_center/v2"
@@ -0,0 +1,4 @@
1
+ # Security Command Center V2 Protocol Buffer Documentation
2
+
3
+ These files are for the YARD documentation of the generated protobuf files.
4
+ They are not intended to be required or loaded at runtime.
@@ -0,0 +1,399 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2024 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Api
22
+ # Required information for every language.
23
+ # @!attribute [rw] reference_docs_uri
24
+ # @deprecated This field is deprecated and may be removed in the next major version update.
25
+ # @return [::String]
26
+ # Link to automatically generated reference documentation. Example:
27
+ # https://cloud.google.com/nodejs/docs/reference/asset/latest
28
+ # @!attribute [rw] destinations
29
+ # @return [::Array<::Google::Api::ClientLibraryDestination>]
30
+ # The destination where API teams want this client library to be published.
31
+ class CommonLanguageSettings
32
+ include ::Google::Protobuf::MessageExts
33
+ extend ::Google::Protobuf::MessageExts::ClassMethods
34
+ end
35
+
36
+ # Details about how and where to publish client libraries.
37
+ # @!attribute [rw] version
38
+ # @return [::String]
39
+ # Version of the API to apply these settings to. This is the full protobuf
40
+ # package for the API, ending in the version element.
41
+ # Examples: "google.cloud.speech.v1" and "google.spanner.admin.database.v1".
42
+ # @!attribute [rw] launch_stage
43
+ # @return [::Google::Api::LaunchStage]
44
+ # Launch stage of this version of the API.
45
+ # @!attribute [rw] rest_numeric_enums
46
+ # @return [::Boolean]
47
+ # When using transport=rest, the client request will encode enums as
48
+ # numbers rather than strings.
49
+ # @!attribute [rw] java_settings
50
+ # @return [::Google::Api::JavaSettings]
51
+ # Settings for legacy Java features, supported in the Service YAML.
52
+ # @!attribute [rw] cpp_settings
53
+ # @return [::Google::Api::CppSettings]
54
+ # Settings for C++ client libraries.
55
+ # @!attribute [rw] php_settings
56
+ # @return [::Google::Api::PhpSettings]
57
+ # Settings for PHP client libraries.
58
+ # @!attribute [rw] python_settings
59
+ # @return [::Google::Api::PythonSettings]
60
+ # Settings for Python client libraries.
61
+ # @!attribute [rw] node_settings
62
+ # @return [::Google::Api::NodeSettings]
63
+ # Settings for Node client libraries.
64
+ # @!attribute [rw] dotnet_settings
65
+ # @return [::Google::Api::DotnetSettings]
66
+ # Settings for .NET client libraries.
67
+ # @!attribute [rw] ruby_settings
68
+ # @return [::Google::Api::RubySettings]
69
+ # Settings for Ruby client libraries.
70
+ # @!attribute [rw] go_settings
71
+ # @return [::Google::Api::GoSettings]
72
+ # Settings for Go client libraries.
73
+ class ClientLibrarySettings
74
+ include ::Google::Protobuf::MessageExts
75
+ extend ::Google::Protobuf::MessageExts::ClassMethods
76
+ end
77
+
78
+ # This message configures the settings for publishing [Google Cloud Client
79
+ # libraries](https://cloud.google.com/apis/docs/cloud-client-libraries)
80
+ # generated from the service config.
81
+ # @!attribute [rw] method_settings
82
+ # @return [::Array<::Google::Api::MethodSettings>]
83
+ # A list of API method settings, e.g. the behavior for methods that use the
84
+ # long-running operation pattern.
85
+ # @!attribute [rw] new_issue_uri
86
+ # @return [::String]
87
+ # Link to a *public* URI where users can report issues. Example:
88
+ # https://issuetracker.google.com/issues/new?component=190865&template=1161103
89
+ # @!attribute [rw] documentation_uri
90
+ # @return [::String]
91
+ # Link to product home page. Example:
92
+ # https://cloud.google.com/asset-inventory/docs/overview
93
+ # @!attribute [rw] api_short_name
94
+ # @return [::String]
95
+ # Used as a tracking tag when collecting data about the APIs developer
96
+ # relations artifacts like docs, packages delivered to package managers,
97
+ # etc. Example: "speech".
98
+ # @!attribute [rw] github_label
99
+ # @return [::String]
100
+ # GitHub label to apply to issues and pull requests opened for this API.
101
+ # @!attribute [rw] codeowner_github_teams
102
+ # @return [::Array<::String>]
103
+ # GitHub teams to be added to CODEOWNERS in the directory in GitHub
104
+ # containing source code for the client libraries for this API.
105
+ # @!attribute [rw] doc_tag_prefix
106
+ # @return [::String]
107
+ # A prefix used in sample code when demarking regions to be included in
108
+ # documentation.
109
+ # @!attribute [rw] organization
110
+ # @return [::Google::Api::ClientLibraryOrganization]
111
+ # For whom the client library is being published.
112
+ # @!attribute [rw] library_settings
113
+ # @return [::Array<::Google::Api::ClientLibrarySettings>]
114
+ # Client library settings. If the same version string appears multiple
115
+ # times in this list, then the last one wins. Settings from earlier
116
+ # settings with the same version string are discarded.
117
+ # @!attribute [rw] proto_reference_documentation_uri
118
+ # @return [::String]
119
+ # Optional link to proto reference documentation. Example:
120
+ # https://cloud.google.com/pubsub/lite/docs/reference/rpc
121
+ # @!attribute [rw] rest_reference_documentation_uri
122
+ # @return [::String]
123
+ # Optional link to REST reference documentation. Example:
124
+ # https://cloud.google.com/pubsub/lite/docs/reference/rest
125
+ class Publishing
126
+ include ::Google::Protobuf::MessageExts
127
+ extend ::Google::Protobuf::MessageExts::ClassMethods
128
+ end
129
+
130
+ # Settings for Java client libraries.
131
+ # @!attribute [rw] library_package
132
+ # @return [::String]
133
+ # The package name to use in Java. Clobbers the java_package option
134
+ # set in the protobuf. This should be used **only** by APIs
135
+ # who have already set the language_settings.java.package_name" field
136
+ # in gapic.yaml. API teams should use the protobuf java_package option
137
+ # where possible.
138
+ #
139
+ # Example of a YAML configuration::
140
+ #
141
+ # publishing:
142
+ # java_settings:
143
+ # library_package: com.google.cloud.pubsub.v1
144
+ # @!attribute [rw] service_class_names
145
+ # @return [::Google::Protobuf::Map{::String => ::String}]
146
+ # Configure the Java class name to use instead of the service's for its
147
+ # corresponding generated GAPIC client. Keys are fully-qualified
148
+ # service names as they appear in the protobuf (including the full
149
+ # the language_settings.java.interface_names" field in gapic.yaml. API
150
+ # teams should otherwise use the service name as it appears in the
151
+ # protobuf.
152
+ #
153
+ # Example of a YAML configuration::
154
+ #
155
+ # publishing:
156
+ # java_settings:
157
+ # service_class_names:
158
+ # - google.pubsub.v1.Publisher: TopicAdmin
159
+ # - google.pubsub.v1.Subscriber: SubscriptionAdmin
160
+ # @!attribute [rw] common
161
+ # @return [::Google::Api::CommonLanguageSettings]
162
+ # Some settings.
163
+ class JavaSettings
164
+ include ::Google::Protobuf::MessageExts
165
+ extend ::Google::Protobuf::MessageExts::ClassMethods
166
+
167
+ # @!attribute [rw] key
168
+ # @return [::String]
169
+ # @!attribute [rw] value
170
+ # @return [::String]
171
+ class ServiceClassNamesEntry
172
+ include ::Google::Protobuf::MessageExts
173
+ extend ::Google::Protobuf::MessageExts::ClassMethods
174
+ end
175
+ end
176
+
177
+ # Settings for C++ client libraries.
178
+ # @!attribute [rw] common
179
+ # @return [::Google::Api::CommonLanguageSettings]
180
+ # Some settings.
181
+ class CppSettings
182
+ include ::Google::Protobuf::MessageExts
183
+ extend ::Google::Protobuf::MessageExts::ClassMethods
184
+ end
185
+
186
+ # Settings for Php client libraries.
187
+ # @!attribute [rw] common
188
+ # @return [::Google::Api::CommonLanguageSettings]
189
+ # Some settings.
190
+ class PhpSettings
191
+ include ::Google::Protobuf::MessageExts
192
+ extend ::Google::Protobuf::MessageExts::ClassMethods
193
+ end
194
+
195
+ # Settings for Python client libraries.
196
+ # @!attribute [rw] common
197
+ # @return [::Google::Api::CommonLanguageSettings]
198
+ # Some settings.
199
+ class PythonSettings
200
+ include ::Google::Protobuf::MessageExts
201
+ extend ::Google::Protobuf::MessageExts::ClassMethods
202
+ end
203
+
204
+ # Settings for Node client libraries.
205
+ # @!attribute [rw] common
206
+ # @return [::Google::Api::CommonLanguageSettings]
207
+ # Some settings.
208
+ class NodeSettings
209
+ include ::Google::Protobuf::MessageExts
210
+ extend ::Google::Protobuf::MessageExts::ClassMethods
211
+ end
212
+
213
+ # Settings for Dotnet client libraries.
214
+ # @!attribute [rw] common
215
+ # @return [::Google::Api::CommonLanguageSettings]
216
+ # Some settings.
217
+ # @!attribute [rw] renamed_services
218
+ # @return [::Google::Protobuf::Map{::String => ::String}]
219
+ # Map from original service names to renamed versions.
220
+ # This is used when the default generated types
221
+ # would cause a naming conflict. (Neither name is
222
+ # fully-qualified.)
223
+ # Example: Subscriber to SubscriberServiceApi.
224
+ # @!attribute [rw] renamed_resources
225
+ # @return [::Google::Protobuf::Map{::String => ::String}]
226
+ # Map from full resource types to the effective short name
227
+ # for the resource. This is used when otherwise resource
228
+ # named from different services would cause naming collisions.
229
+ # Example entry:
230
+ # "datalabeling.googleapis.com/Dataset": "DataLabelingDataset"
231
+ # @!attribute [rw] ignored_resources
232
+ # @return [::Array<::String>]
233
+ # List of full resource types to ignore during generation.
234
+ # This is typically used for API-specific Location resources,
235
+ # which should be handled by the generator as if they were actually
236
+ # the common Location resources.
237
+ # Example entry: "documentai.googleapis.com/Location"
238
+ # @!attribute [rw] forced_namespace_aliases
239
+ # @return [::Array<::String>]
240
+ # Namespaces which must be aliased in snippets due to
241
+ # a known (but non-generator-predictable) naming collision
242
+ # @!attribute [rw] handwritten_signatures
243
+ # @return [::Array<::String>]
244
+ # Method signatures (in the form "service.method(signature)")
245
+ # which are provided separately, so shouldn't be generated.
246
+ # Snippets *calling* these methods are still generated, however.
247
+ class DotnetSettings
248
+ include ::Google::Protobuf::MessageExts
249
+ extend ::Google::Protobuf::MessageExts::ClassMethods
250
+
251
+ # @!attribute [rw] key
252
+ # @return [::String]
253
+ # @!attribute [rw] value
254
+ # @return [::String]
255
+ class RenamedServicesEntry
256
+ include ::Google::Protobuf::MessageExts
257
+ extend ::Google::Protobuf::MessageExts::ClassMethods
258
+ end
259
+
260
+ # @!attribute [rw] key
261
+ # @return [::String]
262
+ # @!attribute [rw] value
263
+ # @return [::String]
264
+ class RenamedResourcesEntry
265
+ include ::Google::Protobuf::MessageExts
266
+ extend ::Google::Protobuf::MessageExts::ClassMethods
267
+ end
268
+ end
269
+
270
+ # Settings for Ruby client libraries.
271
+ # @!attribute [rw] common
272
+ # @return [::Google::Api::CommonLanguageSettings]
273
+ # Some settings.
274
+ class RubySettings
275
+ include ::Google::Protobuf::MessageExts
276
+ extend ::Google::Protobuf::MessageExts::ClassMethods
277
+ end
278
+
279
+ # Settings for Go client libraries.
280
+ # @!attribute [rw] common
281
+ # @return [::Google::Api::CommonLanguageSettings]
282
+ # Some settings.
283
+ class GoSettings
284
+ include ::Google::Protobuf::MessageExts
285
+ extend ::Google::Protobuf::MessageExts::ClassMethods
286
+ end
287
+
288
+ # Describes the generator configuration for a method.
289
+ # @!attribute [rw] selector
290
+ # @return [::String]
291
+ # The fully qualified name of the method, for which the options below apply.
292
+ # This is used to find the method to apply the options.
293
+ # @!attribute [rw] long_running
294
+ # @return [::Google::Api::MethodSettings::LongRunning]
295
+ # Describes settings to use for long-running operations when generating
296
+ # API methods for RPCs. Complements RPCs that use the annotations in
297
+ # google/longrunning/operations.proto.
298
+ #
299
+ # Example of a YAML configuration::
300
+ #
301
+ # publishing:
302
+ # method_settings:
303
+ # - selector: google.cloud.speech.v2.Speech.BatchRecognize
304
+ # long_running:
305
+ # initial_poll_delay:
306
+ # seconds: 60 # 1 minute
307
+ # poll_delay_multiplier: 1.5
308
+ # max_poll_delay:
309
+ # seconds: 360 # 6 minutes
310
+ # total_poll_timeout:
311
+ # seconds: 54000 # 90 minutes
312
+ # @!attribute [rw] auto_populated_fields
313
+ # @return [::Array<::String>]
314
+ # List of top-level fields of the request message, that should be
315
+ # automatically populated by the client libraries based on their
316
+ # (google.api.field_info).format. Currently supported format: UUID4.
317
+ #
318
+ # Example of a YAML configuration:
319
+ #
320
+ # publishing:
321
+ # method_settings:
322
+ # - selector: google.example.v1.ExampleService.CreateExample
323
+ # auto_populated_fields:
324
+ # - request_id
325
+ class MethodSettings
326
+ include ::Google::Protobuf::MessageExts
327
+ extend ::Google::Protobuf::MessageExts::ClassMethods
328
+
329
+ # Describes settings to use when generating API methods that use the
330
+ # long-running operation pattern.
331
+ # All default values below are from those used in the client library
332
+ # generators (e.g.
333
+ # [Java](https://github.com/googleapis/gapic-generator-java/blob/04c2faa191a9b5a10b92392fe8482279c4404803/src/main/java/com/google/api/generator/gapic/composer/common/RetrySettingsComposer.java)).
334
+ # @!attribute [rw] initial_poll_delay
335
+ # @return [::Google::Protobuf::Duration]
336
+ # Initial delay after which the first poll request will be made.
337
+ # Default value: 5 seconds.
338
+ # @!attribute [rw] poll_delay_multiplier
339
+ # @return [::Float]
340
+ # Multiplier to gradually increase delay between subsequent polls until it
341
+ # reaches max_poll_delay.
342
+ # Default value: 1.5.
343
+ # @!attribute [rw] max_poll_delay
344
+ # @return [::Google::Protobuf::Duration]
345
+ # Maximum time between two subsequent poll requests.
346
+ # Default value: 45 seconds.
347
+ # @!attribute [rw] total_poll_timeout
348
+ # @return [::Google::Protobuf::Duration]
349
+ # Total polling timeout.
350
+ # Default value: 5 minutes.
351
+ class LongRunning
352
+ include ::Google::Protobuf::MessageExts
353
+ extend ::Google::Protobuf::MessageExts::ClassMethods
354
+ end
355
+ end
356
+
357
+ # The organization for which the client libraries are being published.
358
+ # Affects the url where generated docs are published, etc.
359
+ module ClientLibraryOrganization
360
+ # Not useful.
361
+ CLIENT_LIBRARY_ORGANIZATION_UNSPECIFIED = 0
362
+
363
+ # Google Cloud Platform Org.
364
+ CLOUD = 1
365
+
366
+ # Ads (Advertising) Org.
367
+ ADS = 2
368
+
369
+ # Photos Org.
370
+ PHOTOS = 3
371
+
372
+ # Street View Org.
373
+ STREET_VIEW = 4
374
+
375
+ # Shopping Org.
376
+ SHOPPING = 5
377
+
378
+ # Geo Org.
379
+ GEO = 6
380
+
381
+ # Generative AI - https://developers.generativeai.google
382
+ GENERATIVE_AI = 7
383
+ end
384
+
385
+ # To where should client libraries be published?
386
+ module ClientLibraryDestination
387
+ # Client libraries will neither be generated nor published to package
388
+ # managers.
389
+ CLIENT_LIBRARY_DESTINATION_UNSPECIFIED = 0
390
+
391
+ # Generate the client library in a repo under github.com/googleapis,
392
+ # but don't publish it to package managers.
393
+ GITHUB = 10
394
+
395
+ # Publish the library to package managers like nuget.org and npmjs.com.
396
+ PACKAGE_MANAGER = 20
397
+ end
398
+ end
399
+ end
@@ -0,0 +1,85 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2024 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Api
22
+ # An indicator of the behavior of a given field (for example, that a field
23
+ # is required in requests, or given as output but ignored as input).
24
+ # This **does not** change the behavior in protocol buffers itself; it only
25
+ # denotes the behavior and may affect how API tooling handles the field.
26
+ #
27
+ # Note: This enum **may** receive new values in the future.
28
+ module FieldBehavior
29
+ # Conventional default for enums. Do not use this.
30
+ FIELD_BEHAVIOR_UNSPECIFIED = 0
31
+
32
+ # Specifically denotes a field as optional.
33
+ # While all fields in protocol buffers are optional, this may be specified
34
+ # for emphasis if appropriate.
35
+ OPTIONAL = 1
36
+
37
+ # Denotes a field as required.
38
+ # This indicates that the field **must** be provided as part of the request,
39
+ # and failure to do so will cause an error (usually `INVALID_ARGUMENT`).
40
+ REQUIRED = 2
41
+
42
+ # Denotes a field as output only.
43
+ # This indicates that the field is provided in responses, but including the
44
+ # field in a request does nothing (the server *must* ignore it and
45
+ # *must not* throw an error as a result of the field's presence).
46
+ OUTPUT_ONLY = 3
47
+
48
+ # Denotes a field as input only.
49
+ # This indicates that the field is provided in requests, and the
50
+ # corresponding field is not included in output.
51
+ INPUT_ONLY = 4
52
+
53
+ # Denotes a field as immutable.
54
+ # This indicates that the field may be set once in a request to create a
55
+ # resource, but may not be changed thereafter.
56
+ IMMUTABLE = 5
57
+
58
+ # Denotes that a (repeated) field is an unordered list.
59
+ # This indicates that the service may provide the elements of the list
60
+ # in any arbitrary order, rather than the order the user originally
61
+ # provided. Additionally, the list's order may or may not be stable.
62
+ UNORDERED_LIST = 6
63
+
64
+ # Denotes that this field returns a non-empty default value if not set.
65
+ # This indicates that if the user provides the empty value in a request,
66
+ # a non-empty value will be returned. The user will not be aware of what
67
+ # non-empty value to expect.
68
+ NON_EMPTY_DEFAULT = 7
69
+
70
+ # Denotes that the field in a resource (a message annotated with
71
+ # google.api.resource) is used in the resource name to uniquely identify the
72
+ # resource. For AIP-compliant APIs, this should only be applied to the
73
+ # `name` field on the resource.
74
+ #
75
+ # This behavior should not be applied to references to other resources within
76
+ # the message.
77
+ #
78
+ # The identifier field of resources often have different field behavior
79
+ # depending on the request it is embedded in (e.g. for Create methods name
80
+ # is optional and unused, while for Update methods it is required). Instead
81
+ # of method-specific annotations, only `IDENTIFIER` is required.
82
+ IDENTIFIER = 8
83
+ end
84
+ end
85
+ end
@@ -0,0 +1,71 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2024 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Api
22
+ # The launch stage as defined by [Google Cloud Platform
23
+ # Launch Stages](https://cloud.google.com/terms/launch-stages).
24
+ module LaunchStage
25
+ # Do not use this default value.
26
+ LAUNCH_STAGE_UNSPECIFIED = 0
27
+
28
+ # The feature is not yet implemented. Users can not use it.
29
+ UNIMPLEMENTED = 6
30
+
31
+ # Prelaunch features are hidden from users and are only visible internally.
32
+ PRELAUNCH = 7
33
+
34
+ # Early Access features are limited to a closed group of testers. To use
35
+ # these features, you must sign up in advance and sign a Trusted Tester
36
+ # agreement (which includes confidentiality provisions). These features may
37
+ # be unstable, changed in backward-incompatible ways, and are not
38
+ # guaranteed to be released.
39
+ EARLY_ACCESS = 1
40
+
41
+ # Alpha is a limited availability test for releases before they are cleared
42
+ # for widespread use. By Alpha, all significant design issues are resolved
43
+ # and we are in the process of verifying functionality. Alpha customers
44
+ # need to apply for access, agree to applicable terms, and have their
45
+ # projects allowlisted. Alpha releases don't have to be feature complete,
46
+ # no SLAs are provided, and there are no technical support obligations, but
47
+ # they will be far enough along that customers can actually use them in
48
+ # test environments or for limited-use tests -- just like they would in
49
+ # normal production cases.
50
+ ALPHA = 2
51
+
52
+ # Beta is the point at which we are ready to open a release for any
53
+ # customer to use. There are no SLA or technical support obligations in a
54
+ # Beta release. Products will be complete from a feature perspective, but
55
+ # may have some open outstanding issues. Beta releases are suitable for
56
+ # limited production use cases.
57
+ BETA = 3
58
+
59
+ # GA features are open to all developers and are considered stable and
60
+ # fully qualified for production use.
61
+ GA = 4
62
+
63
+ # Deprecated features are scheduled to be shut down and removed. For more
64
+ # information, see the "Deprecation Policy" section of our [Terms of
65
+ # Service](https://cloud.google.com/terms/)
66
+ # and the [Google Cloud Platform Subject to the Deprecation
67
+ # Policy](https://cloud.google.com/terms/deprecation) documentation.
68
+ DEPRECATED = 5
69
+ end
70
+ end
71
+ end