Class: Google::Apis::ServicedirectoryV1beta1::Endpoint

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/servicedirectory_v1beta1/classes.rb,
lib/google/apis/servicedirectory_v1beta1/representations.rb,
lib/google/apis/servicedirectory_v1beta1/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.



171
172
173
# File 'lib/google/apis/servicedirectory_v1beta1/classes.rb', line 171

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)


122
123
124
# File 'lib/google/apis/servicedirectory_v1beta1/classes.rb', line 122

def address
  @address
end

#create_timeString

Output only. The timestamp when the endpoint was created. Corresponds to the JSON property createTime

Returns:

  • (String)


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

def create_time
  @create_time
end

#metadataHash<String,String>

Optional. Metadata for the endpoint. This data can be consumed by service clients. Restrictions: * The entire metadata dictionary may contain up to 512 characters, spread accoss all key-value pairs. Metadata that goes beyond this limit are rejected * Valid metadata 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 (/). Metadata that fails to meet these requirements are rejected Note: This field is equivalent to the annotations field in the v1 API. They have the same syntax and read/write to the same location in Service Directory. Corresponds to the JSON property metadata

Returns:

  • (Hash<String,String>)


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

def 
  @metadata
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_v1beta1/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, but no other validation is performed on this field (ex. network or project existence, reachability, or permissions). Corresponds to the JSON property network

Returns:

  • (String)


159
160
161
# File 'lib/google/apis/servicedirectory_v1beta1/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_v1beta1/classes.rb', line 164

def port
  @port
end

#update_timeString

Output only. The timestamp when the endpoint was last updated. Corresponds to the JSON property updateTime

Returns:

  • (String)


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

def update_time
  @update_time
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



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

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