LookupServiceClient

LookupServiceClient

Service Directory API for looking up service data at runtime.

Constructor

new LookupServiceClient(optionsopt)

Construct an instance of LookupServiceClient.

Parameters:
Name Type Attributes Description
options object <optional>

The configuration object. See the subsequent parameters for more details.

Properties
Name Type Attributes Description
credentials object <optional>

Credentials object.

Properties
Name Type Attributes Description
client_email string <optional>
private_key string <optional>
email string <optional>

Account email address. Required when using a .pem or .p12 keyFilename.

keyFilename string <optional>

Full path to the a .json, .pem, or .p12 key downloaded from the Google Developers Console. If you provide a path to a JSON file, the projectId option below is not necessary. NOTE: .pem and .p12 require you to specify options.email as well.

port number <optional>

The port on which to connect to the remote host.

projectId string <optional>

The project ID from the Google Developer's Console, e.g. 'grape-spaceship-123'. We will also check the environment variable GCLOUD_PROJECT for your project ID. If your app is running in an environment which supports Application Default Credentials, your project ID will be detected automatically.

apiEndpoint string <optional>

The domain name of the API remote host.

Members

(static) apiEndpoint

The DNS address for this API service - same as servicePath(), exists for compatibility reasons.

(static) port

The port for this API service.

(static) scopes

The scopes needed to make gRPC calls for every method defined in this service.

(static) servicePath

The DNS address for this API service.

Methods

close()

Terminate the GRPC channel and close the client.

The client will no longer be usable and all future behavior is undefined.

endpointPath(project, location, namespace, service, endpoint) → {string}

Return a fully-qualified endpoint resource name string.

Parameters:
Name Type Description
project string
location string
namespace string
service string
endpoint string

getProjectId(callback)

Return the project ID used by this class.

Parameters:
Name Type Description
callback function

the callback to be called with the current project Id.

initialize() → {Promise}

Initialize the client. Performs asynchronous operations (such as authentication) and prepares the client. This function will be called automatically when any class method is called for the first time, but if you need to initialize it before calling an actual method, feel free to call initialize() directly.

You can await on this method if you want to make sure the client is initialized.

matchEndpointFromEndpointName(endpointName) → {string}

Parse the endpoint from Endpoint resource.

Parameters:
Name Type Description
endpointName string

A fully-qualified path representing Endpoint resource.

matchLocationFromEndpointName(endpointName) → {string}

Parse the location from Endpoint resource.

Parameters:
Name Type Description
endpointName string

A fully-qualified path representing Endpoint resource.

matchLocationFromNamespaceName(namespaceName) → {string}

Parse the location from Namespace resource.

Parameters:
Name Type Description
namespaceName string

A fully-qualified path representing Namespace resource.

matchLocationFromServiceName(serviceName) → {string}

Parse the location from Service resource.

Parameters:
Name Type Description
serviceName string

A fully-qualified path representing Service resource.

matchNamespaceFromEndpointName(endpointName) → {string}

Parse the namespace from Endpoint resource.

Parameters:
Name Type Description
endpointName string

A fully-qualified path representing Endpoint resource.

matchNamespaceFromNamespaceName(namespaceName) → {string}

Parse the namespace from Namespace resource.

Parameters:
Name Type Description
namespaceName string

A fully-qualified path representing Namespace resource.

matchNamespaceFromServiceName(serviceName) → {string}

Parse the namespace from Service resource.

Parameters:
Name Type Description
serviceName string

A fully-qualified path representing Service resource.

matchProjectFromEndpointName(endpointName) → {string}

Parse the project from Endpoint resource.

Parameters:
Name Type Description
endpointName string

A fully-qualified path representing Endpoint resource.

matchProjectFromNamespaceName(namespaceName) → {string}

Parse the project from Namespace resource.

Parameters:
Name Type Description
namespaceName string

A fully-qualified path representing Namespace resource.

matchProjectFromServiceName(serviceName) → {string}

Parse the project from Service resource.

Parameters:
Name Type Description
serviceName string

A fully-qualified path representing Service resource.

matchServiceFromEndpointName(endpointName) → {string}

Parse the service from Endpoint resource.

Parameters:
Name Type Description
endpointName string

A fully-qualified path representing Endpoint resource.

matchServiceFromServiceName(serviceName) → {string}

Parse the service from Service resource.

Parameters:
Name Type Description
serviceName string

A fully-qualified path representing Service resource.

namespacePath(project, location, namespace) → {string}

Return a fully-qualified namespace resource name string.

Parameters:
Name Type Description
project string
location string
namespace string

resolveService(request, optionsopt) → {Promise}

Returns a service and its associated endpoints. Resolving a service is not considered an active developer method.

Parameters:
Name Type Attributes Description
request Object

The request object that will be sent.

Properties
Name Type Attributes Description
name string

Required. The name of the service to resolve.

maxEndpoints number <optional>

Optional. The maximum number of endpoints to return. Defaults to 25. Maximum is 100. If a value less than one is specified, the Default is used. If a value greater than the Maximum is specified, the Maximum is used.

endpointFilter string <optional>

Optional. The filter applied to the endpoints of the resolved service.

General filter string syntax: () can be "name" or "metadata." for map field. can be "<, >, <=, >=, !=, =, :". Of which ":" means HAS and is roughly the same as "=". must be the same data type as the field. can be "AND, OR, NOT".

Examples of valid filters:

  • "metadata.owner" returns Endpoints that have a label with the key "owner", this is the same as "metadata:owner"
  • "metadata.protocol=gRPC" returns Endpoints that have key/value "protocol=gRPC"
  • "metadata.owner!=sd AND metadata.foo=bar" returns Endpoints that have "owner" field in metadata with a value that is not "sd" AND have the key/value foo=bar.
options object <optional>

Call options. See CallOptions for more details.

servicePath(project, location, namespace, service) → {string}

Return a fully-qualified service resource name string.

Parameters:
Name Type Description
project string
location string
namespace string
service string