Class: Google::Apis::ServicedirectoryV1::Endpoint

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/servicedirectory_v1/classes.rb,
lib/google/apis/servicedirectory_v1/representations.rb,
lib/google/apis/servicedirectory_v1/representations.rb

Overview

An individual endpoint that provides a service. The service must already exist to create an endpoint.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ Endpoint

Returns a new instance of Endpoint.



197
198
199
# File 'lib/google/apis/servicedirectory_v1/classes.rb', line 197

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#addressString

Optional. An IPv4 or IPv6 address. Service Directory rejects bad addresses like: * 8.8.8 * 8.8.8.8:53 * test:bad:address * [::1] * [::1]:8080 Limited to 45 characters. Corresponds to the JSON property address

Returns:

  • (String)


152
153
154
# File 'lib/google/apis/servicedirectory_v1/classes.rb', line 152

def address
  @address
end

#annotationsHash<String,String>

Optional. Annotations for the endpoint. This data can be consumed by service clients. Restrictions: * The entire annotations dictionary may contain up to 512 characters, spread accoss all key-value pairs. Annotations that go beyond this limit are rejected * Valid annotation keys have two segments: an optional prefix and name, separated by a slash (/). The name segment is required and must be 63 characters or less, beginning and ending with an alphanumeric character ([a-z0-9A-Z]) with dashes (-), underscores (_), dots (.), and alphanumerics between. The prefix is optional. If specified, the prefix must be a DNS subdomain: a series of DNS labels separated by dots (.), not longer than 253 characters in total, followed by a slash (/) Annotations that fails to meet these requirements are rejected. Note: This field is equivalent to the metadata field in the v1beta1 API. They have the same syntax and read/write to the same location in Service Directory. Corresponds to the JSON property annotations

Returns:

  • (Hash<String,String>)


169
170
171
# File 'lib/google/apis/servicedirectory_v1/classes.rb', line 169

def annotations
  @annotations
end

#nameString

Immutable. The resource name for the endpoint in the format projects/*/ locations/*/namespaces/*/services/*/endpoints/*. Corresponds to the JSON property name

Returns:

  • (String)


175
176
177
# File 'lib/google/apis/servicedirectory_v1/classes.rb', line 175

def name
  @name
end

#networkString

Immutable. The Google Compute Engine network (VPC) of the endpoint in the format projects//locations/global/networks/*. The project must be specified by project number (project id is rejected). Incorrectly formatted networks are rejected, we also check to make sure that you have the servicedirectory. networks.attach permission on the project specified. Corresponds to the JSON property network

Returns:

  • (String)


184
185
186
# File 'lib/google/apis/servicedirectory_v1/classes.rb', line 184

def network
  @network
end

#portFixnum

Optional. Service Directory rejects values outside of [0, 65535]. Corresponds to the JSON property port

Returns:

  • (Fixnum)


189
190
191
# File 'lib/google/apis/servicedirectory_v1/classes.rb', line 189

def port
  @port
end

#uidString

Output only. The globally unique identifier of the endpoint in the UUID4 format. Corresponds to the JSON property uid

Returns:

  • (String)


195
196
197
# File 'lib/google/apis/servicedirectory_v1/classes.rb', line 195

def uid
  @uid
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



202
203
204
205
206
207
208
209
# File 'lib/google/apis/servicedirectory_v1/classes.rb', line 202

def update!(**args)
  @address = args[:address] if args.key?(:address)
  @annotations = args[:annotations] if args.key?(:annotations)
  @name = args[:name] if args.key?(:name)
  @network = args[:network] if args.key?(:network)
  @port = args[:port] if args.key?(:port)
  @uid = args[:uid] if args.key?(:uid)
end