google-cloud-asset-v1 0.24.0 → 0.26.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +1 -1
- data/lib/google/cloud/asset/v1/asset_service/client.rb +26 -9
- data/lib/google/cloud/asset/v1/asset_service/operations.rb +5 -3
- data/lib/google/cloud/asset/v1/asset_service/rest/client.rb +26 -9
- data/lib/google/cloud/asset/v1/asset_service/rest/operations.rb +9 -7
- data/lib/google/cloud/asset/v1/asset_service/rest/service_stub.rb +23 -23
- data/lib/google/cloud/asset/v1/asset_service_pb.rb +32 -485
- data/lib/google/cloud/asset/v1/assets_pb.rb +32 -166
- data/lib/google/cloud/asset/v1/version.rb +1 -1
- data/lib/google/cloud/orgpolicy/v1/orgpolicy_pb.rb +25 -29
- data/proto_docs/google/api/client.rb +67 -4
- data/proto_docs/google/cloud/asset/v1/asset_service.rb +15 -15
- data/proto_docs/google/cloud/asset/v1/assets.rb +1 -1
- data/proto_docs/google/iam/v1/policy.rb +8 -4
- data/proto_docs/google/protobuf/any.rb +7 -4
- data/proto_docs/google/protobuf/struct.rb +1 -1
- data/proto_docs/google/protobuf/timestamp.rb +1 -3
- metadata +4 -4
@@ -1,3 +1,4 @@
|
|
1
|
+
# frozen_string_literal: true
|
1
2
|
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
2
3
|
# source: google/cloud/asset/v1/assets.proto
|
3
4
|
|
@@ -15,174 +16,39 @@ require 'google/protobuf/struct_pb'
|
|
15
16
|
require 'google/protobuf/timestamp_pb'
|
16
17
|
require 'google/rpc/code_pb'
|
17
18
|
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
optional :related_asset, :message, 15, "google.cloud.asset.v1.RelatedAsset"
|
48
|
-
repeated :ancestors, :string, 10
|
49
|
-
oneof :access_context_policy do
|
50
|
-
optional :access_policy, :message, 7, "google.identity.accesscontextmanager.v1.AccessPolicy"
|
51
|
-
optional :access_level, :message, 8, "google.identity.accesscontextmanager.v1.AccessLevel"
|
52
|
-
optional :service_perimeter, :message, 9, "google.identity.accesscontextmanager.v1.ServicePerimeter"
|
53
|
-
end
|
54
|
-
end
|
55
|
-
add_message "google.cloud.asset.v1.Resource" do
|
56
|
-
optional :version, :string, 1
|
57
|
-
optional :discovery_document_uri, :string, 2
|
58
|
-
optional :discovery_name, :string, 3
|
59
|
-
optional :resource_url, :string, 4
|
60
|
-
optional :parent, :string, 5
|
61
|
-
optional :data, :message, 6, "google.protobuf.Struct"
|
62
|
-
optional :location, :string, 8
|
63
|
-
end
|
64
|
-
add_message "google.cloud.asset.v1.RelatedAssets" do
|
65
|
-
optional :relationship_attributes, :message, 1, "google.cloud.asset.v1.RelationshipAttributes"
|
66
|
-
repeated :assets, :message, 2, "google.cloud.asset.v1.RelatedAsset"
|
67
|
-
end
|
68
|
-
add_message "google.cloud.asset.v1.RelationshipAttributes" do
|
69
|
-
optional :type, :string, 4
|
70
|
-
optional :source_resource_type, :string, 1
|
71
|
-
optional :target_resource_type, :string, 2
|
72
|
-
optional :action, :string, 3
|
73
|
-
end
|
74
|
-
add_message "google.cloud.asset.v1.RelatedAsset" do
|
75
|
-
optional :asset, :string, 1
|
76
|
-
optional :asset_type, :string, 2
|
77
|
-
repeated :ancestors, :string, 3
|
78
|
-
optional :relationship_type, :string, 4
|
79
|
-
end
|
80
|
-
add_message "google.cloud.asset.v1.ResourceSearchResult" do
|
81
|
-
optional :name, :string, 1
|
82
|
-
optional :asset_type, :string, 2
|
83
|
-
optional :project, :string, 3
|
84
|
-
repeated :folders, :string, 17
|
85
|
-
optional :organization, :string, 18
|
86
|
-
optional :display_name, :string, 4
|
87
|
-
optional :description, :string, 5
|
88
|
-
optional :location, :string, 6
|
89
|
-
map :labels, :string, :string, 7
|
90
|
-
repeated :network_tags, :string, 8
|
91
|
-
optional :kms_key, :string, 10
|
92
|
-
repeated :kms_keys, :string, 28
|
93
|
-
optional :create_time, :message, 11, "google.protobuf.Timestamp"
|
94
|
-
optional :update_time, :message, 12, "google.protobuf.Timestamp"
|
95
|
-
optional :state, :string, 13
|
96
|
-
optional :additional_attributes, :message, 9, "google.protobuf.Struct"
|
97
|
-
optional :parent_full_resource_name, :string, 19
|
98
|
-
repeated :versioned_resources, :message, 16, "google.cloud.asset.v1.VersionedResource"
|
99
|
-
repeated :attached_resources, :message, 20, "google.cloud.asset.v1.AttachedResource"
|
100
|
-
map :relationships, :string, :message, 21, "google.cloud.asset.v1.RelatedResources"
|
101
|
-
repeated :tag_keys, :string, 23
|
102
|
-
repeated :tag_values, :string, 25
|
103
|
-
repeated :tag_value_ids, :string, 26
|
104
|
-
optional :parent_asset_type, :string, 103
|
105
|
-
end
|
106
|
-
add_message "google.cloud.asset.v1.VersionedResource" do
|
107
|
-
optional :version, :string, 1
|
108
|
-
optional :resource, :message, 2, "google.protobuf.Struct"
|
109
|
-
end
|
110
|
-
add_message "google.cloud.asset.v1.AttachedResource" do
|
111
|
-
optional :asset_type, :string, 1
|
112
|
-
repeated :versioned_resources, :message, 3, "google.cloud.asset.v1.VersionedResource"
|
113
|
-
end
|
114
|
-
add_message "google.cloud.asset.v1.RelatedResources" do
|
115
|
-
repeated :related_resources, :message, 1, "google.cloud.asset.v1.RelatedResource"
|
116
|
-
end
|
117
|
-
add_message "google.cloud.asset.v1.RelatedResource" do
|
118
|
-
optional :asset_type, :string, 1
|
119
|
-
optional :full_resource_name, :string, 2
|
120
|
-
end
|
121
|
-
add_message "google.cloud.asset.v1.IamPolicySearchResult" do
|
122
|
-
optional :resource, :string, 1
|
123
|
-
optional :asset_type, :string, 5
|
124
|
-
optional :project, :string, 2
|
125
|
-
repeated :folders, :string, 6
|
126
|
-
optional :organization, :string, 7
|
127
|
-
optional :policy, :message, 3, "google.iam.v1.Policy"
|
128
|
-
optional :explanation, :message, 4, "google.cloud.asset.v1.IamPolicySearchResult.Explanation"
|
129
|
-
end
|
130
|
-
add_message "google.cloud.asset.v1.IamPolicySearchResult.Explanation" do
|
131
|
-
map :matched_permissions, :string, :message, 1, "google.cloud.asset.v1.IamPolicySearchResult.Explanation.Permissions"
|
132
|
-
end
|
133
|
-
add_message "google.cloud.asset.v1.IamPolicySearchResult.Explanation.Permissions" do
|
134
|
-
repeated :permissions, :string, 1
|
135
|
-
end
|
136
|
-
add_message "google.cloud.asset.v1.IamPolicyAnalysisState" do
|
137
|
-
optional :code, :enum, 1, "google.rpc.Code"
|
138
|
-
optional :cause, :string, 2
|
139
|
-
end
|
140
|
-
add_message "google.cloud.asset.v1.ConditionEvaluation" do
|
141
|
-
optional :evaluation_value, :enum, 1, "google.cloud.asset.v1.ConditionEvaluation.EvaluationValue"
|
142
|
-
end
|
143
|
-
add_enum "google.cloud.asset.v1.ConditionEvaluation.EvaluationValue" do
|
144
|
-
value :EVALUATION_VALUE_UNSPECIFIED, 0
|
145
|
-
value :TRUE, 1
|
146
|
-
value :FALSE, 2
|
147
|
-
value :CONDITIONAL, 3
|
148
|
-
end
|
149
|
-
add_message "google.cloud.asset.v1.IamPolicyAnalysisResult" do
|
150
|
-
optional :attached_resource_full_name, :string, 1
|
151
|
-
optional :iam_binding, :message, 2, "google.iam.v1.Binding"
|
152
|
-
repeated :access_control_lists, :message, 3, "google.cloud.asset.v1.IamPolicyAnalysisResult.AccessControlList"
|
153
|
-
optional :identity_list, :message, 4, "google.cloud.asset.v1.IamPolicyAnalysisResult.IdentityList"
|
154
|
-
optional :fully_explored, :bool, 5
|
155
|
-
end
|
156
|
-
add_message "google.cloud.asset.v1.IamPolicyAnalysisResult.Resource" do
|
157
|
-
optional :full_resource_name, :string, 1
|
158
|
-
optional :analysis_state, :message, 2, "google.cloud.asset.v1.IamPolicyAnalysisState"
|
159
|
-
end
|
160
|
-
add_message "google.cloud.asset.v1.IamPolicyAnalysisResult.Access" do
|
161
|
-
optional :analysis_state, :message, 3, "google.cloud.asset.v1.IamPolicyAnalysisState"
|
162
|
-
oneof :oneof_access do
|
163
|
-
optional :role, :string, 1
|
164
|
-
optional :permission, :string, 2
|
165
|
-
end
|
166
|
-
end
|
167
|
-
add_message "google.cloud.asset.v1.IamPolicyAnalysisResult.Identity" do
|
168
|
-
optional :name, :string, 1
|
169
|
-
optional :analysis_state, :message, 2, "google.cloud.asset.v1.IamPolicyAnalysisState"
|
170
|
-
end
|
171
|
-
add_message "google.cloud.asset.v1.IamPolicyAnalysisResult.Edge" do
|
172
|
-
optional :source_node, :string, 1
|
173
|
-
optional :target_node, :string, 2
|
174
|
-
end
|
175
|
-
add_message "google.cloud.asset.v1.IamPolicyAnalysisResult.AccessControlList" do
|
176
|
-
repeated :resources, :message, 1, "google.cloud.asset.v1.IamPolicyAnalysisResult.Resource"
|
177
|
-
repeated :accesses, :message, 2, "google.cloud.asset.v1.IamPolicyAnalysisResult.Access"
|
178
|
-
repeated :resource_edges, :message, 3, "google.cloud.asset.v1.IamPolicyAnalysisResult.Edge"
|
179
|
-
optional :condition_evaluation, :message, 4, "google.cloud.asset.v1.ConditionEvaluation"
|
180
|
-
end
|
181
|
-
add_message "google.cloud.asset.v1.IamPolicyAnalysisResult.IdentityList" do
|
182
|
-
repeated :identities, :message, 1, "google.cloud.asset.v1.IamPolicyAnalysisResult.Identity"
|
183
|
-
repeated :group_edges, :message, 2, "google.cloud.asset.v1.IamPolicyAnalysisResult.Edge"
|
19
|
+
|
20
|
+
descriptor_data = "\n\"google/cloud/asset/v1/assets.proto\x12\x15google.cloud.asset.v1\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a)google/cloud/orgpolicy/v1/orgpolicy.proto\x1a(google/cloud/osconfig/v1/inventory.proto\x1a\x1agoogle/iam/v1/policy.proto\x1a:google/identity/accesscontextmanager/v1/access_level.proto\x1a;google/identity/accesscontextmanager/v1/access_policy.proto\x1a?google/identity/accesscontextmanager/v1/service_perimeter.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x15google/rpc/code.proto\"\xf5\x02\n\rTemporalAsset\x12\x31\n\x06window\x18\x01 \x01(\x0b\x32!.google.cloud.asset.v1.TimeWindow\x12\x0f\n\x07\x64\x65leted\x18\x02 \x01(\x08\x12+\n\x05\x61sset\x18\x03 \x01(\x0b\x32\x1c.google.cloud.asset.v1.Asset\x12O\n\x11prior_asset_state\x18\x04 \x01(\x0e\x32\x34.google.cloud.asset.v1.TemporalAsset.PriorAssetState\x12\x31\n\x0bprior_asset\x18\x05 \x01(\x0b\x32\x1c.google.cloud.asset.v1.Asset\"o\n\x0fPriorAssetState\x12!\n\x1dPRIOR_ASSET_STATE_UNSPECIFIED\x10\x00\x12\x0b\n\x07PRESENT\x10\x01\x12\x0b\n\x07INVALID\x10\x02\x12\x12\n\x0e\x44OES_NOT_EXIST\x10\x03\x12\x0b\n\x07\x44\x45LETED\x10\x04\"j\n\nTimeWindow\x12.\n\nstart_time\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12,\n\x08\x65nd_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"\xf3\x05\n\x05\x41sset\x12/\n\x0bupdate_time\x18\x0b \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x12\n\nasset_type\x18\x02 \x01(\t\x12\x31\n\x08resource\x18\x03 \x01(\x0b\x32\x1f.google.cloud.asset.v1.Resource\x12)\n\niam_policy\x18\x04 \x01(\x0b\x32\x15.google.iam.v1.Policy\x12\x35\n\norg_policy\x18\x06 \x03(\x0b\x32!.google.cloud.orgpolicy.v1.Policy\x12N\n\raccess_policy\x18\x07 \x01(\x0b\x32\x35.google.identity.accesscontextmanager.v1.AccessPolicyH\x00\x12L\n\x0c\x61\x63\x63\x65ss_level\x18\x08 \x01(\x0b\x32\x34.google.identity.accesscontextmanager.v1.AccessLevelH\x00\x12V\n\x11service_perimeter\x18\t \x01(\x0b\x32\x39.google.identity.accesscontextmanager.v1.ServicePerimeterH\x00\x12\x39\n\x0cos_inventory\x18\x0c \x01(\x0b\x32#.google.cloud.osconfig.v1.Inventory\x12@\n\x0erelated_assets\x18\r \x01(\x0b\x32$.google.cloud.asset.v1.RelatedAssetsB\x02\x18\x01\x12:\n\rrelated_asset\x18\x0f \x01(\x0b\x32#.google.cloud.asset.v1.RelatedAsset\x12\x11\n\tancestors\x18\n \x03(\t:\'\xea\x41$\n\x1f\x63loudasset.googleapis.com/Asset\x12\x01*B\x17\n\x15\x61\x63\x63\x65ss_context_policy\"\xb2\x01\n\x08Resource\x12\x0f\n\x07version\x18\x01 \x01(\t\x12\x1e\n\x16\x64iscovery_document_uri\x18\x02 \x01(\t\x12\x16\n\x0e\x64iscovery_name\x18\x03 \x01(\t\x12\x14\n\x0cresource_url\x18\x04 \x01(\t\x12\x0e\n\x06parent\x18\x05 \x01(\t\x12%\n\x04\x64\x61ta\x18\x06 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x10\n\x08location\x18\x08 \x01(\t\"\x98\x01\n\rRelatedAssets\x12N\n\x17relationship_attributes\x18\x01 \x01(\x0b\x32-.google.cloud.asset.v1.RelationshipAttributes\x12\x33\n\x06\x61ssets\x18\x02 \x03(\x0b\x32#.google.cloud.asset.v1.RelatedAsset:\x02\x18\x01\"v\n\x16RelationshipAttributes\x12\x0c\n\x04type\x18\x04 \x01(\t\x12\x1c\n\x14source_resource_type\x18\x01 \x01(\t\x12\x1c\n\x14target_resource_type\x18\x02 \x01(\t\x12\x0e\n\x06\x61\x63tion\x18\x03 \x01(\t:\x02\x18\x01\"\x85\x01\n\x0cRelatedAsset\x12\x33\n\x05\x61sset\x18\x01 \x01(\tB$\xfa\x41!\n\x1f\x63loudasset.googleapis.com/Asset\x12\x12\n\nasset_type\x18\x02 \x01(\t\x12\x11\n\tancestors\x18\x03 \x03(\t\x12\x19\n\x11relationship_type\x18\x04 \x01(\t\"\xc8\x07\n\x14ResourceSearchResult\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x12\n\nasset_type\x18\x02 \x01(\t\x12\x0f\n\x07project\x18\x03 \x01(\t\x12\x0f\n\x07\x66olders\x18\x11 \x03(\t\x12\x14\n\x0corganization\x18\x12 \x01(\t\x12\x14\n\x0c\x64isplay_name\x18\x04 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x05 \x01(\t\x12\x10\n\x08location\x18\x06 \x01(\t\x12G\n\x06labels\x18\x07 \x03(\x0b\x32\x37.google.cloud.asset.v1.ResourceSearchResult.LabelsEntry\x12\x14\n\x0cnetwork_tags\x18\x08 \x03(\t\x12\x13\n\x07kms_key\x18\n \x01(\tB\x02\x18\x01\x12\x10\n\x08kms_keys\x18\x1c \x03(\t\x12/\n\x0b\x63reate_time\x18\x0b \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12/\n\x0bupdate_time\x18\x0c \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\r\n\x05state\x18\r \x01(\t\x12\x36\n\x15\x61\x64\x64itional_attributes\x18\t \x01(\x0b\x32\x17.google.protobuf.Struct\x12!\n\x19parent_full_resource_name\x18\x13 \x01(\t\x12\x45\n\x13versioned_resources\x18\x10 \x03(\x0b\x32(.google.cloud.asset.v1.VersionedResource\x12\x43\n\x12\x61ttached_resources\x18\x14 \x03(\x0b\x32\'.google.cloud.asset.v1.AttachedResource\x12U\n\rrelationships\x18\x15 \x03(\x0b\x32>.google.cloud.asset.v1.ResourceSearchResult.RelationshipsEntry\x12\x10\n\x08tag_keys\x18\x17 \x03(\t\x12\x12\n\ntag_values\x18\x19 \x03(\t\x12\x15\n\rtag_value_ids\x18\x1a \x03(\t\x12\x19\n\x11parent_asset_type\x18g \x01(\t\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a]\n\x12RelationshipsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x36\n\x05value\x18\x02 \x01(\x0b\x32\'.google.cloud.asset.v1.RelatedResources:\x02\x38\x01\"O\n\x11VersionedResource\x12\x0f\n\x07version\x18\x01 \x01(\t\x12)\n\x08resource\x18\x02 \x01(\x0b\x32\x17.google.protobuf.Struct\"m\n\x10\x41ttachedResource\x12\x12\n\nasset_type\x18\x01 \x01(\t\x12\x45\n\x13versioned_resources\x18\x03 \x03(\x0b\x32(.google.cloud.asset.v1.VersionedResource\"U\n\x10RelatedResources\x12\x41\n\x11related_resources\x18\x01 \x03(\x0b\x32&.google.cloud.asset.v1.RelatedResource\"A\n\x0fRelatedResource\x12\x12\n\nasset_type\x18\x01 \x01(\t\x12\x1a\n\x12\x66ull_resource_name\x18\x02 \x01(\t\"\x8f\x04\n\x15IamPolicySearchResult\x12\x10\n\x08resource\x18\x01 \x01(\t\x12\x12\n\nasset_type\x18\x05 \x01(\t\x12\x0f\n\x07project\x18\x02 \x01(\t\x12\x0f\n\x07\x66olders\x18\x06 \x03(\t\x12\x14\n\x0corganization\x18\x07 \x01(\t\x12%\n\x06policy\x18\x03 \x01(\x0b\x32\x15.google.iam.v1.Policy\x12M\n\x0b\x65xplanation\x18\x04 \x01(\x0b\x32\x38.google.cloud.asset.v1.IamPolicySearchResult.Explanation\x1a\xa1\x02\n\x0b\x45xplanation\x12m\n\x13matched_permissions\x18\x01 \x03(\x0b\x32P.google.cloud.asset.v1.IamPolicySearchResult.Explanation.MatchedPermissionsEntry\x1a\"\n\x0bPermissions\x12\x13\n\x0bpermissions\x18\x01 \x03(\t\x1a\x7f\n\x17MatchedPermissionsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12S\n\x05value\x18\x02 \x01(\x0b\x32\x44.google.cloud.asset.v1.IamPolicySearchResult.Explanation.Permissions:\x02\x38\x01\"G\n\x16IamPolicyAnalysisState\x12\x1e\n\x04\x63ode\x18\x01 \x01(\x0e\x32\x10.google.rpc.Code\x12\r\n\x05\x63\x61use\x18\x02 \x01(\t\"\xc6\x01\n\x13\x43onditionEvaluation\x12T\n\x10\x65valuation_value\x18\x01 \x01(\x0e\x32:.google.cloud.asset.v1.ConditionEvaluation.EvaluationValue\"Y\n\x0f\x45valuationValue\x12 \n\x1c\x45VALUATION_VALUE_UNSPECIFIED\x10\x00\x12\x08\n\x04TRUE\x10\x01\x12\t\n\x05\x46\x41LSE\x10\x02\x12\x0f\n\x0b\x43ONDITIONAL\x10\x03\"\xab\t\n\x17IamPolicyAnalysisResult\x12#\n\x1b\x61ttached_resource_full_name\x18\x01 \x01(\t\x12+\n\x0biam_binding\x18\x02 \x01(\x0b\x32\x16.google.iam.v1.Binding\x12^\n\x14\x61\x63\x63\x65ss_control_lists\x18\x03 \x03(\x0b\x32@.google.cloud.asset.v1.IamPolicyAnalysisResult.AccessControlList\x12R\n\ridentity_list\x18\x04 \x01(\x0b\x32;.google.cloud.asset.v1.IamPolicyAnalysisResult.IdentityList\x12\x16\n\x0e\x66ully_explored\x18\x05 \x01(\x08\x1am\n\x08Resource\x12\x1a\n\x12\x66ull_resource_name\x18\x01 \x01(\t\x12\x45\n\x0e\x61nalysis_state\x18\x02 \x01(\x0b\x32-.google.cloud.asset.v1.IamPolicyAnalysisState\x1a\x85\x01\n\x06\x41\x63\x63\x65ss\x12\x0e\n\x04role\x18\x01 \x01(\tH\x00\x12\x14\n\npermission\x18\x02 \x01(\tH\x00\x12\x45\n\x0e\x61nalysis_state\x18\x03 \x01(\x0b\x32-.google.cloud.asset.v1.IamPolicyAnalysisStateB\x0e\n\x0coneof_access\x1a_\n\x08Identity\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x45\n\x0e\x61nalysis_state\x18\x02 \x01(\x0b\x32-.google.cloud.asset.v1.IamPolicyAnalysisState\x1a\x30\n\x04\x45\x64ge\x12\x13\n\x0bsource_node\x18\x01 \x01(\t\x12\x13\n\x0btarget_node\x18\x02 \x01(\t\x1a\xbf\x02\n\x11\x41\x63\x63\x65ssControlList\x12J\n\tresources\x18\x01 \x03(\x0b\x32\x37.google.cloud.asset.v1.IamPolicyAnalysisResult.Resource\x12G\n\x08\x61\x63\x63\x65sses\x18\x02 \x03(\x0b\x32\x35.google.cloud.asset.v1.IamPolicyAnalysisResult.Access\x12K\n\x0eresource_edges\x18\x03 \x03(\x0b\x32\x33.google.cloud.asset.v1.IamPolicyAnalysisResult.Edge\x12H\n\x14\x63ondition_evaluation\x18\x04 \x01(\x0b\x32*.google.cloud.asset.v1.ConditionEvaluation\x1a\xa5\x01\n\x0cIdentityList\x12K\n\nidentities\x18\x01 \x03(\x0b\x32\x37.google.cloud.asset.v1.IamPolicyAnalysisResult.Identity\x12H\n\x0bgroup_edges\x18\x02 \x03(\x0b\x32\x33.google.cloud.asset.v1.IamPolicyAnalysisResult.EdgeB\x8d\x01\n\x19\x63om.google.cloud.asset.v1B\nAssetProtoP\x01Z/cloud.google.com/go/asset/apiv1/assetpb;assetpb\xf8\x01\x01\xaa\x02\x15Google.Cloud.Asset.V1\xca\x02\x15Google\\Cloud\\Asset\\V1b\x06proto3"
|
21
|
+
|
22
|
+
pool = Google::Protobuf::DescriptorPool.generated_pool
|
23
|
+
|
24
|
+
begin
|
25
|
+
pool.add_serialized_file(descriptor_data)
|
26
|
+
rescue TypeError => e
|
27
|
+
# Compatibility code: will be removed in the next major version.
|
28
|
+
require 'google/protobuf/descriptor_pb'
|
29
|
+
parsed = Google::Protobuf::FileDescriptorProto.decode(descriptor_data)
|
30
|
+
parsed.clear_dependency
|
31
|
+
serialized = parsed.class.encode(parsed)
|
32
|
+
file = pool.add_serialized_file(serialized)
|
33
|
+
warn "Warning: Protobuf detected an import path issue while loading generated file #{__FILE__}"
|
34
|
+
imports = [
|
35
|
+
["google.protobuf.Timestamp", "google/protobuf/timestamp.proto"],
|
36
|
+
["google.iam.v1.Policy", "google/iam/v1/policy.proto"],
|
37
|
+
["google.cloud.orgpolicy.v1.Policy", "google/cloud/orgpolicy/v1/orgpolicy.proto"],
|
38
|
+
["google.identity.accesscontextmanager.v1.AccessPolicy", "google/identity/accesscontextmanager/v1/access_policy.proto"],
|
39
|
+
["google.identity.accesscontextmanager.v1.AccessLevel", "google/identity/accesscontextmanager/v1/access_level.proto"],
|
40
|
+
["google.identity.accesscontextmanager.v1.ServicePerimeter", "google/identity/accesscontextmanager/v1/service_perimeter.proto"],
|
41
|
+
["google.cloud.osconfig.v1.Inventory", "google/cloud/osconfig/v1/inventory.proto"],
|
42
|
+
["google.protobuf.Struct", "google/protobuf/struct.proto"],
|
43
|
+
]
|
44
|
+
imports.each do |type_name, expected_filename|
|
45
|
+
import_file = pool.lookup(type_name).file_descriptor
|
46
|
+
if import_file.name != expected_filename
|
47
|
+
warn "- #{file.name} imports #{expected_filename}, but that import was loaded as #{import_file.name}"
|
184
48
|
end
|
185
49
|
end
|
50
|
+
warn "Each proto file must use a consistent fully-qualified name."
|
51
|
+
warn "This will become an error in the next major version."
|
186
52
|
end
|
187
53
|
|
188
54
|
module Google
|
@@ -1,3 +1,4 @@
|
|
1
|
+
# frozen_string_literal: true
|
1
2
|
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
2
3
|
# source: google/cloud/orgpolicy/v1/orgpolicy.proto
|
3
4
|
|
@@ -5,37 +6,32 @@ require 'google/protobuf'
|
|
5
6
|
|
6
7
|
require 'google/protobuf/timestamp_pb'
|
7
8
|
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
value :ALLOW, 1
|
31
|
-
value :DENY, 2
|
32
|
-
end
|
33
|
-
add_message "google.cloud.orgpolicy.v1.Policy.BooleanPolicy" do
|
34
|
-
optional :enforced, :bool, 1
|
35
|
-
end
|
36
|
-
add_message "google.cloud.orgpolicy.v1.Policy.RestoreDefault" do
|
9
|
+
|
10
|
+
descriptor_data = "\n)google/cloud/orgpolicy/v1/orgpolicy.proto\x12\x19google.cloud.orgpolicy.v1\x1a\x1fgoogle/protobuf/timestamp.proto\"\x8b\x05\n\x06Policy\x12\x0f\n\x07version\x18\x01 \x01(\x05\x12\x12\n\nconstraint\x18\x02 \x01(\t\x12\x0c\n\x04\x65tag\x18\x03 \x01(\x0c\x12/\n\x0bupdate_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x43\n\x0blist_policy\x18\x05 \x01(\x0b\x32,.google.cloud.orgpolicy.v1.Policy.ListPolicyH\x00\x12I\n\x0e\x62oolean_policy\x18\x06 \x01(\x0b\x32/.google.cloud.orgpolicy.v1.Policy.BooleanPolicyH\x00\x12K\n\x0frestore_default\x18\x07 \x01(\x0b\x32\x30.google.cloud.orgpolicy.v1.Policy.RestoreDefaultH\x00\x1a\xfb\x01\n\nListPolicy\x12\x16\n\x0e\x61llowed_values\x18\x01 \x03(\t\x12\x15\n\rdenied_values\x18\x02 \x03(\t\x12J\n\nall_values\x18\x03 \x01(\x0e\x32\x36.google.cloud.orgpolicy.v1.Policy.ListPolicy.AllValues\x12\x17\n\x0fsuggested_value\x18\x04 \x01(\t\x12\x1b\n\x13inherit_from_parent\x18\x05 \x01(\x08\"<\n\tAllValues\x12\x1a\n\x16\x41LL_VALUES_UNSPECIFIED\x10\x00\x12\t\n\x05\x41LLOW\x10\x01\x12\x08\n\x04\x44\x45NY\x10\x02\x1a!\n\rBooleanPolicy\x12\x10\n\x08\x65nforced\x18\x01 \x01(\x08\x1a\x10\n\x0eRestoreDefaultB\r\n\x0bpolicy_typeB\xc5\x01\n\x1d\x63om.google.cloud.orgpolicy.v1B\x0eOrgPolicyProtoP\x01Z;cloud.google.com/go/orgpolicy/apiv1/orgpolicypb;orgpolicypb\xaa\x02\x19Google.Cloud.OrgPolicy.V1\xca\x02\x19Google\\Cloud\\OrgPolicy\\V1\xea\x02\x1cGoogle::Cloud::OrgPolicy::V1b\x06proto3"
|
11
|
+
|
12
|
+
pool = Google::Protobuf::DescriptorPool.generated_pool
|
13
|
+
|
14
|
+
begin
|
15
|
+
pool.add_serialized_file(descriptor_data)
|
16
|
+
rescue TypeError => e
|
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}"
|
37
31
|
end
|
38
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."
|
39
35
|
end
|
40
36
|
|
41
37
|
module Google
|
@@ -35,7 +35,9 @@ module Google
|
|
35
35
|
# Details about how and where to publish client libraries.
|
36
36
|
# @!attribute [rw] version
|
37
37
|
# @return [::String]
|
38
|
-
# Version of the API to apply these settings to.
|
38
|
+
# Version of the API to apply these settings to. This is the full protobuf
|
39
|
+
# package for the API, ending in the version element.
|
40
|
+
# Examples: "google.cloud.speech.v1" and "google.spanner.admin.database.v1".
|
39
41
|
# @!attribute [rw] launch_stage
|
40
42
|
# @return [::Google::Api::LaunchStage]
|
41
43
|
# Launch stage of this version of the API.
|
@@ -81,7 +83,7 @@ module Google
|
|
81
83
|
# long-running operation pattern.
|
82
84
|
# @!attribute [rw] new_issue_uri
|
83
85
|
# @return [::String]
|
84
|
-
# Link to a
|
86
|
+
# Link to a *public* URI where users can report issues. Example:
|
85
87
|
# https://issuetracker.google.com/issues/new?component=190865&template=1161103
|
86
88
|
# @!attribute [rw] documentation_uri
|
87
89
|
# @return [::String]
|
@@ -111,6 +113,10 @@ module Google
|
|
111
113
|
# Client library settings. If the same version string appears multiple
|
112
114
|
# times in this list, then the last one wins. Settings from earlier
|
113
115
|
# settings with the same version string are discarded.
|
116
|
+
# @!attribute [rw] proto_reference_documentation_uri
|
117
|
+
# @return [::String]
|
118
|
+
# Optional link to proto reference documentation. Example:
|
119
|
+
# https://cloud.google.com/pubsub/lite/docs/reference/rpc
|
114
120
|
class Publishing
|
115
121
|
include ::Google::Protobuf::MessageExts
|
116
122
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -203,9 +209,57 @@ module Google
|
|
203
209
|
# @!attribute [rw] common
|
204
210
|
# @return [::Google::Api::CommonLanguageSettings]
|
205
211
|
# Some settings.
|
212
|
+
# @!attribute [rw] renamed_services
|
213
|
+
# @return [::Google::Protobuf::Map{::String => ::String}]
|
214
|
+
# Map from original service names to renamed versions.
|
215
|
+
# This is used when the default generated types
|
216
|
+
# would cause a naming conflict. (Neither name is
|
217
|
+
# fully-qualified.)
|
218
|
+
# Example: Subscriber to SubscriberServiceApi.
|
219
|
+
# @!attribute [rw] renamed_resources
|
220
|
+
# @return [::Google::Protobuf::Map{::String => ::String}]
|
221
|
+
# Map from full resource types to the effective short name
|
222
|
+
# for the resource. This is used when otherwise resource
|
223
|
+
# named from different services would cause naming collisions.
|
224
|
+
# Example entry:
|
225
|
+
# "datalabeling.googleapis.com/Dataset": "DataLabelingDataset"
|
226
|
+
# @!attribute [rw] ignored_resources
|
227
|
+
# @return [::Array<::String>]
|
228
|
+
# List of full resource types to ignore during generation.
|
229
|
+
# This is typically used for API-specific Location resources,
|
230
|
+
# which should be handled by the generator as if they were actually
|
231
|
+
# the common Location resources.
|
232
|
+
# Example entry: "documentai.googleapis.com/Location"
|
233
|
+
# @!attribute [rw] forced_namespace_aliases
|
234
|
+
# @return [::Array<::String>]
|
235
|
+
# Namespaces which must be aliased in snippets due to
|
236
|
+
# a known (but non-generator-predictable) naming collision
|
237
|
+
# @!attribute [rw] handwritten_signatures
|
238
|
+
# @return [::Array<::String>]
|
239
|
+
# Method signatures (in the form "service.method(signature)")
|
240
|
+
# which are provided separately, so shouldn't be generated.
|
241
|
+
# Snippets *calling* these methods are still generated, however.
|
206
242
|
class DotnetSettings
|
207
243
|
include ::Google::Protobuf::MessageExts
|
208
244
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
245
|
+
|
246
|
+
# @!attribute [rw] key
|
247
|
+
# @return [::String]
|
248
|
+
# @!attribute [rw] value
|
249
|
+
# @return [::String]
|
250
|
+
class RenamedServicesEntry
|
251
|
+
include ::Google::Protobuf::MessageExts
|
252
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
253
|
+
end
|
254
|
+
|
255
|
+
# @!attribute [rw] key
|
256
|
+
# @return [::String]
|
257
|
+
# @!attribute [rw] value
|
258
|
+
# @return [::String]
|
259
|
+
class RenamedResourcesEntry
|
260
|
+
include ::Google::Protobuf::MessageExts
|
261
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
262
|
+
end
|
209
263
|
end
|
210
264
|
|
211
265
|
# Settings for Ruby client libraries.
|
@@ -240,8 +294,8 @@ module Google
|
|
240
294
|
# Example of a YAML configuration::
|
241
295
|
#
|
242
296
|
# publishing:
|
243
|
-
#
|
244
|
-
# - selector:
|
297
|
+
# method_settings:
|
298
|
+
# - selector: google.cloud.speech.v2.Speech.BatchRecognize
|
245
299
|
# long_running:
|
246
300
|
# initial_poll_delay:
|
247
301
|
# seconds: 60 # 1 minute
|
@@ -299,6 +353,15 @@ module Google
|
|
299
353
|
|
300
354
|
# Street View Org.
|
301
355
|
STREET_VIEW = 4
|
356
|
+
|
357
|
+
# Shopping Org.
|
358
|
+
SHOPPING = 5
|
359
|
+
|
360
|
+
# Geo Org.
|
361
|
+
GEO = 6
|
362
|
+
|
363
|
+
# Generative AI - https://developers.generativeai.google
|
364
|
+
GENERATIVE_AI = 7
|
302
365
|
end
|
303
366
|
|
304
367
|
# To where should client libraries be published?
|
@@ -270,7 +270,7 @@ module Google
|
|
270
270
|
# Required. The name of the project/folder/organization where this feed
|
271
271
|
# should be created in. It can only be an organization number (such as
|
272
272
|
# "organizations/123"), a folder number (such as "folders/123"), a project ID
|
273
|
-
# (such as "projects/my-project-id")
|
273
|
+
# (such as "projects/my-project-id"), or a project number (such as
|
274
274
|
# "projects/12345").
|
275
275
|
# @!attribute [rw] feed_id
|
276
276
|
# @return [::String]
|
@@ -1388,8 +1388,8 @@ module Google
|
|
1388
1388
|
# Required. The name of the project/folder/organization where this
|
1389
1389
|
# saved_query should be created in. It can only be an organization number
|
1390
1390
|
# (such as "organizations/123"), a folder number (such as "folders/123"), a
|
1391
|
-
# project ID (such as "projects/my-project-id")
|
1392
|
-
#
|
1391
|
+
# project ID (such as "projects/my-project-id"), or a project number (such as
|
1392
|
+
# "projects/12345").
|
1393
1393
|
# @!attribute [rw] saved_query
|
1394
1394
|
# @return [::Google::Cloud::Asset::V1::SavedQuery]
|
1395
1395
|
# Required. The saved_query details. The `name` field must be empty as it
|
@@ -1442,8 +1442,8 @@ module Google
|
|
1442
1442
|
# @return [::Integer]
|
1443
1443
|
# Optional. The maximum number of saved queries to return per page. The
|
1444
1444
|
# service may return fewer than this value. If unspecified, at most 50 will
|
1445
|
-
# be returned.
|
1446
|
-
#
|
1445
|
+
# be returned. The maximum value is 1000; values above 1000 will be coerced
|
1446
|
+
# to 1000.
|
1447
1447
|
# @!attribute [rw] page_token
|
1448
1448
|
# @return [::String]
|
1449
1449
|
# Optional. A page token, received from a previous `ListSavedQueries` call.
|
@@ -2356,19 +2356,19 @@ module Google
|
|
2356
2356
|
# {::Google::Cloud::Asset::V1::AnalyzeOrgPolicyGovernedAssetsResponse::GovernedResource#full_resource_name AnalyzeOrgPolicyGovernedAssetsResponse.GovernedResource.full_resource_name}.
|
2357
2357
|
# @!attribute [rw] project
|
2358
2358
|
# @return [::String]
|
2359
|
-
# The project that this resource belongs to, in the
|
2359
|
+
# The project that this resource belongs to, in the format of
|
2360
2360
|
# projects/\\{PROJECT_NUMBER}. This field is available when the resource
|
2361
2361
|
# belongs to a project.
|
2362
2362
|
# @!attribute [rw] folders
|
2363
2363
|
# @return [::Array<::String>]
|
2364
|
-
# The folder(s) that this resource belongs to, in the
|
2364
|
+
# The folder(s) that this resource belongs to, in the format of
|
2365
2365
|
# folders/\\{FOLDER_NUMBER}. This field is available when the resource
|
2366
|
-
# belongs(directly or cascadingly) to one or more folders.
|
2366
|
+
# belongs (directly or cascadingly) to one or more folders.
|
2367
2367
|
# @!attribute [rw] organization
|
2368
2368
|
# @return [::String]
|
2369
|
-
# The organization that this resource belongs to, in the
|
2369
|
+
# The organization that this resource belongs to, in the format of
|
2370
2370
|
# organizations/\\{ORGANIZATION_NUMBER}. This field is available when the
|
2371
|
-
# resource belongs(directly or cascadingly) to an organization.
|
2371
|
+
# resource belongs (directly or cascadingly) to an organization.
|
2372
2372
|
class GovernedResource
|
2373
2373
|
include ::Google::Protobuf::MessageExts
|
2374
2374
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -2389,19 +2389,19 @@ module Google
|
|
2389
2389
|
# The IAM policy directly set on the given resource.
|
2390
2390
|
# @!attribute [rw] project
|
2391
2391
|
# @return [::String]
|
2392
|
-
# The project that this IAM policy belongs to, in the
|
2392
|
+
# The project that this IAM policy belongs to, in the format of
|
2393
2393
|
# projects/\\{PROJECT_NUMBER}. This field is available when the IAM policy
|
2394
2394
|
# belongs to a project.
|
2395
2395
|
# @!attribute [rw] folders
|
2396
2396
|
# @return [::Array<::String>]
|
2397
|
-
# The folder(s) that this IAM policy belongs to, in the
|
2397
|
+
# The folder(s) that this IAM policy belongs to, in the format of
|
2398
2398
|
# folders/\\{FOLDER_NUMBER}. This field is available when the IAM policy
|
2399
|
-
# belongs(directly or cascadingly) to one or more folders.
|
2399
|
+
# belongs (directly or cascadingly) to one or more folders.
|
2400
2400
|
# @!attribute [rw] organization
|
2401
2401
|
# @return [::String]
|
2402
|
-
# The organization that this IAM policy belongs to, in the
|
2402
|
+
# The organization that this IAM policy belongs to, in the format of
|
2403
2403
|
# organizations/\\{ORGANIZATION_NUMBER}. This field is available when the
|
2404
|
-
# IAM policy belongs(directly or cascadingly) to an organization.
|
2404
|
+
# IAM policy belongs (directly or cascadingly) to an organization.
|
2405
2405
|
class GovernedIamPolicy
|
2406
2406
|
include ::Google::Protobuf::MessageExts
|
2407
2407
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -35,7 +35,8 @@ module Google
|
|
35
35
|
# only if the expression evaluates to `true`. A condition can add constraints
|
36
36
|
# based on attributes of the request, the resource, or both. To learn which
|
37
37
|
# resources support conditions in their IAM policies, see the
|
38
|
-
# [IAM
|
38
|
+
# [IAM
|
39
|
+
# documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
|
39
40
|
#
|
40
41
|
# **JSON example:**
|
41
42
|
#
|
@@ -58,7 +59,8 @@ module Google
|
|
58
59
|
# "condition": {
|
59
60
|
# "title": "expirable access",
|
60
61
|
# "description": "Does not grant access after Sep 2020",
|
61
|
-
# "expression": "request.time <
|
62
|
+
# "expression": "request.time <
|
63
|
+
# timestamp('2020-10-01T00:00:00.000Z')",
|
62
64
|
# }
|
63
65
|
# }
|
64
66
|
# ],
|
@@ -112,7 +114,8 @@ module Google
|
|
112
114
|
# specify any valid version or leave the field unset.
|
113
115
|
#
|
114
116
|
# To learn which resources support conditions in their IAM policies, see the
|
115
|
-
# [IAM
|
117
|
+
# [IAM
|
118
|
+
# documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
|
116
119
|
# @!attribute [rw] bindings
|
117
120
|
# @return [::Array<::Google::Iam::V1::Binding>]
|
118
121
|
# Associates a list of `members`, or principals, with a `role`. Optionally,
|
@@ -305,7 +308,8 @@ module Google
|
|
305
308
|
# @return [::Array<::String>]
|
306
309
|
# Specifies the identities that do not cause logging for this type of
|
307
310
|
# permission.
|
308
|
-
# Follows the same format of
|
311
|
+
# Follows the same format of
|
312
|
+
# {::Google::Iam::V1::Binding#members Binding.members}.
|
309
313
|
class AuditLogConfig
|
310
314
|
include ::Google::Protobuf::MessageExts
|
311
315
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -43,8 +43,12 @@ module Google
|
|
43
43
|
# if (any.is(Foo.class)) {
|
44
44
|
# foo = any.unpack(Foo.class);
|
45
45
|
# }
|
46
|
+
# // or ...
|
47
|
+
# if (any.isSameTypeAs(Foo.getDefaultInstance())) {
|
48
|
+
# foo = any.unpack(Foo.getDefaultInstance());
|
49
|
+
# }
|
46
50
|
#
|
47
|
-
#
|
51
|
+
# Example 3: Pack and unpack a message in Python.
|
48
52
|
#
|
49
53
|
# foo = Foo(...)
|
50
54
|
# any = Any()
|
@@ -54,7 +58,7 @@ module Google
|
|
54
58
|
# any.Unpack(foo)
|
55
59
|
# ...
|
56
60
|
#
|
57
|
-
#
|
61
|
+
# Example 4: Pack and unpack a message in Go
|
58
62
|
#
|
59
63
|
# foo := &pb.Foo{...}
|
60
64
|
# any, err := anypb.New(foo)
|
@@ -73,9 +77,8 @@ module Google
|
|
73
77
|
# in the type URL, for example "foo.bar.com/x/y.z" will yield type
|
74
78
|
# name "y.z".
|
75
79
|
#
|
76
|
-
#
|
77
80
|
# JSON
|
78
|
-
#
|
81
|
+
# ====
|
79
82
|
# The JSON representation of an `Any` value uses the regular
|
80
83
|
# representation of the deserialized, embedded message, with an
|
81
84
|
# additional field `@type` which contains the type URL. Example:
|
@@ -87,7 +87,7 @@ module Google
|
|
87
87
|
# `NullValue` is a singleton enumeration to represent the null value for the
|
88
88
|
# `Value` type union.
|
89
89
|
#
|
90
|
-
#
|
90
|
+
# The JSON representation for `NullValue` is JSON `null`.
|
91
91
|
module NullValue
|
92
92
|
# Null value.
|
93
93
|
NULL_VALUE = 0
|
@@ -69,7 +69,6 @@ module Google
|
|
69
69
|
# Timestamp timestamp = Timestamp.newBuilder().setSeconds(millis / 1000)
|
70
70
|
# .setNanos((int) ((millis % 1000) * 1000000)).build();
|
71
71
|
#
|
72
|
-
#
|
73
72
|
# Example 5: Compute Timestamp from Java `Instant.now()`.
|
74
73
|
#
|
75
74
|
# Instant now = Instant.now();
|
@@ -78,7 +77,6 @@ module Google
|
|
78
77
|
# Timestamp.newBuilder().setSeconds(now.getEpochSecond())
|
79
78
|
# .setNanos(now.getNano()).build();
|
80
79
|
#
|
81
|
-
#
|
82
80
|
# Example 6: Compute Timestamp from current time in Python.
|
83
81
|
#
|
84
82
|
# timestamp = Timestamp()
|
@@ -108,7 +106,7 @@ module Google
|
|
108
106
|
# [`strftime`](https://docs.python.org/2/library/time.html#time.strftime) with
|
109
107
|
# the time format spec '%Y-%m-%dT%H:%M:%S.%fZ'. Likewise, in Java, one can use
|
110
108
|
# the Joda Time's [`ISODateTimeFormat.dateTime()`](
|
111
|
-
# http://
|
109
|
+
# http://joda-time.sourceforge.net/apidocs/org/joda/time/format/ISODateTimeFormat.html#dateTime()
|
112
110
|
# ) to obtain a formatter capable of generating timestamps in this format.
|
113
111
|
# @!attribute [rw] seconds
|
114
112
|
# @return [::Integer]
|