Class: Google::Apis::ServicedirectoryV1beta1::Service

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 service. A service contains a name and optional metadata. A service must exist before endpoints can be added to it.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ Service

Returns a new instance of Service.



634
635
636
# File 'lib/google/apis/servicedirectory_v1beta1/classes.rb', line 634

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

Instance Attribute Details

#endpointsArray<Google::Apis::ServicedirectoryV1beta1::Endpoint>

Output only. Endpoints associated with this service. Returned on LookupService. ResolveService. Control plane clients should use RegistrationService. ListEndpoints. Corresponds to the JSON property endpoints



606
607
608
# File 'lib/google/apis/servicedirectory_v1beta1/classes.rb', line 606

def endpoints
  @endpoints
end

#metadataHash<String,String>

Optional. Metadata for the service. This data can be consumed by service clients. Restrictions: * The entire metadata dictionary may contain up to 2000 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 * The (*.)google.com/ and (*.)googleapis. com/ prefixes are reserved for system metadata managed by Service Directory. If the user tries to write to these keyspaces, those entries are silently ignored by the system 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>)


626
627
628
# File 'lib/google/apis/servicedirectory_v1beta1/classes.rb', line 626

def 
  @metadata
end

#nameString

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

Returns:

  • (String)


632
633
634
# File 'lib/google/apis/servicedirectory_v1beta1/classes.rb', line 632

def name
  @name
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



639
640
641
642
643
# File 'lib/google/apis/servicedirectory_v1beta1/classes.rb', line 639

def update!(**args)
  @endpoints = args[:endpoints] if args.key?(:endpoints)
  @metadata = args[:metadata] if args.key?(:metadata)
  @name = args[:name] if args.key?(:name)
end