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.



696
697
698
# File 'lib/google/apis/servicedirectory_v1/classes.rb', line 696

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


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

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



683
684
685
# File 'lib/google/apis/servicedirectory_v1/classes.rb', line 683

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)


689
690
691
# File 'lib/google/apis/servicedirectory_v1/classes.rb', line 689

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)


694
695
696
# File 'lib/google/apis/servicedirectory_v1/classes.rb', line 694

def uid
  @uid
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



701
702
703
704
705
706
# File 'lib/google/apis/servicedirectory_v1/classes.rb', line 701

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