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.



172
173
174
# File 'lib/google/apis/servicedirectory_v1beta1/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)


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

def address
  @address
end

#create_timeString

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

Returns:

  • (String)


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

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


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

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)


151
152
153
# File 'lib/google/apis/servicedirectory_v1beta1/classes.rb', line 151

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)


160
161
162
# File 'lib/google/apis/servicedirectory_v1beta1/classes.rb', line 160

def network
  @network
end

#portFixnum

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

Returns:

  • (Fixnum)


165
166
167
# File 'lib/google/apis/servicedirectory_v1beta1/classes.rb', line 165

def port
  @port
end

#update_timeString

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

Returns:

  • (String)


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

def update_time
  @update_time
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



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

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