google-cloud-profiler-v2 0.3.0 → 0.5.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.
@@ -0,0 +1,228 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2023 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
+ require "google/devtools/cloudprofiler/v2/profiler_pb"
20
+
21
+ module Google
22
+ module Cloud
23
+ module Profiler
24
+ module V2
25
+ module ProfilerService
26
+ module Rest
27
+ ##
28
+ # REST service stub for the ProfilerService service.
29
+ # Service stub contains baseline method implementations
30
+ # including transcoding, making the REST call, and deserialing the response.
31
+ #
32
+ class ServiceStub
33
+ def initialize endpoint:, credentials:
34
+ # These require statements are intentionally placed here to initialize
35
+ # the REST modules only when it's required.
36
+ require "gapic/rest"
37
+
38
+ @client_stub = ::Gapic::Rest::ClientStub.new endpoint: endpoint, credentials: credentials,
39
+ numeric_enums: true,
40
+ raise_faraday_errors: false
41
+ end
42
+
43
+ ##
44
+ # Baseline implementation for the create_profile REST call
45
+ #
46
+ # @param request_pb [::Google::Cloud::Profiler::V2::CreateProfileRequest]
47
+ # A request object representing the call parameters. Required.
48
+ # @param options [::Gapic::CallOptions]
49
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
50
+ #
51
+ # @yield [result, operation] Access the result along with the TransportOperation object
52
+ # @yieldparam result [::Google::Cloud::Profiler::V2::Profile]
53
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
54
+ #
55
+ # @return [::Google::Cloud::Profiler::V2::Profile]
56
+ # A result object deserialized from the server's reply
57
+ def create_profile request_pb, options = nil
58
+ raise ::ArgumentError, "request must be provided" if request_pb.nil?
59
+
60
+ verb, uri, query_string_params, body = ServiceStub.transcode_create_profile_request request_pb
61
+ query_string_params = if query_string_params.any?
62
+ query_string_params.to_h { |p| p.split("=", 2) }
63
+ else
64
+ {}
65
+ end
66
+
67
+ response = @client_stub.make_http_request(
68
+ verb,
69
+ uri: uri,
70
+ body: body || "",
71
+ params: query_string_params,
72
+ options: options
73
+ )
74
+ operation = ::Gapic::Rest::TransportOperation.new response
75
+ result = ::Google::Cloud::Profiler::V2::Profile.decode_json response.body, ignore_unknown_fields: true
76
+
77
+ yield result, operation if block_given?
78
+ result
79
+ end
80
+
81
+ ##
82
+ # Baseline implementation for the create_offline_profile REST call
83
+ #
84
+ # @param request_pb [::Google::Cloud::Profiler::V2::CreateOfflineProfileRequest]
85
+ # A request object representing the call parameters. Required.
86
+ # @param options [::Gapic::CallOptions]
87
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
88
+ #
89
+ # @yield [result, operation] Access the result along with the TransportOperation object
90
+ # @yieldparam result [::Google::Cloud::Profiler::V2::Profile]
91
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
92
+ #
93
+ # @return [::Google::Cloud::Profiler::V2::Profile]
94
+ # A result object deserialized from the server's reply
95
+ def create_offline_profile request_pb, options = nil
96
+ raise ::ArgumentError, "request must be provided" if request_pb.nil?
97
+
98
+ verb, uri, query_string_params, body = ServiceStub.transcode_create_offline_profile_request request_pb
99
+ query_string_params = if query_string_params.any?
100
+ query_string_params.to_h { |p| p.split("=", 2) }
101
+ else
102
+ {}
103
+ end
104
+
105
+ response = @client_stub.make_http_request(
106
+ verb,
107
+ uri: uri,
108
+ body: body || "",
109
+ params: query_string_params,
110
+ options: options
111
+ )
112
+ operation = ::Gapic::Rest::TransportOperation.new response
113
+ result = ::Google::Cloud::Profiler::V2::Profile.decode_json response.body, ignore_unknown_fields: true
114
+
115
+ yield result, operation if block_given?
116
+ result
117
+ end
118
+
119
+ ##
120
+ # Baseline implementation for the update_profile REST call
121
+ #
122
+ # @param request_pb [::Google::Cloud::Profiler::V2::UpdateProfileRequest]
123
+ # A request object representing the call parameters. Required.
124
+ # @param options [::Gapic::CallOptions]
125
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
126
+ #
127
+ # @yield [result, operation] Access the result along with the TransportOperation object
128
+ # @yieldparam result [::Google::Cloud::Profiler::V2::Profile]
129
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
130
+ #
131
+ # @return [::Google::Cloud::Profiler::V2::Profile]
132
+ # A result object deserialized from the server's reply
133
+ def update_profile request_pb, options = nil
134
+ raise ::ArgumentError, "request must be provided" if request_pb.nil?
135
+
136
+ verb, uri, query_string_params, body = ServiceStub.transcode_update_profile_request request_pb
137
+ query_string_params = if query_string_params.any?
138
+ query_string_params.to_h { |p| p.split("=", 2) }
139
+ else
140
+ {}
141
+ end
142
+
143
+ response = @client_stub.make_http_request(
144
+ verb,
145
+ uri: uri,
146
+ body: body || "",
147
+ params: query_string_params,
148
+ options: options
149
+ )
150
+ operation = ::Gapic::Rest::TransportOperation.new response
151
+ result = ::Google::Cloud::Profiler::V2::Profile.decode_json response.body, ignore_unknown_fields: true
152
+
153
+ yield result, operation if block_given?
154
+ result
155
+ end
156
+
157
+ ##
158
+ # @private
159
+ #
160
+ # GRPC transcoding helper method for the create_profile REST call
161
+ #
162
+ # @param request_pb [::Google::Cloud::Profiler::V2::CreateProfileRequest]
163
+ # A request object representing the call parameters. Required.
164
+ # @return [Array(String, [String, nil], Hash{String => String})]
165
+ # Uri, Body, Query string parameters
166
+ def self.transcode_create_profile_request request_pb
167
+ transcoder = Gapic::Rest::GrpcTranscoder.new
168
+ .with_bindings(
169
+ uri_method: :post,
170
+ uri_template: "/v2/{parent}/profiles",
171
+ body: "*",
172
+ matches: [
173
+ ["parent", %r{^projects/[^/]+/?$}, false]
174
+ ]
175
+ )
176
+ transcoder.transcode request_pb
177
+ end
178
+
179
+ ##
180
+ # @private
181
+ #
182
+ # GRPC transcoding helper method for the create_offline_profile REST call
183
+ #
184
+ # @param request_pb [::Google::Cloud::Profiler::V2::CreateOfflineProfileRequest]
185
+ # A request object representing the call parameters. Required.
186
+ # @return [Array(String, [String, nil], Hash{String => String})]
187
+ # Uri, Body, Query string parameters
188
+ def self.transcode_create_offline_profile_request request_pb
189
+ transcoder = Gapic::Rest::GrpcTranscoder.new
190
+ .with_bindings(
191
+ uri_method: :post,
192
+ uri_template: "/v2/{parent}/profiles:createOffline",
193
+ body: "profile",
194
+ matches: [
195
+ ["parent", %r{^projects/[^/]+/?$}, false]
196
+ ]
197
+ )
198
+ transcoder.transcode request_pb
199
+ end
200
+
201
+ ##
202
+ # @private
203
+ #
204
+ # GRPC transcoding helper method for the update_profile REST call
205
+ #
206
+ # @param request_pb [::Google::Cloud::Profiler::V2::UpdateProfileRequest]
207
+ # A request object representing the call parameters. Required.
208
+ # @return [Array(String, [String, nil], Hash{String => String})]
209
+ # Uri, Body, Query string parameters
210
+ def self.transcode_update_profile_request request_pb
211
+ transcoder = Gapic::Rest::GrpcTranscoder.new
212
+ .with_bindings(
213
+ uri_method: :patch,
214
+ uri_template: "/v2/{profile.name}",
215
+ body: "profile",
216
+ matches: [
217
+ ["profile.name", %r{^projects/[^/]+/profiles/[^/]+/?$}, false]
218
+ ]
219
+ )
220
+ transcoder.transcode request_pb
221
+ end
222
+ end
223
+ end
224
+ end
225
+ end
226
+ end
227
+ end
228
+ end
@@ -0,0 +1,57 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2023 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
+ require "gapic/rest"
20
+ require "gapic/config"
21
+ require "gapic/config/method"
22
+
23
+ require "google/cloud/profiler/v2/version"
24
+
25
+ require "google/cloud/profiler/v2/profiler_service/credentials"
26
+ require "google/cloud/profiler/v2/profiler_service/paths"
27
+ require "google/cloud/profiler/v2/profiler_service/rest/client"
28
+
29
+ module Google
30
+ module Cloud
31
+ module Profiler
32
+ module V2
33
+ ##
34
+ # Manage the collection of continuous profiling data provided by profiling
35
+ # agents running in the cloud or by an offline provider of profiling data.
36
+ #
37
+ # General guidelines:
38
+ # * Profiles for a single deployment must be created in ascending time order.
39
+ # * Profiles can be created in either online or offline mode, see below.
40
+ #
41
+ # To load this service and instantiate a REST client:
42
+ #
43
+ # require "google/cloud/profiler/v2/profiler_service/rest"
44
+ # client = ::Google::Cloud::Profiler::V2::ProfilerService::Rest::Client.new
45
+ #
46
+ module ProfilerService
47
+ # Client for the REST transport
48
+ module Rest
49
+ end
50
+ end
51
+ end
52
+ end
53
+ end
54
+ end
55
+
56
+ helper_path = ::File.join __dir__, "rest", "helpers.rb"
57
+ require "google/cloud/profiler/v2/profiler_service/rest/helpers" if ::File.file? helper_path
@@ -23,7 +23,9 @@ require "gapic/config/method"
23
23
  require "google/cloud/profiler/v2/version"
24
24
 
25
25
  require "google/cloud/profiler/v2/profiler_service/credentials"
26
+ require "google/cloud/profiler/v2/profiler_service/paths"
26
27
  require "google/cloud/profiler/v2/profiler_service/client"
28
+ require "google/cloud/profiler/v2/profiler_service/rest"
27
29
 
28
30
  module Google
29
31
  module Cloud
@@ -37,11 +39,16 @@ module Google
37
39
  # * Profiles for a single deployment must be created in ascending time order.
38
40
  # * Profiles can be created in either online or offline mode, see below.
39
41
  #
40
- # To load this service and instantiate a client:
42
+ # @example Load this service and instantiate a gRPC client
41
43
  #
42
44
  # require "google/cloud/profiler/v2/profiler_service"
43
45
  # client = ::Google::Cloud::Profiler::V2::ProfilerService::Client.new
44
46
  #
47
+ # @example Load this service and instantiate a REST client
48
+ #
49
+ # require "google/cloud/profiler/v2/profiler_service/rest"
50
+ # client = ::Google::Cloud::Profiler::V2::ProfilerService::Rest::Client.new
51
+ #
45
52
  module ProfilerService
46
53
  end
47
54
  end
@@ -0,0 +1,37 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2023 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
+ require "google/cloud/profiler/v2/profiler_service/rest"
20
+ require "google/cloud/profiler/v2/version"
21
+
22
+ module Google
23
+ module Cloud
24
+ module Profiler
25
+ ##
26
+ # To load just the REST part of this package, including all its services, and instantiate a REST client:
27
+ #
28
+ # @example
29
+ #
30
+ # require "google/cloud/profiler/v2/rest"
31
+ # client = ::Google::Cloud::Profiler::V2::ProfilerService::Rest::Client.new
32
+ #
33
+ module V2
34
+ end
35
+ end
36
+ end
37
+ end
@@ -21,7 +21,7 @@ module Google
21
21
  module Cloud
22
22
  module Profiler
23
23
  module V2
24
- VERSION = "0.3.0"
24
+ VERSION = "0.5.0"
25
25
  end
26
26
  end
27
27
  end
@@ -23,13 +23,18 @@ module Google
23
23
  module Cloud
24
24
  module Profiler
25
25
  ##
26
- # To load this package, including all its services, and instantiate a client:
26
+ # API client module.
27
27
  #
28
- # @example
28
+ # @example Load this package, including all its services, and instantiate a gRPC client
29
29
  #
30
30
  # require "google/cloud/profiler/v2"
31
31
  # client = ::Google::Cloud::Profiler::V2::ProfilerService::Client.new
32
32
  #
33
+ # @example Load this package, including all its services, and instantiate a REST client
34
+ #
35
+ # require "google/cloud/profiler/v2"
36
+ # client = ::Google::Cloud::Profiler::V2::ProfilerService::Rest::Client.new
37
+ #
33
38
  module V2
34
39
  end
35
40
  end
@@ -4,9 +4,11 @@
4
4
  require 'google/protobuf'
5
5
 
6
6
  require 'google/api/annotations_pb'
7
+ require 'google/api/client_pb'
8
+ require 'google/api/field_behavior_pb'
9
+ require 'google/api/resource_pb'
7
10
  require 'google/protobuf/duration_pb'
8
11
  require 'google/protobuf/field_mask_pb'
9
- require 'google/api/client_pb'
10
12
 
11
13
  Google::Protobuf::DescriptorPool.generated_pool.build do
12
14
  add_file("google/devtools/cloudprofiler/v2/profiler.proto", :syntax => :proto3) do
@@ -51,6 +51,7 @@ module Google
51
51
  # status. To a gRPC client, the extension will be return as a
52
52
  # binary-serialized proto in the trailing metadata item named
53
53
  # "google.rpc.retryinfo-bin".
54
+ #
54
55
  rpc :CreateProfile, ::Google::Cloud::Profiler::V2::CreateProfileRequest, ::Google::Cloud::Profiler::V2::Profile
55
56
  # CreateOfflineProfile creates a new profile resource in the offline mode.
56
57
  # The client provides the profile to create along with the profile bytes, the