Class: Google::Apis::ServicedirectoryV1::Service

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



671
672
673
# File 'lib/google/apis/servicedirectory_v1/classes.rb', line 671

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

Instance Attribute Details

#annotationsHash<String,String>

Optional. Annotations for the service. This data can be consumed by service clients. Restrictions: * The entire annotations dictionary may contain up to 2000 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>)


651
652
653
# File 'lib/google/apis/servicedirectory_v1/classes.rb', line 651

def annotations
  @annotations
end

#endpointsArray<Google::Apis::ServicedirectoryV1::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



658
659
660
# File 'lib/google/apis/servicedirectory_v1/classes.rb', line 658

def endpoints
  @endpoints
end

#nameString

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

Returns:

  • (String)


664
665
666
# File 'lib/google/apis/servicedirectory_v1/classes.rb', line 664

def name
  @name
end

#uidString

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

Returns:

  • (String)


669
670
671
# File 'lib/google/apis/servicedirectory_v1/classes.rb', line 669

def uid
  @uid
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



676
677
678
679
680
681
# File 'lib/google/apis/servicedirectory_v1/classes.rb', line 676

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