google-cloud-scheduler-v1beta1 0.5.0 → 0.6.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/AUTHENTICATION.md +1 -1
- data/README.md +1 -1
- data/lib/google/cloud/scheduler/v1beta1/cloud_scheduler/client.rb +72 -22
- data/lib/google/cloud/scheduler/v1beta1/cloudscheduler_pb.rb +4 -0
- data/lib/google/cloud/scheduler/v1beta1/cloudscheduler_services_pb.rb +24 -15
- data/lib/google/cloud/scheduler/v1beta1/job_pb.rb +2 -1
- data/lib/google/cloud/scheduler/v1beta1/target_pb.rb +0 -1
- data/lib/google/cloud/scheduler/v1beta1/version.rb +1 -1
- data/proto_docs/google/api/client.rb +318 -0
- data/proto_docs/google/api/launch_stage.rb +71 -0
- data/proto_docs/google/cloud/scheduler/v1beta1/cloudscheduler.rb +55 -17
- data/proto_docs/google/cloud/scheduler/v1beta1/job.rb +64 -34
- data/proto_docs/google/cloud/scheduler/v1beta1/target.rb +54 -34
- data/proto_docs/google/protobuf/empty.rb +0 -2
- data/proto_docs/google/rpc/status.rb +4 -2
- metadata +26 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 501a441332a8fc230e77a49ccf0868488717063acde66f7d7848de56868f7eca
|
4
|
+
data.tar.gz: 54a8b7266e244ed451174909e698c878f8704f44a0ae2d49d4e27c6aaaba1943
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f0da5e60e24246003452d31d98a32c2187d4919cde0d9cb8651d34da3dd471ba058c20da0db2eed50fbcbe956e36906850de609d5f02ab82161946bec232c0dd
|
7
|
+
data.tar.gz: 73eb8205d6147fa454621c6f41d683fc091dd7137a0d6e959f5b19f555e01e5052da2a111c10576828f66c00dd816e52032323a165bdf0a92a59175adb8f9f69
|
data/AUTHENTICATION.md
CHANGED
@@ -114,7 +114,7 @@ credentials are discovered.
|
|
114
114
|
To configure your system for this, simply:
|
115
115
|
|
116
116
|
1. [Download and install the Cloud SDK](https://cloud.google.com/sdk)
|
117
|
-
2. Authenticate using OAuth 2.0 `$ gcloud auth login`
|
117
|
+
2. Authenticate using OAuth 2.0 `$ gcloud auth application-default login`
|
118
118
|
3. Write code as if already authenticated.
|
119
119
|
|
120
120
|
**NOTE:** This is _not_ recommended for running in production. The Cloud SDK
|
data/README.md
CHANGED
@@ -46,7 +46,7 @@ for general usage information.
|
|
46
46
|
## Enabling Logging
|
47
47
|
|
48
48
|
To enable logging for this library, set the logger for the underlying [gRPC](https://github.com/grpc/grpc/tree/master/src/ruby) library.
|
49
|
-
The logger that you set may be a Ruby stdlib [`Logger`](https://ruby-doc.org/
|
49
|
+
The logger that you set may be a Ruby stdlib [`Logger`](https://ruby-doc.org/current/stdlibs/logger/Logger.html) as shown below,
|
50
50
|
or a [`Google::Cloud::Logging::Logger`](https://googleapis.dev/ruby/google-cloud-logging/latest)
|
51
51
|
that will write logs to [Cloud Logging](https://cloud.google.com/logging/). See [grpc/logconfig.rb](https://github.com/grpc/grpc/blob/master/src/ruby/lib/grpc/logconfig.rb)
|
52
52
|
and the gRPC [spec_helper.rb](https://github.com/grpc/grpc/blob/master/src/ruby/spec/spec_helper.rb) for additional information.
|
@@ -18,6 +18,7 @@
|
|
18
18
|
|
19
19
|
require "google/cloud/errors"
|
20
20
|
require "google/cloud/scheduler/v1beta1/cloudscheduler_pb"
|
21
|
+
require "google/cloud/location"
|
21
22
|
|
22
23
|
module Google
|
23
24
|
module Cloud
|
@@ -165,6 +166,12 @@ module Google
|
|
165
166
|
@quota_project_id = @config.quota_project
|
166
167
|
@quota_project_id ||= credentials.quota_project_id if credentials.respond_to? :quota_project_id
|
167
168
|
|
169
|
+
@location_client = Google::Cloud::Location::Locations::Client.new do |config|
|
170
|
+
config.credentials = credentials
|
171
|
+
config.quota_project = @quota_project_id
|
172
|
+
config.endpoint = @config.endpoint
|
173
|
+
end
|
174
|
+
|
168
175
|
@cloud_scheduler_stub = ::Gapic::ServiceStub.new(
|
169
176
|
::Google::Cloud::Scheduler::V1beta1::CloudScheduler::Stub,
|
170
177
|
credentials: credentials,
|
@@ -174,6 +181,13 @@ module Google
|
|
174
181
|
)
|
175
182
|
end
|
176
183
|
|
184
|
+
##
|
185
|
+
# Get the associated client for mix-in of the Locations.
|
186
|
+
#
|
187
|
+
# @return [Google::Cloud::Location::Locations::Client]
|
188
|
+
#
|
189
|
+
attr_reader :location_client
|
190
|
+
|
177
191
|
# Service calls
|
178
192
|
|
179
193
|
##
|
@@ -189,7 +203,7 @@ module Google
|
|
189
203
|
# @param options [::Gapic::CallOptions, ::Hash]
|
190
204
|
# Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
|
191
205
|
#
|
192
|
-
# @overload list_jobs(parent: nil, page_size: nil, page_token: nil)
|
206
|
+
# @overload list_jobs(parent: nil, filter: nil, page_size: nil, page_token: nil, legacy_app_engine_cron: nil)
|
193
207
|
# Pass arguments to `list_jobs` via keyword arguments. Note that at
|
194
208
|
# least one keyword argument is required. To specify no parameters, or to keep all
|
195
209
|
# the default parameter values, pass an empty Hash as a request object (see above).
|
@@ -197,6 +211,15 @@ module Google
|
|
197
211
|
# @param parent [::String]
|
198
212
|
# Required. The location name. For example:
|
199
213
|
# `projects/PROJECT_ID/locations/LOCATION_ID`.
|
214
|
+
# @param filter [::String]
|
215
|
+
# `filter` can be used to specify a subset of jobs.
|
216
|
+
#
|
217
|
+
# If `filter` equals `target_config="HttpConfig"`, then the http
|
218
|
+
# target jobs are retrieved. If `filter` equals
|
219
|
+
# `target_config="PubSubConfig"`, then the Pub/Sub target jobs are
|
220
|
+
# retrieved. If `filter` equals `labels.foo=value1
|
221
|
+
# labels.foo=value2` then only jobs which are labeled with
|
222
|
+
# foo=value1 AND foo=value2 will be returned.
|
200
223
|
# @param page_size [::Integer]
|
201
224
|
# Requested page size.
|
202
225
|
#
|
@@ -208,10 +231,17 @@ module Google
|
|
208
231
|
# A token identifying a page of results the server will return. To
|
209
232
|
# request the first page results, page_token must be empty. To
|
210
233
|
# request the next page of results, page_token must be the value of
|
211
|
-
# {::Google::Cloud::Scheduler::V1beta1::ListJobsResponse#next_page_token next_page_token}
|
212
|
-
# the previous call to
|
213
|
-
#
|
214
|
-
#
|
234
|
+
# {::Google::Cloud::Scheduler::V1beta1::ListJobsResponse#next_page_token next_page_token}
|
235
|
+
# returned from the previous call to
|
236
|
+
# {::Google::Cloud::Scheduler::V1beta1::CloudScheduler::Client#list_jobs ListJobs}. It is
|
237
|
+
# an error to switch the value of
|
238
|
+
# {::Google::Cloud::Scheduler::V1beta1::ListJobsRequest#filter filter} or
|
239
|
+
# [order_by][google.cloud.scheduler.v1beta1.ListJobsRequest.order_by] while
|
240
|
+
# iterating through pages.
|
241
|
+
# @param legacy_app_engine_cron [::Boolean]
|
242
|
+
# This field is used to manage the legacy App Engine Cron jobs using the
|
243
|
+
# Cloud Scheduler API. If the field is set to true, the jobs in the __cron
|
244
|
+
# queue will be listed instead.
|
215
245
|
#
|
216
246
|
# @yield [response, operation] Access the result along with the RPC operation
|
217
247
|
# @yieldparam response [::Gapic::PagedEnumerable<::Google::Cloud::Scheduler::V1beta1::Job>]
|
@@ -393,7 +423,8 @@ module Google
|
|
393
423
|
# `projects/PROJECT_ID/locations/LOCATION_ID`.
|
394
424
|
# @param job [::Google::Cloud::Scheduler::V1beta1::Job, ::Hash]
|
395
425
|
# Required. The job to add. The user can optionally specify a name for the
|
396
|
-
# job in {::Google::Cloud::Scheduler::V1beta1::Job#name name}.
|
426
|
+
# job in {::Google::Cloud::Scheduler::V1beta1::Job#name name}.
|
427
|
+
# {::Google::Cloud::Scheduler::V1beta1::Job#name name} cannot be the same as an
|
397
428
|
# existing job. If a name is not specified then the system will
|
398
429
|
# generate a random unique name that will be returned
|
399
430
|
# ({::Google::Cloud::Scheduler::V1beta1::Job#name name}) in the response.
|
@@ -465,13 +496,14 @@ module Google
|
|
465
496
|
##
|
466
497
|
# Updates a job.
|
467
498
|
#
|
468
|
-
# If successful, the updated {::Google::Cloud::Scheduler::V1beta1::Job Job} is
|
469
|
-
# not exist, `NOT_FOUND` is returned.
|
499
|
+
# If successful, the updated {::Google::Cloud::Scheduler::V1beta1::Job Job} is
|
500
|
+
# returned. If the job does not exist, `NOT_FOUND` is returned.
|
470
501
|
#
|
471
502
|
# If UpdateJob does not successfully return, it is possible for the
|
472
|
-
# job to be in an
|
473
|
-
#
|
474
|
-
#
|
503
|
+
# job to be in an
|
504
|
+
# {::Google::Cloud::Scheduler::V1beta1::Job::State::UPDATE_FAILED Job.State.UPDATE_FAILED}
|
505
|
+
# state. A job in this state may not be executed. If this happens, retry the
|
506
|
+
# UpdateJob request until a successful response is received.
|
475
507
|
#
|
476
508
|
# @overload update_job(request, options = nil)
|
477
509
|
# Pass arguments to `update_job` via a request object, either of type
|
@@ -489,7 +521,8 @@ module Google
|
|
489
521
|
# the default parameter values, pass an empty Hash as a request object (see above).
|
490
522
|
#
|
491
523
|
# @param job [::Google::Cloud::Scheduler::V1beta1::Job, ::Hash]
|
492
|
-
# Required. The new job properties.
|
524
|
+
# Required. The new job properties.
|
525
|
+
# {::Google::Cloud::Scheduler::V1beta1::Job#name name} must be specified.
|
493
526
|
#
|
494
527
|
# Output only fields cannot be modified using UpdateJob.
|
495
528
|
# Any value specified for an output only field will be ignored.
|
@@ -573,7 +606,7 @@ module Google
|
|
573
606
|
# @param options [::Gapic::CallOptions, ::Hash]
|
574
607
|
# Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
|
575
608
|
#
|
576
|
-
# @overload delete_job(name: nil)
|
609
|
+
# @overload delete_job(name: nil, legacy_app_engine_cron: nil)
|
577
610
|
# Pass arguments to `delete_job` via keyword arguments. Note that at
|
578
611
|
# least one keyword argument is required. To specify no parameters, or to keep all
|
579
612
|
# the default parameter values, pass an empty Hash as a request object (see above).
|
@@ -581,6 +614,10 @@ module Google
|
|
581
614
|
# @param name [::String]
|
582
615
|
# Required. The job name. For example:
|
583
616
|
# `projects/PROJECT_ID/locations/LOCATION_ID/jobs/JOB_ID`.
|
617
|
+
# @param legacy_app_engine_cron [::Boolean]
|
618
|
+
# This field is used to manage the legacy App Engine Cron jobs using the
|
619
|
+
# Cloud Scheduler API. If the field is set to true, the job in the __cron
|
620
|
+
# queue with the corresponding name will be deleted instead.
|
584
621
|
#
|
585
622
|
# @yield [response, operation] Access the result along with the RPC operation
|
586
623
|
# @yieldparam response [::Google::Protobuf::Empty]
|
@@ -650,10 +687,14 @@ module Google
|
|
650
687
|
# Pauses a job.
|
651
688
|
#
|
652
689
|
# If a job is paused then the system will stop executing the job
|
653
|
-
# until it is re-enabled via
|
654
|
-
#
|
655
|
-
#
|
656
|
-
#
|
690
|
+
# until it is re-enabled via
|
691
|
+
# {::Google::Cloud::Scheduler::V1beta1::CloudScheduler::Client#resume_job ResumeJob}. The
|
692
|
+
# state of the job is stored in
|
693
|
+
# {::Google::Cloud::Scheduler::V1beta1::Job#state state}; if paused it will be set
|
694
|
+
# to {::Google::Cloud::Scheduler::V1beta1::Job::State::PAUSED Job.State.PAUSED}. A
|
695
|
+
# job must be in
|
696
|
+
# {::Google::Cloud::Scheduler::V1beta1::Job::State::ENABLED Job.State.ENABLED} to be
|
697
|
+
# paused.
|
657
698
|
#
|
658
699
|
# @overload pause_job(request, options = nil)
|
659
700
|
# Pass arguments to `pause_job` via a request object, either of type
|
@@ -741,10 +782,15 @@ module Google
|
|
741
782
|
##
|
742
783
|
# Resume a job.
|
743
784
|
#
|
744
|
-
# This method reenables a job after it has been
|
745
|
-
#
|
746
|
-
#
|
747
|
-
# {::Google::Cloud::Scheduler::V1beta1::Job
|
785
|
+
# This method reenables a job after it has been
|
786
|
+
# {::Google::Cloud::Scheduler::V1beta1::Job::State::PAUSED Job.State.PAUSED}. The
|
787
|
+
# state of a job is stored in
|
788
|
+
# {::Google::Cloud::Scheduler::V1beta1::Job#state Job.state}; after calling this
|
789
|
+
# method it will be set to
|
790
|
+
# {::Google::Cloud::Scheduler::V1beta1::Job::State::ENABLED Job.State.ENABLED}. A
|
791
|
+
# job must be in
|
792
|
+
# {::Google::Cloud::Scheduler::V1beta1::Job::State::PAUSED Job.State.PAUSED} to be
|
793
|
+
# resumed.
|
748
794
|
#
|
749
795
|
# @overload resume_job(request, options = nil)
|
750
796
|
# Pass arguments to `resume_job` via a request object, either of type
|
@@ -845,7 +891,7 @@ module Google
|
|
845
891
|
# @param options [::Gapic::CallOptions, ::Hash]
|
846
892
|
# Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
|
847
893
|
#
|
848
|
-
# @overload run_job(name: nil)
|
894
|
+
# @overload run_job(name: nil, legacy_app_engine_cron: nil)
|
849
895
|
# Pass arguments to `run_job` via keyword arguments. Note that at
|
850
896
|
# least one keyword argument is required. To specify no parameters, or to keep all
|
851
897
|
# the default parameter values, pass an empty Hash as a request object (see above).
|
@@ -853,6 +899,10 @@ module Google
|
|
853
899
|
# @param name [::String]
|
854
900
|
# Required. The job name. For example:
|
855
901
|
# `projects/PROJECT_ID/locations/LOCATION_ID/jobs/JOB_ID`.
|
902
|
+
# @param legacy_app_engine_cron [::Boolean]
|
903
|
+
# This field is used to manage the legacy App Engine Cron jobs using the
|
904
|
+
# Cloud Scheduler API. If the field is set to true, the job in the __cron
|
905
|
+
# queue with the corresponding name will be forced to run instead.
|
856
906
|
#
|
857
907
|
# @yield [response, operation] Access the result along with the RPC operation
|
858
908
|
# @yieldparam response [::Google::Cloud::Scheduler::V1beta1::Job]
|
@@ -15,8 +15,10 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
15
15
|
add_file("google/cloud/scheduler/v1beta1/cloudscheduler.proto", :syntax => :proto3) do
|
16
16
|
add_message "google.cloud.scheduler.v1beta1.ListJobsRequest" do
|
17
17
|
optional :parent, :string, 1
|
18
|
+
optional :filter, :string, 4
|
18
19
|
optional :page_size, :int32, 5
|
19
20
|
optional :page_token, :string, 6
|
21
|
+
optional :legacy_app_engine_cron, :bool, 7
|
20
22
|
end
|
21
23
|
add_message "google.cloud.scheduler.v1beta1.ListJobsResponse" do
|
22
24
|
repeated :jobs, :message, 1, "google.cloud.scheduler.v1beta1.Job"
|
@@ -35,6 +37,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
35
37
|
end
|
36
38
|
add_message "google.cloud.scheduler.v1beta1.DeleteJobRequest" do
|
37
39
|
optional :name, :string, 1
|
40
|
+
optional :legacy_app_engine_cron, :bool, 2
|
38
41
|
end
|
39
42
|
add_message "google.cloud.scheduler.v1beta1.PauseJobRequest" do
|
40
43
|
optional :name, :string, 1
|
@@ -44,6 +47,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
44
47
|
end
|
45
48
|
add_message "google.cloud.scheduler.v1beta1.RunJobRequest" do
|
46
49
|
optional :name, :string, 1
|
50
|
+
optional :legacy_app_engine_cron, :bool, 2
|
47
51
|
end
|
48
52
|
end
|
49
53
|
end
|
@@ -1,7 +1,7 @@
|
|
1
1
|
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
2
2
|
# Source: google/cloud/scheduler/v1beta1/cloudscheduler.proto for package 'google.cloud.scheduler.v1beta1'
|
3
3
|
# Original file comments:
|
4
|
-
# Copyright
|
4
|
+
# Copyright 2022 Google LLC
|
5
5
|
#
|
6
6
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
7
7
|
# you may not use this file except in compliance with the License.
|
@@ -15,7 +15,6 @@
|
|
15
15
|
# See the License for the specific language governing permissions and
|
16
16
|
# limitations under the License.
|
17
17
|
#
|
18
|
-
#
|
19
18
|
|
20
19
|
require 'grpc'
|
21
20
|
require 'google/cloud/scheduler/v1beta1/cloudscheduler_pb'
|
@@ -43,30 +42,40 @@ module Google
|
|
43
42
|
rpc :CreateJob, ::Google::Cloud::Scheduler::V1beta1::CreateJobRequest, ::Google::Cloud::Scheduler::V1beta1::Job
|
44
43
|
# Updates a job.
|
45
44
|
#
|
46
|
-
# If successful, the updated [Job][google.cloud.scheduler.v1beta1.Job] is
|
47
|
-
# not exist, `NOT_FOUND` is returned.
|
45
|
+
# If successful, the updated [Job][google.cloud.scheduler.v1beta1.Job] is
|
46
|
+
# returned. If the job does not exist, `NOT_FOUND` is returned.
|
48
47
|
#
|
49
48
|
# If UpdateJob does not successfully return, it is possible for the
|
50
|
-
# job to be in an
|
51
|
-
#
|
52
|
-
#
|
49
|
+
# job to be in an
|
50
|
+
# [Job.State.UPDATE_FAILED][google.cloud.scheduler.v1beta1.Job.State.UPDATE_FAILED]
|
51
|
+
# state. A job in this state may not be executed. If this happens, retry the
|
52
|
+
# UpdateJob request until a successful response is received.
|
53
53
|
rpc :UpdateJob, ::Google::Cloud::Scheduler::V1beta1::UpdateJobRequest, ::Google::Cloud::Scheduler::V1beta1::Job
|
54
54
|
# Deletes a job.
|
55
55
|
rpc :DeleteJob, ::Google::Cloud::Scheduler::V1beta1::DeleteJobRequest, ::Google::Protobuf::Empty
|
56
56
|
# Pauses a job.
|
57
57
|
#
|
58
58
|
# If a job is paused then the system will stop executing the job
|
59
|
-
# until it is re-enabled via
|
60
|
-
#
|
61
|
-
#
|
62
|
-
#
|
59
|
+
# until it is re-enabled via
|
60
|
+
# [ResumeJob][google.cloud.scheduler.v1beta1.CloudScheduler.ResumeJob]. The
|
61
|
+
# state of the job is stored in
|
62
|
+
# [state][google.cloud.scheduler.v1beta1.Job.state]; if paused it will be set
|
63
|
+
# to [Job.State.PAUSED][google.cloud.scheduler.v1beta1.Job.State.PAUSED]. A
|
64
|
+
# job must be in
|
65
|
+
# [Job.State.ENABLED][google.cloud.scheduler.v1beta1.Job.State.ENABLED] to be
|
66
|
+
# paused.
|
63
67
|
rpc :PauseJob, ::Google::Cloud::Scheduler::V1beta1::PauseJobRequest, ::Google::Cloud::Scheduler::V1beta1::Job
|
64
68
|
# Resume a job.
|
65
69
|
#
|
66
|
-
# This method reenables a job after it has been
|
67
|
-
#
|
68
|
-
#
|
69
|
-
# [Job.
|
70
|
+
# This method reenables a job after it has been
|
71
|
+
# [Job.State.PAUSED][google.cloud.scheduler.v1beta1.Job.State.PAUSED]. The
|
72
|
+
# state of a job is stored in
|
73
|
+
# [Job.state][google.cloud.scheduler.v1beta1.Job.state]; after calling this
|
74
|
+
# method it will be set to
|
75
|
+
# [Job.State.ENABLED][google.cloud.scheduler.v1beta1.Job.State.ENABLED]. A
|
76
|
+
# job must be in
|
77
|
+
# [Job.State.PAUSED][google.cloud.scheduler.v1beta1.Job.State.PAUSED] to be
|
78
|
+
# resumed.
|
70
79
|
rpc :ResumeJob, ::Google::Cloud::Scheduler::V1beta1::ResumeJobRequest, ::Google::Cloud::Scheduler::V1beta1::Job
|
71
80
|
# Forces a job to run now.
|
72
81
|
#
|
@@ -3,12 +3,12 @@
|
|
3
3
|
|
4
4
|
require 'google/protobuf'
|
5
5
|
|
6
|
+
require 'google/api/field_behavior_pb'
|
6
7
|
require 'google/api/resource_pb'
|
7
8
|
require 'google/cloud/scheduler/v1beta1/target_pb'
|
8
9
|
require 'google/protobuf/duration_pb'
|
9
10
|
require 'google/protobuf/timestamp_pb'
|
10
11
|
require 'google/rpc/status_pb'
|
11
|
-
require 'google/api/annotations_pb'
|
12
12
|
|
13
13
|
Google::Protobuf::DescriptorPool.generated_pool.build do
|
14
14
|
add_file("google/cloud/scheduler/v1beta1/job.proto", :syntax => :proto3) do
|
@@ -24,6 +24,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
24
24
|
optional :last_attempt_time, :message, 18, "google.protobuf.Timestamp"
|
25
25
|
optional :retry_config, :message, 19, "google.cloud.scheduler.v1beta1.RetryConfig"
|
26
26
|
optional :attempt_deadline, :message, 22, "google.protobuf.Duration"
|
27
|
+
optional :legacy_app_engine_cron, :bool, 23
|
27
28
|
oneof :target do
|
28
29
|
optional :pubsub_target, :message, 4, "google.cloud.scheduler.v1beta1.PubsubTarget"
|
29
30
|
optional :app_engine_http_target, :message, 5, "google.cloud.scheduler.v1beta1.AppEngineHttpTarget"
|