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.



172
173
174
# File 'lib/google/apis/servicedirectory_v1/classes.rb', line 172

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)


127
128
129
# File 'lib/google/apis/servicedirectory_v1/classes.rb', line 127

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>)


144
145
146
# File 'lib/google/apis/servicedirectory_v1/classes.rb', line 144

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)


150
151
152
# File 'lib/google/apis/servicedirectory_v1/classes.rb', line 150

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)


159
160
161
# File 'lib/google/apis/servicedirectory_v1/classes.rb', line 159

def network
  @network
end

#portFixnum

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

Returns:

  • (Fixnum)


164
165
166
# File 'lib/google/apis/servicedirectory_v1/classes.rb', line 164

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)


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

def uid
  @uid
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



177
178
179
180
181
182
183
184
# File 'lib/google/apis/servicedirectory_v1/classes.rb', line 177

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