Class: Google::Apis::ComputeAlpha::TargetGrpcProxy
- Inherits:
-
Object
- Object
- Google::Apis::ComputeAlpha::TargetGrpcProxy
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/compute_alpha/classes.rb,
lib/google/apis/compute_alpha/representations.rb,
lib/google/apis/compute_alpha/representations.rb
Overview
Represents a Target gRPC Proxy resource. A target gRPC proxy is a component of load balancers intended for load balancing gRPC traffic. Only global forwarding rules with load balancing scheme INTERNAL_SELF_MANAGED can reference a target gRPC proxy. The target gRPC Proxy references a URL map that specifies how traffic is routed to gRPC backend services.
Instance Attribute Summary collapse
-
#creation_timestamp ⇒ String
Output only.
-
#description ⇒ String
An optional description of this resource.
-
#fingerprint ⇒ String
Fingerprint of this resource.
-
#id ⇒ Fixnum
Output only.
-
#kind ⇒ String
Output only.
-
#name ⇒ String
Name of the resource.
-
#self_link ⇒ String
Output only.
-
#self_link_with_id ⇒ String
Output only.
-
#url_map ⇒ String
URL to the UrlMap resource that defines the mapping from URL to the BackendService.
-
#validate_for_proxyless ⇒ Boolean
(also: #validate_for_proxyless?)
If true, indicates that the BackendServices referenced by the urlMap may be accessed by gRPC applications without using a sidecar proxy.
Instance Method Summary collapse
-
#initialize(**args) ⇒ TargetGrpcProxy
constructor
A new instance of TargetGrpcProxy.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ TargetGrpcProxy
Returns a new instance of TargetGrpcProxy.
74044 74045 74046 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 74044 def initialize(**args) update!(**args) end |
Instance Attribute Details
#creation_timestamp ⇒ String
Output only. [Output Only] Creation timestamp inRFC3339
text format.
Corresponds to the JSON property creationTimestamp
73968 73969 73970 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 73968 def @creation_timestamp end |
#description ⇒ String
An optional description of this resource. Provide this property when you
create the resource.
Corresponds to the JSON property description
73974 73975 73976 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 73974 def description @description end |
#fingerprint ⇒ String
Fingerprint of this resource. A hash of the contents stored in this object.
This field is used in optimistic locking. This field will be ignored when
inserting a TargetGrpcProxy. An up-to-date fingerprint must
be provided in order to patch/update the TargetGrpcProxy; otherwise, the
request will fail with error 412 conditionNotMet. To see the
latest fingerprint, make a get() request to retrieve the
TargetGrpcProxy.
Corresponds to the JSON property fingerprint
NOTE: Values are automatically base64 encoded/decoded in the client library.
73986 73987 73988 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 73986 def fingerprint @fingerprint end |
#id ⇒ Fixnum
Output only. [Output Only] The unique identifier for the resource type. The
server
generates this identifier.
Corresponds to the JSON property id
73993 73994 73995 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 73993 def id @id end |
#kind ⇒ String
Output only. [Output Only] Type of the resource. Alwayscompute#targetGrpcProxy
for target grpc proxies.
Corresponds to the JSON property kind
73999 74000 74001 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 73999 def kind @kind end |
#name ⇒ String
Name of the resource. Provided by the client when the resource is created.
The name must be 1-63 characters long, and comply withRFC1035.
Specifically, the name must be 1-63 characters long and match the regular
expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first
character must be a lowercase letter, and all following characters must
be a dash, lowercase letter, or digit, except the last character, which
cannot be a dash.
Corresponds to the JSON property name
74010 74011 74012 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 74010 def name @name end |
#self_link ⇒ String
Output only. [Output Only] Server-defined URL for the resource.
Corresponds to the JSON property selfLink
74015 74016 74017 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 74015 def self_link @self_link end |
#self_link_with_id ⇒ String
Output only. [Output Only] Server-defined URL with id for the resource.
Corresponds to the JSON property selfLinkWithId
74020 74021 74022 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 74020 def self_link_with_id @self_link_with_id end |
#url_map ⇒ String
URL to the UrlMap resource that defines the mapping from URL to the
BackendService. The protocol field in the BackendService must be set to
GRPC.
Corresponds to the JSON property urlMap
74027 74028 74029 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 74027 def url_map @url_map end |
#validate_for_proxyless ⇒ Boolean Also known as: validate_for_proxyless?
If true, indicates that the BackendServices referenced by the urlMap may be
accessed by gRPC applications without using a sidecar proxy. This will
enable configuration checks on urlMap and its referenced BackendServices to
not allow unsupported features. A gRPC application must use
"xds:///" scheme in the target URI of the service it is
connecting to.
If false, indicates that the BackendServices referenced by the urlMap will
be accessed by gRPC applications via a sidecar proxy. In this case, a gRPC
application must not use "xds:///" scheme in the target URI of
the service it is connecting to
Corresponds to the JSON property validateForProxyless
74041 74042 74043 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 74041 def validate_for_proxyless @validate_for_proxyless end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
74049 74050 74051 74052 74053 74054 74055 74056 74057 74058 74059 74060 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 74049 def update!(**args) @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) @description = args[:description] if args.key?(:description) @fingerprint = args[:fingerprint] if args.key?(:fingerprint) @id = args[:id] if args.key?(:id) @kind = args[:kind] if args.key?(:kind) @name = args[:name] if args.key?(:name) @self_link = args[:self_link] if args.key?(:self_link) @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id) @url_map = args[:url_map] if args.key?(:url_map) @validate_for_proxyless = args[:validate_for_proxyless] if args.key?(:validate_for_proxyless) end |