Class LanguageServiceClient (2.3.0)

public class LanguageServiceClient implements BackgroundResource

Service Description: Provides text analysis operations such as sentiment analysis and entity recognition.

This class provides the ability to make remote calls to the backing service through method calls that map to API methods. Sample code to get started:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (LanguageServiceClient languageServiceClient = LanguageServiceClient.create()) {
   Document document = Document.newBuilder().build();
   AnalyzeSentimentResponse response = languageServiceClient.analyzeSentiment(document);
 }
 

Note: close() needs to be called on the LanguageServiceClient object to clean up resources such as threads. In the example above, try-with-resources is used, which automatically calls close().

The surface of this class includes several types of Java methods for each of the API's methods:

  1. A "flattened" method. With this type of method, the fields of the request type have been converted into function parameters. It may be the case that not all fields are available as parameters, and not every API method will have a flattened method entry point.
  2. A "request object" method. This type of method only takes one parameter, a request object, which must be constructed before the call. Not every API method will have a request object method.
  3. A "callable" method. This type of method takes no parameters and returns an immutable API callable object, which can be used to initiate calls to the service.

See the individual methods for example code.

Many parameters require resource names to be formatted in a particular way. To assist with these names, this class includes a format method for each type of name, and additionally a parse method to extract the individual identifiers contained within names that are returned.

This class can be customized by passing in a custom instance of LanguageServiceSettings to create(). For example:

To customize credentials:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 LanguageServiceSettings languageServiceSettings =
     LanguageServiceSettings.newBuilder()
         .setCredentialsProvider(FixedCredentialsProvider.create(myCredentials))
         .build();
 LanguageServiceClient languageServiceClient =
     LanguageServiceClient.create(languageServiceSettings);
 

To customize the endpoint:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 LanguageServiceSettings languageServiceSettings =
     LanguageServiceSettings.newBuilder().setEndpoint(myEndpoint).build();
 LanguageServiceClient languageServiceClient =
     LanguageServiceClient.create(languageServiceSettings);
 

To use REST (HTTP1.1/JSON) transport (instead of gRPC) for sending and receiving requests over the wire:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 LanguageServiceSettings languageServiceSettings =
     LanguageServiceSettings.newBuilder()
         .setTransportChannelProvider(
             LanguageServiceSettings.defaultHttpJsonTransportProviderBuilder().build())
         .build();
 LanguageServiceClient languageServiceClient =
     LanguageServiceClient.create(languageServiceSettings);
 

Please refer to the GitHub repository's samples for more quickstart code snippets.

Inheritance

java.lang.Object > LanguageServiceClient

Implements

BackgroundResource

Static Methods

create()

public static final LanguageServiceClient create()

Constructs an instance of LanguageServiceClient with default settings.

Returns
TypeDescription
LanguageServiceClient
Exceptions
TypeDescription
IOException

create(LanguageServiceSettings settings)

public static final LanguageServiceClient create(LanguageServiceSettings settings)

Constructs an instance of LanguageServiceClient, using the given settings. The channels are created based on the settings passed in, or defaults for any settings that are not set.

Parameter
NameDescription
settingsLanguageServiceSettings
Returns
TypeDescription
LanguageServiceClient
Exceptions
TypeDescription
IOException

create(LanguageServiceStub stub)

public static final LanguageServiceClient create(LanguageServiceStub stub)

Constructs an instance of LanguageServiceClient, using the given stub for making calls. This is for advanced usage - prefer using create(LanguageServiceSettings).

Parameter
NameDescription
stubLanguageServiceStub
Returns
TypeDescription
LanguageServiceClient

Constructors

LanguageServiceClient(LanguageServiceSettings settings)

protected LanguageServiceClient(LanguageServiceSettings settings)

Constructs an instance of LanguageServiceClient, using the given settings. This is protected so that it is easy to make a subclass, but otherwise, the static factory methods should be preferred.

Parameter
NameDescription
settingsLanguageServiceSettings

LanguageServiceClient(LanguageServiceStub stub)

protected LanguageServiceClient(LanguageServiceStub stub)
Parameter
NameDescription
stubLanguageServiceStub

Methods

analyzeEntities(AnalyzeEntitiesRequest request)

public final AnalyzeEntitiesResponse analyzeEntities(AnalyzeEntitiesRequest request)

Finds named entities (currently proper names and common nouns) in the text along with entity types, salience, mentions for each entity, and other properties.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (LanguageServiceClient languageServiceClient = LanguageServiceClient.create()) {
   AnalyzeEntitiesRequest request =
       AnalyzeEntitiesRequest.newBuilder()
           .setDocument(Document.newBuilder().build())
           .setEncodingType(EncodingType.forNumber(0))
           .build();
   AnalyzeEntitiesResponse response = languageServiceClient.analyzeEntities(request);
 }
 
Parameter
NameDescription
requestAnalyzeEntitiesRequest

The request object containing all of the parameters for the API call.

Returns
TypeDescription
AnalyzeEntitiesResponse

analyzeEntities(Document document)

public final AnalyzeEntitiesResponse analyzeEntities(Document document)

Finds named entities (currently proper names and common nouns) in the text along with entity types, salience, mentions for each entity, and other properties.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (LanguageServiceClient languageServiceClient = LanguageServiceClient.create()) {
   Document document = Document.newBuilder().build();
   AnalyzeEntitiesResponse response = languageServiceClient.analyzeEntities(document);
 }
 
Parameter
NameDescription
documentDocument

Required. Input document.

Returns
TypeDescription
AnalyzeEntitiesResponse

analyzeEntities(Document document, EncodingType encodingType)

public final AnalyzeEntitiesResponse analyzeEntities(Document document, EncodingType encodingType)

Finds named entities (currently proper names and common nouns) in the text along with entity types, salience, mentions for each entity, and other properties.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (LanguageServiceClient languageServiceClient = LanguageServiceClient.create()) {
   Document document = Document.newBuilder().build();
   EncodingType encodingType = EncodingType.forNumber(0);
   AnalyzeEntitiesResponse response =
       languageServiceClient.analyzeEntities(document, encodingType);
 }
 
Parameters
NameDescription
documentDocument

Required. Input document.

encodingTypeEncodingType

The encoding type used by the API to calculate offsets.

Returns
TypeDescription
AnalyzeEntitiesResponse

analyzeEntitiesCallable()

public final UnaryCallable<AnalyzeEntitiesRequest,AnalyzeEntitiesResponse> analyzeEntitiesCallable()

Finds named entities (currently proper names and common nouns) in the text along with entity types, salience, mentions for each entity, and other properties.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (LanguageServiceClient languageServiceClient = LanguageServiceClient.create()) {
   AnalyzeEntitiesRequest request =
       AnalyzeEntitiesRequest.newBuilder()
           .setDocument(Document.newBuilder().build())
           .setEncodingType(EncodingType.forNumber(0))
           .build();
   ApiFuture<AnalyzeEntitiesResponse> future =
       languageServiceClient.analyzeEntitiesCallable().futureCall(request);
   // Do something.
   AnalyzeEntitiesResponse response = future.get();
 }
 
Returns
TypeDescription
UnaryCallable<AnalyzeEntitiesRequest,AnalyzeEntitiesResponse>

analyzeEntitySentiment(AnalyzeEntitySentimentRequest request)

public final AnalyzeEntitySentimentResponse analyzeEntitySentiment(AnalyzeEntitySentimentRequest request)

Finds entities, similar to AnalyzeEntities in the text and analyzes sentiment associated with each entity and its mentions.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (LanguageServiceClient languageServiceClient = LanguageServiceClient.create()) {
   AnalyzeEntitySentimentRequest request =
       AnalyzeEntitySentimentRequest.newBuilder()
           .setDocument(Document.newBuilder().build())
           .setEncodingType(EncodingType.forNumber(0))
           .build();
   AnalyzeEntitySentimentResponse response =
       languageServiceClient.analyzeEntitySentiment(request);
 }
 
Parameter
NameDescription
requestAnalyzeEntitySentimentRequest

The request object containing all of the parameters for the API call.

Returns
TypeDescription
AnalyzeEntitySentimentResponse

analyzeEntitySentiment(Document document)

public final AnalyzeEntitySentimentResponse analyzeEntitySentiment(Document document)

Finds entities, similar to AnalyzeEntities in the text and analyzes sentiment associated with each entity and its mentions.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (LanguageServiceClient languageServiceClient = LanguageServiceClient.create()) {
   Document document = Document.newBuilder().build();
   AnalyzeEntitySentimentResponse response =
       languageServiceClient.analyzeEntitySentiment(document);
 }
 
Parameter
NameDescription
documentDocument

Required. Input document.

Returns
TypeDescription
AnalyzeEntitySentimentResponse

analyzeEntitySentiment(Document document, EncodingType encodingType)

public final AnalyzeEntitySentimentResponse analyzeEntitySentiment(Document document, EncodingType encodingType)

Finds entities, similar to AnalyzeEntities in the text and analyzes sentiment associated with each entity and its mentions.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (LanguageServiceClient languageServiceClient = LanguageServiceClient.create()) {
   Document document = Document.newBuilder().build();
   EncodingType encodingType = EncodingType.forNumber(0);
   AnalyzeEntitySentimentResponse response =
       languageServiceClient.analyzeEntitySentiment(document, encodingType);
 }
 
Parameters
NameDescription
documentDocument

Required. Input document.

encodingTypeEncodingType

The encoding type used by the API to calculate offsets.

Returns
TypeDescription
AnalyzeEntitySentimentResponse

analyzeEntitySentimentCallable()

public final UnaryCallable<AnalyzeEntitySentimentRequest,AnalyzeEntitySentimentResponse> analyzeEntitySentimentCallable()

Finds entities, similar to AnalyzeEntities in the text and analyzes sentiment associated with each entity and its mentions.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (LanguageServiceClient languageServiceClient = LanguageServiceClient.create()) {
   AnalyzeEntitySentimentRequest request =
       AnalyzeEntitySentimentRequest.newBuilder()
           .setDocument(Document.newBuilder().build())
           .setEncodingType(EncodingType.forNumber(0))
           .build();
   ApiFuture<AnalyzeEntitySentimentResponse> future =
       languageServiceClient.analyzeEntitySentimentCallable().futureCall(request);
   // Do something.
   AnalyzeEntitySentimentResponse response = future.get();
 }
 
Returns
TypeDescription
UnaryCallable<AnalyzeEntitySentimentRequest,AnalyzeEntitySentimentResponse>

analyzeSentiment(AnalyzeSentimentRequest request)

public final AnalyzeSentimentResponse analyzeSentiment(AnalyzeSentimentRequest request)

Analyzes the sentiment of the provided text.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (LanguageServiceClient languageServiceClient = LanguageServiceClient.create()) {
   AnalyzeSentimentRequest request =
       AnalyzeSentimentRequest.newBuilder()
           .setDocument(Document.newBuilder().build())
           .setEncodingType(EncodingType.forNumber(0))
           .build();
   AnalyzeSentimentResponse response = languageServiceClient.analyzeSentiment(request);
 }
 
Parameter
NameDescription
requestAnalyzeSentimentRequest

The request object containing all of the parameters for the API call.

Returns
TypeDescription
AnalyzeSentimentResponse

analyzeSentiment(Document document)

public final AnalyzeSentimentResponse analyzeSentiment(Document document)

Analyzes the sentiment of the provided text.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (LanguageServiceClient languageServiceClient = LanguageServiceClient.create()) {
   Document document = Document.newBuilder().build();
   AnalyzeSentimentResponse response = languageServiceClient.analyzeSentiment(document);
 }
 
Parameter
NameDescription
documentDocument

Required. Input document.

Returns
TypeDescription
AnalyzeSentimentResponse

analyzeSentiment(Document document, EncodingType encodingType)

public final AnalyzeSentimentResponse analyzeSentiment(Document document, EncodingType encodingType)

Analyzes the sentiment of the provided text.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (LanguageServiceClient languageServiceClient = LanguageServiceClient.create()) {
   Document document = Document.newBuilder().build();
   EncodingType encodingType = EncodingType.forNumber(0);
   AnalyzeSentimentResponse response =
       languageServiceClient.analyzeSentiment(document, encodingType);
 }
 
Parameters
NameDescription
documentDocument

Required. Input document.

encodingTypeEncodingType

The encoding type used by the API to calculate sentence offsets for the sentence sentiment.

Returns
TypeDescription
AnalyzeSentimentResponse

analyzeSentimentCallable()

public final UnaryCallable<AnalyzeSentimentRequest,AnalyzeSentimentResponse> analyzeSentimentCallable()

Analyzes the sentiment of the provided text.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (LanguageServiceClient languageServiceClient = LanguageServiceClient.create()) {
   AnalyzeSentimentRequest request =
       AnalyzeSentimentRequest.newBuilder()
           .setDocument(Document.newBuilder().build())
           .setEncodingType(EncodingType.forNumber(0))
           .build();
   ApiFuture<AnalyzeSentimentResponse> future =
       languageServiceClient.analyzeSentimentCallable().futureCall(request);
   // Do something.
   AnalyzeSentimentResponse response = future.get();
 }
 
Returns
TypeDescription
UnaryCallable<AnalyzeSentimentRequest,AnalyzeSentimentResponse>

analyzeSyntax(AnalyzeSyntaxRequest request)

public final AnalyzeSyntaxResponse analyzeSyntax(AnalyzeSyntaxRequest request)

Analyzes the syntax of the text and provides sentence boundaries and tokenization along with part-of-speech tags, dependency trees, and other properties.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (LanguageServiceClient languageServiceClient = LanguageServiceClient.create()) {
   AnalyzeSyntaxRequest request =
       AnalyzeSyntaxRequest.newBuilder()
           .setDocument(Document.newBuilder().build())
           .setEncodingType(EncodingType.forNumber(0))
           .build();
   AnalyzeSyntaxResponse response = languageServiceClient.analyzeSyntax(request);
 }
 
Parameter
NameDescription
requestAnalyzeSyntaxRequest

The request object containing all of the parameters for the API call.

Returns
TypeDescription
AnalyzeSyntaxResponse

analyzeSyntax(Document document)

public final AnalyzeSyntaxResponse analyzeSyntax(Document document)

Analyzes the syntax of the text and provides sentence boundaries and tokenization along with part-of-speech tags, dependency trees, and other properties.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (LanguageServiceClient languageServiceClient = LanguageServiceClient.create()) {
   Document document = Document.newBuilder().build();
   AnalyzeSyntaxResponse response = languageServiceClient.analyzeSyntax(document);
 }
 
Parameter
NameDescription
documentDocument

Required. Input document.

Returns
TypeDescription
AnalyzeSyntaxResponse

analyzeSyntax(Document document, EncodingType encodingType)

public final AnalyzeSyntaxResponse analyzeSyntax(Document document, EncodingType encodingType)

Analyzes the syntax of the text and provides sentence boundaries and tokenization along with part-of-speech tags, dependency trees, and other properties.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (LanguageServiceClient languageServiceClient = LanguageServiceClient.create()) {
   Document document = Document.newBuilder().build();
   EncodingType encodingType = EncodingType.forNumber(0);
   AnalyzeSyntaxResponse response = languageServiceClient.analyzeSyntax(document, encodingType);
 }
 
Parameters
NameDescription
documentDocument

Required. Input document.

encodingTypeEncodingType

The encoding type used by the API to calculate offsets.

Returns
TypeDescription
AnalyzeSyntaxResponse

analyzeSyntaxCallable()

public final UnaryCallable<AnalyzeSyntaxRequest,AnalyzeSyntaxResponse> analyzeSyntaxCallable()

Analyzes the syntax of the text and provides sentence boundaries and tokenization along with part-of-speech tags, dependency trees, and other properties.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (LanguageServiceClient languageServiceClient = LanguageServiceClient.create()) {
   AnalyzeSyntaxRequest request =
       AnalyzeSyntaxRequest.newBuilder()
           .setDocument(Document.newBuilder().build())
           .setEncodingType(EncodingType.forNumber(0))
           .build();
   ApiFuture<AnalyzeSyntaxResponse> future =
       languageServiceClient.analyzeSyntaxCallable().futureCall(request);
   // Do something.
   AnalyzeSyntaxResponse response = future.get();
 }
 
Returns
TypeDescription
UnaryCallable<AnalyzeSyntaxRequest,AnalyzeSyntaxResponse>

annotateText(AnnotateTextRequest request)

public final AnnotateTextResponse annotateText(AnnotateTextRequest request)

A convenience method that provides all syntax, sentiment, entity, and classification features in one call.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (LanguageServiceClient languageServiceClient = LanguageServiceClient.create()) {
   AnnotateTextRequest request =
       AnnotateTextRequest.newBuilder()
           .setDocument(Document.newBuilder().build())
           .setFeatures(AnnotateTextRequest.Features.newBuilder().build())
           .setEncodingType(EncodingType.forNumber(0))
           .build();
   AnnotateTextResponse response = languageServiceClient.annotateText(request);
 }
 
Parameter
NameDescription
requestAnnotateTextRequest

The request object containing all of the parameters for the API call.

Returns
TypeDescription
AnnotateTextResponse

annotateText(Document document, AnnotateTextRequest.Features features)

public final AnnotateTextResponse annotateText(Document document, AnnotateTextRequest.Features features)

A convenience method that provides all syntax, sentiment, entity, and classification features in one call.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (LanguageServiceClient languageServiceClient = LanguageServiceClient.create()) {
   Document document = Document.newBuilder().build();
   AnnotateTextRequest.Features features = AnnotateTextRequest.Features.newBuilder().build();
   AnnotateTextResponse response = languageServiceClient.annotateText(document, features);
 }
 
Parameters
NameDescription
documentDocument

Required. Input document.

featuresAnnotateTextRequest.Features

Required. The enabled features.

Returns
TypeDescription
AnnotateTextResponse

annotateText(Document document, AnnotateTextRequest.Features features, EncodingType encodingType)

public final AnnotateTextResponse annotateText(Document document, AnnotateTextRequest.Features features, EncodingType encodingType)

A convenience method that provides all syntax, sentiment, entity, and classification features in one call.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (LanguageServiceClient languageServiceClient = LanguageServiceClient.create()) {
   Document document = Document.newBuilder().build();
   AnnotateTextRequest.Features features = AnnotateTextRequest.Features.newBuilder().build();
   EncodingType encodingType = EncodingType.forNumber(0);
   AnnotateTextResponse response =
       languageServiceClient.annotateText(document, features, encodingType);
 }
 
Parameters
NameDescription
documentDocument

Required. Input document.

featuresAnnotateTextRequest.Features

Required. The enabled features.

encodingTypeEncodingType

The encoding type used by the API to calculate offsets.

Returns
TypeDescription
AnnotateTextResponse

annotateTextCallable()

public final UnaryCallable<AnnotateTextRequest,AnnotateTextResponse> annotateTextCallable()

A convenience method that provides all syntax, sentiment, entity, and classification features in one call.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (LanguageServiceClient languageServiceClient = LanguageServiceClient.create()) {
   AnnotateTextRequest request =
       AnnotateTextRequest.newBuilder()
           .setDocument(Document.newBuilder().build())
           .setFeatures(AnnotateTextRequest.Features.newBuilder().build())
           .setEncodingType(EncodingType.forNumber(0))
           .build();
   ApiFuture<AnnotateTextResponse> future =
       languageServiceClient.annotateTextCallable().futureCall(request);
   // Do something.
   AnnotateTextResponse response = future.get();
 }
 
Returns
TypeDescription
UnaryCallable<AnnotateTextRequest,AnnotateTextResponse>

awaitTermination(long duration, TimeUnit unit)

public boolean awaitTermination(long duration, TimeUnit unit)
Parameters
NameDescription
durationlong
unitTimeUnit
Returns
TypeDescription
boolean
Exceptions
TypeDescription
InterruptedException

classifyText(ClassifyTextRequest request)

public final ClassifyTextResponse classifyText(ClassifyTextRequest request)

Classifies a document into categories.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (LanguageServiceClient languageServiceClient = LanguageServiceClient.create()) {
   ClassifyTextRequest request =
       ClassifyTextRequest.newBuilder().setDocument(Document.newBuilder().build()).build();
   ClassifyTextResponse response = languageServiceClient.classifyText(request);
 }
 
Parameter
NameDescription
requestClassifyTextRequest

The request object containing all of the parameters for the API call.

Returns
TypeDescription
ClassifyTextResponse

classifyText(Document document)

public final ClassifyTextResponse classifyText(Document document)

Classifies a document into categories.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (LanguageServiceClient languageServiceClient = LanguageServiceClient.create()) {
   Document document = Document.newBuilder().build();
   ClassifyTextResponse response = languageServiceClient.classifyText(document);
 }
 
Parameter
NameDescription
documentDocument

Required. Input document.

Returns
TypeDescription
ClassifyTextResponse

classifyTextCallable()

public final UnaryCallable<ClassifyTextRequest,ClassifyTextResponse> classifyTextCallable()

Classifies a document into categories.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (LanguageServiceClient languageServiceClient = LanguageServiceClient.create()) {
   ClassifyTextRequest request =
       ClassifyTextRequest.newBuilder().setDocument(Document.newBuilder().build()).build();
   ApiFuture<ClassifyTextResponse> future =
       languageServiceClient.classifyTextCallable().futureCall(request);
   // Do something.
   ClassifyTextResponse response = future.get();
 }
 
Returns
TypeDescription
UnaryCallable<ClassifyTextRequest,ClassifyTextResponse>

close()

public final void close()

getSettings()

public final LanguageServiceSettings getSettings()
Returns
TypeDescription
LanguageServiceSettings

getStub()

public LanguageServiceStub getStub()
Returns
TypeDescription
LanguageServiceStub

isShutdown()

public boolean isShutdown()
Returns
TypeDescription
boolean

isTerminated()

public boolean isTerminated()
Returns
TypeDescription
boolean

shutdown()

public void shutdown()

shutdownNow()

public void shutdownNow()