Class AIServiceLanguageAsyncClient
- java.lang.Object
- 
- com.oracle.bmc.http.internal.BaseAsyncClient
- 
- com.oracle.bmc.ailanguage.AIServiceLanguageAsyncClient
 
 
- 
- All Implemented Interfaces:
- AIServiceLanguageAsync,- AutoCloseable
 
 @Generated(value="OracleSDKGenerator", comments="API Version: 20221001") public class AIServiceLanguageAsyncClient extends BaseAsyncClient implements AIServiceLanguageAsyncAsync client implementation for AIServiceLanguage service.
 There are two ways to use async client: 1. Use AsyncHandler: using AsyncHandler, if the response to the call is anInputStream, like getObject Api in object storage service, developers need to process the stream in AsyncHandler, and not anywhere else, because the stream will be closed right after the AsyncHandler is invoked.
 2. Use Java Future: using Java Future, developers need to close the stream after they are done with the Java Future.
 Accessing the result should be done in a mutually exclusive manner, either through the Future or the AsyncHandler, but not both. If the Future is used, the caller should pass in null as the AsyncHandler. If the AsyncHandler is used, it is still safe to use the Future to determine whether or not the request was completed via Future.isDone/isCancelled.
 Please refer to https://github.com/oracle/oci-java-sdk/blob/master/bmc-examples/src/main/java/ResteasyClientWithObjectStorageExample.java
- 
- 
Nested Class SummaryNested Classes Modifier and Type Class Description static classAIServiceLanguageAsyncClient.BuilderBuilder class for this client.
 - 
Field SummaryFields Modifier and Type Field Description StringclientCommonLibraryVersionCompatible SDK version, provided by the codegen.Optional<String>minimumClientCommonLibraryVersionFromClientMinimum compatible SDK version, maybe provided by the codegen.static ServiceSERVICEService instance for AIServiceLanguage.
 - 
Constructor SummaryConstructors Constructor Description AIServiceLanguageAsyncClient(AbstractAuthenticationDetailsProvider authenticationDetailsProvider, ClientConfiguration configuration, ClientConfigurator clientConfigurator, RequestSignerFactory defaultRequestSignerFactory)Deprecated.Use thebuilderinstead.AIServiceLanguageAsyncClient(AbstractAuthenticationDetailsProvider authenticationDetailsProvider, ClientConfiguration configuration, ClientConfigurator clientConfigurator, RequestSignerFactory defaultRequestSignerFactory, List<ClientConfigurator> additionalClientConfigurators)Deprecated.Use thebuilderinstead.AIServiceLanguageAsyncClient(AbstractAuthenticationDetailsProvider authenticationDetailsProvider, ClientConfiguration configuration, ClientConfigurator clientConfigurator, RequestSignerFactory defaultRequestSignerFactory, List<ClientConfigurator> additionalClientConfigurators, String endpoint)Deprecated.Use thebuilderinstead.AIServiceLanguageAsyncClient(AbstractAuthenticationDetailsProvider authenticationDetailsProvider, ClientConfiguration configuration, ClientConfigurator clientConfigurator, RequestSignerFactory defaultRequestSignerFactory, Map<SigningStrategy,RequestSignerFactory> signingStrategyRequestSignerFactories, List<ClientConfigurator> additionalClientConfigurators, String endpoint)Deprecated.Use thebuilderinstead.AIServiceLanguageAsyncClient(BasicAuthenticationDetailsProvider authenticationDetailsProvider)Deprecated.Use thebuilderinstead.AIServiceLanguageAsyncClient(BasicAuthenticationDetailsProvider authenticationDetailsProvider, ClientConfiguration configuration)Deprecated.Use thebuilderinstead.AIServiceLanguageAsyncClient(BasicAuthenticationDetailsProvider authenticationDetailsProvider, ClientConfiguration configuration, ClientConfigurator clientConfigurator)Deprecated.Use thebuilderinstead.
 - 
Method Summary- 
Methods inherited from class java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 - 
Methods inherited from interface com.oracle.bmc.ailanguage.AIServiceLanguageAsyncgetEndpoint, refreshClient, setEndpoint, useRealmSpecificEndpointTemplate
 - 
Methods inherited from interface java.lang.AutoCloseableclose
 
- 
 
- 
- 
- 
Constructor Detail- 
AIServiceLanguageAsyncClient@Deprecated public AIServiceLanguageAsyncClient(BasicAuthenticationDetailsProvider authenticationDetailsProvider) Deprecated.Use thebuilderinstead.Create a new client instance.- Parameters:
- authenticationDetailsProvider- The authentication details (see- AIServiceLanguageAsyncClient.Builder.build(com.oracle.bmc.auth.AbstractAuthenticationDetailsProvider))
 
 - 
AIServiceLanguageAsyncClient@Deprecated public AIServiceLanguageAsyncClient(BasicAuthenticationDetailsProvider authenticationDetailsProvider, ClientConfiguration configuration) Deprecated.Use thebuilderinstead.Create a new client instance.- Parameters:
- authenticationDetailsProvider- The authentication details (see- AIServiceLanguageAsyncClient.Builder.build(com.oracle.bmc.auth.AbstractAuthenticationDetailsProvider))
- configuration-- ClientBuilderBase.configuration
 
 - 
AIServiceLanguageAsyncClient@Deprecated public AIServiceLanguageAsyncClient(BasicAuthenticationDetailsProvider authenticationDetailsProvider, ClientConfiguration configuration, ClientConfigurator clientConfigurator) Deprecated.Use thebuilderinstead.Create a new client instance.- Parameters:
- authenticationDetailsProvider- The authentication details (see- AIServiceLanguageAsyncClient.Builder.build(com.oracle.bmc.auth.AbstractAuthenticationDetailsProvider))
- configuration-- ClientBuilderBase.configuration
- clientConfigurator-- ClientBuilderBase.clientConfigurator(com.oracle.bmc.http.ClientConfigurator)
 
 - 
AIServiceLanguageAsyncClient@Deprecated public AIServiceLanguageAsyncClient(AbstractAuthenticationDetailsProvider authenticationDetailsProvider, ClientConfiguration configuration, ClientConfigurator clientConfigurator, RequestSignerFactory defaultRequestSignerFactory) Deprecated.Use thebuilderinstead.Create a new client instance.- Parameters:
- authenticationDetailsProvider- The authentication details (see- AIServiceLanguageAsyncClient.Builder.build(com.oracle.bmc.auth.AbstractAuthenticationDetailsProvider))
- configuration-- ClientBuilderBase.configuration
- clientConfigurator-- ClientBuilderBase.clientConfigurator(com.oracle.bmc.http.ClientConfigurator)
- defaultRequestSignerFactory-- ClientBuilderBase.requestSignerFactory
 
 - 
AIServiceLanguageAsyncClient@Deprecated public AIServiceLanguageAsyncClient(AbstractAuthenticationDetailsProvider authenticationDetailsProvider, ClientConfiguration configuration, ClientConfigurator clientConfigurator, RequestSignerFactory defaultRequestSignerFactory, List<ClientConfigurator> additionalClientConfigurators) Deprecated.Use thebuilderinstead.Create a new client instance.- Parameters:
- authenticationDetailsProvider- The authentication details (see- AIServiceLanguageAsyncClient.Builder.build(com.oracle.bmc.auth.AbstractAuthenticationDetailsProvider))
- configuration-- ClientBuilderBase.configuration
- clientConfigurator-- ClientBuilderBase.clientConfigurator(com.oracle.bmc.http.ClientConfigurator)
- defaultRequestSignerFactory-- ClientBuilderBase.requestSignerFactory
- additionalClientConfigurators-- ClientBuilderBase.additionalClientConfigurators
 
 - 
AIServiceLanguageAsyncClient@Deprecated public AIServiceLanguageAsyncClient(AbstractAuthenticationDetailsProvider authenticationDetailsProvider, ClientConfiguration configuration, ClientConfigurator clientConfigurator, RequestSignerFactory defaultRequestSignerFactory, List<ClientConfigurator> additionalClientConfigurators, String endpoint) Deprecated.Use thebuilderinstead.Create a new client instance.- Parameters:
- authenticationDetailsProvider- The authentication details (see- AIServiceLanguageAsyncClient.Builder.build(com.oracle.bmc.auth.AbstractAuthenticationDetailsProvider))
- configuration-- ClientBuilderBase.configuration
- clientConfigurator-- ClientBuilderBase.clientConfigurator(com.oracle.bmc.http.ClientConfigurator)
- defaultRequestSignerFactory-- ClientBuilderBase.requestSignerFactory
- additionalClientConfigurators-- ClientBuilderBase.additionalClientConfigurators
- endpoint-- ClientBuilderBase.endpoint(java.lang.String)
 
 - 
AIServiceLanguageAsyncClient@Deprecated public AIServiceLanguageAsyncClient(AbstractAuthenticationDetailsProvider authenticationDetailsProvider, ClientConfiguration configuration, ClientConfigurator clientConfigurator, RequestSignerFactory defaultRequestSignerFactory, Map<SigningStrategy,RequestSignerFactory> signingStrategyRequestSignerFactories, List<ClientConfigurator> additionalClientConfigurators, String endpoint) Deprecated.Use thebuilderinstead.Create a new client instance.- Parameters:
- authenticationDetailsProvider- The authentication details (see- AIServiceLanguageAsyncClient.Builder.build(com.oracle.bmc.auth.AbstractAuthenticationDetailsProvider))
- configuration-- ClientBuilderBase.configuration
- clientConfigurator-- ClientBuilderBase.clientConfigurator(com.oracle.bmc.http.ClientConfigurator)
- defaultRequestSignerFactory-- ClientBuilderBase.requestSignerFactory
- additionalClientConfigurators-- ClientBuilderBase.additionalClientConfigurators
- endpoint-- ClientBuilderBase.endpoint(java.lang.String)
- signingStrategyRequestSignerFactories-- ClientBuilderBase.signingStrategyRequestSignerFactories
 
 
- 
 - 
Method Detail- 
builderpublic static AIServiceLanguageAsyncClient.Builder builder() Create a builder for this client.- Returns:
- builder
 
 - 
setRegionpublic void setRegion(Region region) Description copied from interface:AIServiceLanguageAsyncSets the region to call (ex, Region.US_PHOENIX_1).Note, this will call setEndpointafter resolving the endpoint. If the service is not available in this region, however, an IllegalArgumentException will be raised.- Specified by:
- setRegionin interface- AIServiceLanguageAsync
- Parameters:
- region- The region of the service.
 
 - 
setRegionpublic void setRegion(String regionId) Description copied from interface:AIServiceLanguageAsyncSets the region to call (ex, ‘us-phoenix-1’).Note, this will first try to map the region ID to a known Region and call setRegion.If no known Region could be determined, it will create an endpoint based on the default endpoint format ( Region.formatDefaultRegionEndpoint(Service, String)and then callsetEndpoint.- Specified by:
- setRegionin interface- AIServiceLanguageAsync
- Parameters:
- regionId- The public region ID.
 
 - 
batchDetectDominantLanguagepublic Future<BatchDetectDominantLanguageResponse> batchDetectDominantLanguage(BatchDetectDominantLanguageRequest request, AsyncHandler<BatchDetectDominantLanguageRequest,BatchDetectDominantLanguageResponse> handler) Description copied from interface:AIServiceLanguageAsyncThe API returns the detected language and a related confidence score (between 0 and 1).It supports passing a batch of records. [List of supported languages.](https://docs.oracle.com/iaas/language/using/pretrain-models.htm#lang-detect) Limitations: - A batch may have up to 100 records. - A record may be up to 5000 characters long. - The total of characters to process in a request can be up to 20,000 characters. - Specified by:
- batchDetectDominantLanguagein interface- AIServiceLanguageAsync
- Parameters:
- request- The request object containing the details to send
- handler- The request handler to invoke upon completion, may be null.
- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
 
 - 
batchDetectHealthEntitypublic Future<BatchDetectHealthEntityResponse> batchDetectHealthEntity(BatchDetectHealthEntityRequest request, AsyncHandler<BatchDetectHealthEntityRequest,BatchDetectHealthEntityResponse> handler) Description copied from interface:AIServiceLanguageAsyncThe API extracts health entities in text records.For each entity, its type and confidence score (between 0 and 1) is returned. It supports passing a batch of records. Limitations: - A batch may have up to 100 records. - A record may be up to 5000 characters long. - The total of characters to process in a request can be up to 20,000 characters. - Specified by:
- batchDetectHealthEntityin interface- AIServiceLanguageAsync
- Parameters:
- request- The request object containing the details to send
- handler- The request handler to invoke upon completion, may be null.
- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
 
 - 
batchDetectLanguageEntitiespublic Future<BatchDetectLanguageEntitiesResponse> batchDetectLanguageEntities(BatchDetectLanguageEntitiesRequest request, AsyncHandler<BatchDetectLanguageEntitiesRequest,BatchDetectLanguageEntitiesResponse> handler) Description copied from interface:AIServiceLanguageAsyncThe API extracts entities in text records.For each entity, its type/subtype and confidence score (between 0 and 1) is returned. It supports passing a batch of records. [List of supported entities.](https://docs.oracle.com/iaas/language/using/pretrain-models.htm#ner__sup-ner-entity) Limitations: - A batch may have up to 100 records. - A record may be up to 5000 characters long. - The total of characters to process in a request can be up to 20,000 characters. - Specified by:
- batchDetectLanguageEntitiesin interface- AIServiceLanguageAsync
- Parameters:
- request- The request object containing the details to send
- handler- The request handler to invoke upon completion, may be null.
- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
 
 - 
batchDetectLanguageKeyPhrasespublic Future<BatchDetectLanguageKeyPhrasesResponse> batchDetectLanguageKeyPhrases(BatchDetectLanguageKeyPhrasesRequest request, AsyncHandler<BatchDetectLanguageKeyPhrasesRequest,BatchDetectLanguageKeyPhrasesResponse> handler) Description copied from interface:AIServiceLanguageAsyncThe API extracts key-phrases in text records.For each key-phrase, a score (between 0 and 1) is returned that highlights the importance of the key-phrase in the context of the text. It supports passing a batch of records. Limitations: - A batch may have up to 100 records. - A record may be up to 5000 characters long. - The total of characters to process in a request can be up to 20,000 characters. - Specified by:
- batchDetectLanguageKeyPhrasesin interface- AIServiceLanguageAsync
- Parameters:
- request- The request object containing the details to send
- handler- The request handler to invoke upon completion, may be null.
- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
 
 - 
batchDetectLanguagePiiEntitiespublic Future<BatchDetectLanguagePiiEntitiesResponse> batchDetectLanguagePiiEntities(BatchDetectLanguagePiiEntitiesRequest request, AsyncHandler<BatchDetectLanguagePiiEntitiesRequest,BatchDetectLanguagePiiEntitiesResponse> handler) Description copied from interface:AIServiceLanguageAsyncThe API extracts pii entities in text records.For each entity, its type and confidence score (between 0 and 1) is returned. It supports passing a batch of records. Limitations: - A batch may have up to 100 records. - A record may be up to 5000 characters long. - The total of characters to process in a request can be up to 20,000 characters. - Specified by:
- batchDetectLanguagePiiEntitiesin interface- AIServiceLanguageAsync
- Parameters:
- request- The request object containing the details to send
- handler- The request handler to invoke upon completion, may be null.
- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
 
 - 
batchDetectLanguageSentimentspublic Future<BatchDetectLanguageSentimentsResponse> batchDetectLanguageSentiments(BatchDetectLanguageSentimentsRequest request, AsyncHandler<BatchDetectLanguageSentimentsRequest,BatchDetectLanguageSentimentsResponse> handler) Description copied from interface:AIServiceLanguageAsyncThe API extracts aspect-based and sentence level sentiment in text records.For aspect-based sentiment analysis, a set of aspects and their respective sentiment is returned for each record. Similarly, for sentence-level sentiment analysis, the sentiment is returned at the sentence level. For sentiment analysis, confidence scores are provided for each of the classes (positive, negative, neutral and mixed). Learn more about sentiment analysis [here](https://docs.oracle.com/iaas/language/using/pretrain-models.htm#sentiment). Limitations: - A batch may have up to 100 records. - A record may be up to 5000 characters long. - The total of characters to process in a request can be up to 20,000 characters. - Specified by:
- batchDetectLanguageSentimentsin interface- AIServiceLanguageAsync
- Parameters:
- request- The request object containing the details to send
- handler- The request handler to invoke upon completion, may be null.
- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
 
 - 
batchDetectLanguageTextClassificationpublic Future<BatchDetectLanguageTextClassificationResponse> batchDetectLanguageTextClassification(BatchDetectLanguageTextClassificationRequest request, AsyncHandler<BatchDetectLanguageTextClassificationRequest,BatchDetectLanguageTextClassificationResponse> handler) Description copied from interface:AIServiceLanguageAsyncThe API automatically classifies text into a set of pre-determined classes and sub-classes.A single class/subclass is returned for each record classified. It supports passing a batch of records. Learn more about text classification [here](https://docs.oracle.com/iaas/language/using/pretrain-models.htm#text-class). Limitations: - A batch may have up to 100 records. - A record may be up to 5000 characters long. - The total of characters to process in a request can be up to 20,000 characters. - Specified by:
- batchDetectLanguageTextClassificationin interface- AIServiceLanguageAsync
- Parameters:
- request- The request object containing the details to send
- handler- The request handler to invoke upon completion, may be null.
- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
 
 - 
batchLanguageTranslationpublic Future<BatchLanguageTranslationResponse> batchLanguageTranslation(BatchLanguageTranslationRequest request, AsyncHandler<BatchLanguageTranslationRequest,BatchLanguageTranslationResponse> handler) Description copied from interface:AIServiceLanguageAsyncTranslates a batch of text documents from source to target language.A batch can contain: - up to 100 records. - documents length less than 5000 characters. - 20,000 characters in total as a sum of all documents length. - Specified by:
- batchLanguageTranslationin interface- AIServiceLanguageAsync
- Parameters:
- request- The request object containing the details to send
- handler- The request handler to invoke upon completion, may be null.
- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
 
 - 
cancelJobpublic Future<CancelJobResponse> cancelJob(CancelJobRequest request, AsyncHandler<CancelJobRequest,CancelJobResponse> handler) Description copied from interface:AIServiceLanguageAsyncCanceling the job cancels all the tasks under it.- Specified by:
- cancelJobin interface- AIServiceLanguageAsync
- Parameters:
- request- The request object containing the details to send
- handler- The request handler to invoke upon completion, may be null.
- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
 
 - 
changeEndpointCompartmentpublic Future<ChangeEndpointCompartmentResponse> changeEndpointCompartment(ChangeEndpointCompartmentRequest request, AsyncHandler<ChangeEndpointCompartmentRequest,ChangeEndpointCompartmentResponse> handler) Description copied from interface:AIServiceLanguageAsyncMoves a Endpoint into a different compartment.When provided, If-Match is checked against ETag values of the resource. - Specified by:
- changeEndpointCompartmentin interface- AIServiceLanguageAsync
- Parameters:
- request- The request object containing the details to send
- handler- The request handler to invoke upon completion, may be null.
- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
 
 - 
changeJobCompartmentpublic Future<ChangeJobCompartmentResponse> changeJobCompartment(ChangeJobCompartmentRequest request, AsyncHandler<ChangeJobCompartmentRequest,ChangeJobCompartmentResponse> handler) Description copied from interface:AIServiceLanguageAsyncMoves a Job into a different compartment.When provided, If-Match is checked against ETag values of the resource. - Specified by:
- changeJobCompartmentin interface- AIServiceLanguageAsync
- Parameters:
- request- The request object containing the details to send
- handler- The request handler to invoke upon completion, may be null.
- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
 
 - 
changeModelCompartmentpublic Future<ChangeModelCompartmentResponse> changeModelCompartment(ChangeModelCompartmentRequest request, AsyncHandler<ChangeModelCompartmentRequest,ChangeModelCompartmentResponse> handler) Description copied from interface:AIServiceLanguageAsyncMoves a Model into a different compartment.When provided, If-Match is checked against ETag values of the resource. - Specified by:
- changeModelCompartmentin interface- AIServiceLanguageAsync
- Parameters:
- request- The request object containing the details to send
- handler- The request handler to invoke upon completion, may be null.
- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
 
 - 
changeProjectCompartmentpublic Future<ChangeProjectCompartmentResponse> changeProjectCompartment(ChangeProjectCompartmentRequest request, AsyncHandler<ChangeProjectCompartmentRequest,ChangeProjectCompartmentResponse> handler) Description copied from interface:AIServiceLanguageAsyncMoves a Project into a different compartment.When provided, If-Match is checked against ETag values of the resource. - Specified by:
- changeProjectCompartmentin interface- AIServiceLanguageAsync
- Parameters:
- request- The request object containing the details to send
- handler- The request handler to invoke upon completion, may be null.
- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
 
 - 
createEndpointpublic Future<CreateEndpointResponse> createEndpoint(CreateEndpointRequest request, AsyncHandler<CreateEndpointRequest,CreateEndpointResponse> handler) Description copied from interface:AIServiceLanguageAsyncCreates a new endpoint and deploy the trained model- Specified by:
- createEndpointin interface- AIServiceLanguageAsync
- Parameters:
- request- The request object containing the details to send
- handler- The request handler to invoke upon completion, may be null.
- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
 
 - 
createJobpublic Future<CreateJobResponse> createJob(CreateJobRequest request, AsyncHandler<CreateJobRequest,CreateJobResponse> handler) Description copied from interface:AIServiceLanguageAsyncCreates a new language service async job.- Specified by:
- createJobin interface- AIServiceLanguageAsync
- Parameters:
- request- The request object containing the details to send
- handler- The request handler to invoke upon completion, may be null.
- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
 
 - 
createModelpublic Future<CreateModelResponse> createModel(CreateModelRequest request, AsyncHandler<CreateModelRequest,CreateModelResponse> handler) Description copied from interface:AIServiceLanguageAsyncCreates a new model for training and train the model with date provided.- Specified by:
- createModelin interface- AIServiceLanguageAsync
- Parameters:
- request- The request object containing the details to send
- handler- The request handler to invoke upon completion, may be null.
- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
 
 - 
createProjectpublic Future<CreateProjectResponse> createProject(CreateProjectRequest request, AsyncHandler<CreateProjectRequest,CreateProjectResponse> handler) Description copied from interface:AIServiceLanguageAsyncCreates a new Project.- Specified by:
- createProjectin interface- AIServiceLanguageAsync
- Parameters:
- request- The request object containing the details to send
- handler- The request handler to invoke upon completion, may be null.
- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
 
 - 
deleteEndpointpublic Future<DeleteEndpointResponse> deleteEndpoint(DeleteEndpointRequest request, AsyncHandler<DeleteEndpointRequest,DeleteEndpointResponse> handler) Description copied from interface:AIServiceLanguageAsyncDeletes a provisioned endpoint resource by identifier.This operation fails with a 409 error unless all associated resources are in a DELETED state. You must delete all associated resources before deleting a model. - Specified by:
- deleteEndpointin interface- AIServiceLanguageAsync
- Parameters:
- request- The request object containing the details to send
- handler- The request handler to invoke upon completion, may be null.
- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
 
 - 
deleteJobpublic Future<DeleteJobResponse> deleteJob(DeleteJobRequest request, AsyncHandler<DeleteJobRequest,DeleteJobResponse> handler) Description copied from interface:AIServiceLanguageAsyncDeletes the language service async Job- Specified by:
- deleteJobin interface- AIServiceLanguageAsync
- Parameters:
- request- The request object containing the details to send
- handler- The request handler to invoke upon completion, may be null.
- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
 
 - 
deleteModelpublic Future<DeleteModelResponse> deleteModel(DeleteModelRequest request, AsyncHandler<DeleteModelRequest,DeleteModelResponse> handler) Description copied from interface:AIServiceLanguageAsyncDeletes a provisioned model resource by identifier.This operation fails with a 409 error unless all associated resources are in a DELETED state. You must delete all associated resources before deleting a model. - Specified by:
- deleteModelin interface- AIServiceLanguageAsync
- Parameters:
- request- The request object containing the details to send
- handler- The request handler to invoke upon completion, may be null.
- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
 
 - 
deleteProjectpublic Future<DeleteProjectResponse> deleteProject(DeleteProjectRequest request, AsyncHandler<DeleteProjectRequest,DeleteProjectResponse> handler) Description copied from interface:AIServiceLanguageAsyncDeletes a Project resource by identifier.This operation fails with a 409 error unless all associated resources (models deployments or data assets) are in a DELETED state. You must delete all associated resources before deleting a project. - Specified by:
- deleteProjectin interface- AIServiceLanguageAsync
- Parameters:
- request- The request object containing the details to send
- handler- The request handler to invoke upon completion, may be null.
- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
 
 - 
detectDominantLanguagepublic Future<DetectDominantLanguageResponse> detectDominantLanguage(DetectDominantLanguageRequest request, AsyncHandler<DetectDominantLanguageRequest,DetectDominantLanguageResponse> handler) Description copied from interface:AIServiceLanguageAsyncDeprecated: This API will be retired Tuesday, 10 Oct 2023 00:00:00 GMT.We recommend you replace this API with the batch API, BatchDetectDominantLanguage. The DetectDominantLanguage API returns the detected language and a related confidence score (between 0 and 1). [List of supported languages](https://docs.oracle.com/iaas/language/using/pretrain-models.htm#lang-detect) Limitations: - A record may be up to 1000 characters long. - Specified by:
- detectDominantLanguagein interface- AIServiceLanguageAsync
- Parameters:
- request- The request object containing the details to send
- handler- The request handler to invoke upon completion, may be null.
- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
 
 - 
detectLanguageEntitiespublic Future<DetectLanguageEntitiesResponse> detectLanguageEntities(DetectLanguageEntitiesRequest request, AsyncHandler<DetectLanguageEntitiesRequest,DetectLanguageEntitiesResponse> handler) Description copied from interface:AIServiceLanguageAsyncDeprecated: This API will be retired Tuesday, 10 Oct 2023 00:00:00 GMT.We recommend you replace this API with the batch API, BatchDetectLanguageEntities. The DetectLanguageEntities API extracts entities in text records. For each entity, its type and confidence score (between 0 and 1) is returned. Limitations: - A text may be up to 1000 characters long. - Specified by:
- detectLanguageEntitiesin interface- AIServiceLanguageAsync
- Parameters:
- request- The request object containing the details to send
- handler- The request handler to invoke upon completion, may be null.
- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
 
 - 
detectLanguageKeyPhrasespublic Future<DetectLanguageKeyPhrasesResponse> detectLanguageKeyPhrases(DetectLanguageKeyPhrasesRequest request, AsyncHandler<DetectLanguageKeyPhrasesRequest,DetectLanguageKeyPhrasesResponse> handler) Description copied from interface:AIServiceLanguageAsyncDeprecated: This API will be retired Tuesday, 10 Oct 2023 00:00:00 GMT.We recommend you replace this API with the batch API, BatchDetectLanguageKeyPhrases. The DetectLanguageKeyPhrases API extracts key-phrases in text records. For each key-phrase, a score (between 0 and 1) is returned that highlights the importance of the key-phrase in the context of the text. Limitations: - A record may be up to 1000 characters long. - Specified by:
- detectLanguageKeyPhrasesin interface- AIServiceLanguageAsync
- Parameters:
- request- The request object containing the details to send
- handler- The request handler to invoke upon completion, may be null.
- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
 
 - 
detectLanguageSentimentspublic Future<DetectLanguageSentimentsResponse> detectLanguageSentiments(DetectLanguageSentimentsRequest request, AsyncHandler<DetectLanguageSentimentsRequest,DetectLanguageSentimentsResponse> handler) Description copied from interface:AIServiceLanguageAsyncDeprecated: This API will be retired Tuesday, 10 Oct 2023 00:00:00 GMT.We recommend you replace this API with the batch API, BatchDetectLanguageSentiments. The DetectLanguageSentiments API extracts aspect-based in text records. For aspect-based sentiment analysis, a set of aspects and their respective sentiment is returned. For sentiment analysis, confidence scores are provided for each of the classes (positive, negative, neutral). Learn more about sentiment analysis [here](https://docs.oracle.com/iaas/language/using/pretrain-models.htm#sentiment). Limitations: - A record may be up to 1000 characters long. - Specified by:
- detectLanguageSentimentsin interface- AIServiceLanguageAsync
- Parameters:
- request- The request object containing the details to send
- handler- The request handler to invoke upon completion, may be null.
- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
 
 - 
detectLanguageTextClassificationpublic Future<DetectLanguageTextClassificationResponse> detectLanguageTextClassification(DetectLanguageTextClassificationRequest request, AsyncHandler<DetectLanguageTextClassificationRequest,DetectLanguageTextClassificationResponse> handler) Description copied from interface:AIServiceLanguageAsyncDeprecated: This API will be retired Tuesday, 10 Oct 2023 00:00:00 GMT.We recommend you replace this API with the batch API, BatchDetectLanguageTextClassification. The DetectLanguageTextClassification API automatically classifies text into a set of pre-determined classes and sub-classes. A single class/subclass is returned for each record classified. Learn more about text classification [here](https://docs.oracle.com/iaas/language/using/pretrain-models.htm#text-class). Limitations: - A record may be up to 1000 characters long. - Specified by:
- detectLanguageTextClassificationin interface- AIServiceLanguageAsync
- Parameters:
- request- The request object containing the details to send
- handler- The request handler to invoke upon completion, may be null.
- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
 
 - 
getEndpointpublic Future<GetEndpointResponse> getEndpoint(GetEndpointRequest request, AsyncHandler<GetEndpointRequest,GetEndpointResponse> handler) Description copied from interface:AIServiceLanguageAsyncGets an endpoint by identifier- Specified by:
- getEndpointin interface- AIServiceLanguageAsync
- Parameters:
- request- The request object containing the details to send
- handler- The request handler to invoke upon completion, may be null.
- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
 
 - 
getJobpublic Future<GetJobResponse> getJob(GetJobRequest request, AsyncHandler<GetJobRequest,GetJobResponse> handler) Description copied from interface:AIServiceLanguageAsyncGets a language service async job- Specified by:
- getJobin interface- AIServiceLanguageAsync
- Parameters:
- request- The request object containing the details to send
- handler- The request handler to invoke upon completion, may be null.
- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
 
 - 
getModelpublic Future<GetModelResponse> getModel(GetModelRequest request, AsyncHandler<GetModelRequest,GetModelResponse> handler) Description copied from interface:AIServiceLanguageAsyncGets a model by identifier- Specified by:
- getModelin interface- AIServiceLanguageAsync
- Parameters:
- request- The request object containing the details to send
- handler- The request handler to invoke upon completion, may be null.
- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
 
 - 
getModelTypepublic Future<GetModelTypeResponse> getModelType(GetModelTypeRequest request, AsyncHandler<GetModelTypeRequest,GetModelTypeResponse> handler) Description copied from interface:AIServiceLanguageAsyncGets model capabilities- Specified by:
- getModelTypein interface- AIServiceLanguageAsync
- Parameters:
- request- The request object containing the details to send
- handler- The request handler to invoke upon completion, may be null.
- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
 
 - 
getProjectpublic Future<GetProjectResponse> getProject(GetProjectRequest request, AsyncHandler<GetProjectRequest,GetProjectResponse> handler) Description copied from interface:AIServiceLanguageAsyncGets a Project by identifier- Specified by:
- getProjectin interface- AIServiceLanguageAsync
- Parameters:
- request- The request object containing the details to send
- handler- The request handler to invoke upon completion, may be null.
- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
 
 - 
getWorkRequestpublic Future<GetWorkRequestResponse> getWorkRequest(GetWorkRequestRequest request, AsyncHandler<GetWorkRequestRequest,GetWorkRequestResponse> handler) Description copied from interface:AIServiceLanguageAsyncGets the status of the work request with the given ID.- Specified by:
- getWorkRequestin interface- AIServiceLanguageAsync
- Parameters:
- request- The request object containing the details to send
- handler- The request handler to invoke upon completion, may be null.
- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
 
 - 
listEndpointspublic Future<ListEndpointsResponse> listEndpoints(ListEndpointsRequest request, AsyncHandler<ListEndpointsRequest,ListEndpointsResponse> handler) Description copied from interface:AIServiceLanguageAsyncReturns a list of Endpoints.- Specified by:
- listEndpointsin interface- AIServiceLanguageAsync
- Parameters:
- request- The request object containing the details to send
- handler- The request handler to invoke upon completion, may be null.
- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
 
 - 
listEvaluationResultspublic Future<ListEvaluationResultsResponse> listEvaluationResults(ListEvaluationResultsRequest request, AsyncHandler<ListEvaluationResultsRequest,ListEvaluationResultsResponse> handler) Description copied from interface:AIServiceLanguageAsyncGet a (paginated) list of evaluation results for a given model.- Specified by:
- listEvaluationResultsin interface- AIServiceLanguageAsync
- Parameters:
- request- The request object containing the details to send
- handler- The request handler to invoke upon completion, may be null.
- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
 
 - 
listJobspublic Future<ListJobsResponse> listJobs(ListJobsRequest request, AsyncHandler<ListJobsRequest,ListJobsResponse> handler) Description copied from interface:AIServiceLanguageAsyncReturns a list of language service async Jobs.- Specified by:
- listJobsin interface- AIServiceLanguageAsync
- Parameters:
- request- The request object containing the details to send
- handler- The request handler to invoke upon completion, may be null.
- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
 
 - 
listModelspublic Future<ListModelsResponse> listModels(ListModelsRequest request, AsyncHandler<ListModelsRequest,ListModelsResponse> handler) Description copied from interface:AIServiceLanguageAsyncReturns a list of models.- Specified by:
- listModelsin interface- AIServiceLanguageAsync
- Parameters:
- request- The request object containing the details to send
- handler- The request handler to invoke upon completion, may be null.
- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
 
 - 
listProjectspublic Future<ListProjectsResponse> listProjects(ListProjectsRequest request, AsyncHandler<ListProjectsRequest,ListProjectsResponse> handler) Description copied from interface:AIServiceLanguageAsyncReturns a list of Projects.- Specified by:
- listProjectsin interface- AIServiceLanguageAsync
- Parameters:
- request- The request object containing the details to send
- handler- The request handler to invoke upon completion, may be null.
- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
 
 - 
listWorkRequestErrorspublic Future<ListWorkRequestErrorsResponse> listWorkRequestErrors(ListWorkRequestErrorsRequest request, AsyncHandler<ListWorkRequestErrorsRequest,ListWorkRequestErrorsResponse> handler) Description copied from interface:AIServiceLanguageAsyncReturn a (paginated) list of errors for a given work request.- Specified by:
- listWorkRequestErrorsin interface- AIServiceLanguageAsync
- Parameters:
- request- The request object containing the details to send
- handler- The request handler to invoke upon completion, may be null.
- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
 
 - 
listWorkRequestLogspublic Future<ListWorkRequestLogsResponse> listWorkRequestLogs(ListWorkRequestLogsRequest request, AsyncHandler<ListWorkRequestLogsRequest,ListWorkRequestLogsResponse> handler) Description copied from interface:AIServiceLanguageAsyncReturn a (paginated) list of logs for a given work request.- Specified by:
- listWorkRequestLogsin interface- AIServiceLanguageAsync
- Parameters:
- request- The request object containing the details to send
- handler- The request handler to invoke upon completion, may be null.
- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
 
 - 
listWorkRequestspublic Future<ListWorkRequestsResponse> listWorkRequests(ListWorkRequestsRequest request, AsyncHandler<ListWorkRequestsRequest,ListWorkRequestsResponse> handler) Description copied from interface:AIServiceLanguageAsyncLists the work requests in a compartment.- Specified by:
- listWorkRequestsin interface- AIServiceLanguageAsync
- Parameters:
- request- The request object containing the details to send
- handler- The request handler to invoke upon completion, may be null.
- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
 
 - 
updateEndpointpublic Future<UpdateEndpointResponse> updateEndpoint(UpdateEndpointRequest request, AsyncHandler<UpdateEndpointRequest,UpdateEndpointResponse> handler) Description copied from interface:AIServiceLanguageAsyncUpdate the Endpoint identified by the id- Specified by:
- updateEndpointin interface- AIServiceLanguageAsync
- Parameters:
- request- The request object containing the details to send
- handler- The request handler to invoke upon completion, may be null.
- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
 
 - 
updateJobpublic Future<UpdateJobResponse> updateJob(UpdateJobRequest request, AsyncHandler<UpdateJobRequest,UpdateJobResponse> handler) Description copied from interface:AIServiceLanguageAsyncUpdates the language service async Job- Specified by:
- updateJobin interface- AIServiceLanguageAsync
- Parameters:
- request- The request object containing the details to send
- handler- The request handler to invoke upon completion, may be null.
- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
 
 - 
updateModelpublic Future<UpdateModelResponse> updateModel(UpdateModelRequest request, AsyncHandler<UpdateModelRequest,UpdateModelResponse> handler) Description copied from interface:AIServiceLanguageAsyncUpdates the model- Specified by:
- updateModelin interface- AIServiceLanguageAsync
- Parameters:
- request- The request object containing the details to send
- handler- The request handler to invoke upon completion, may be null.
- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
 
 - 
updateProjectpublic Future<UpdateProjectResponse> updateProject(UpdateProjectRequest request, AsyncHandler<UpdateProjectRequest,UpdateProjectResponse> handler) Description copied from interface:AIServiceLanguageAsyncUpdates the Project- Specified by:
- updateProjectin interface- AIServiceLanguageAsync
- Parameters:
- request- The request object containing the details to send
- handler- The request handler to invoke upon completion, may be null.
- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
 
 - 
getDefaultConfiguratorprotected ClientConfigurator getDefaultConfigurator() 
 - 
useRealmSpecificEndpointTemplatepublic void useRealmSpecificEndpointTemplate(boolean useOfRealmSpecificEndpointTemplateEnabled) This method should be used to enable or disable the use of realm-specific endpoint template.The default value is null. To enable the use of endpoint template defined for the realm in use, set the flag to true To disable the use of endpoint template defined for the realm in use, set the flag to false - Parameters:
- useOfRealmSpecificEndpointTemplateEnabled- This flag can be set to true or false to enable or disable the use of realm-specific endpoint template respectively
 
 - 
populateServiceParametersInEndpointpublic final void populateServiceParametersInEndpoint(String endpoint, Map<String,Object> requiredParametersMap) Populate the parameters in the endpoint with its corresponding value and update the base endpoint.The value will be populated iff the parameter in endpoint is a required request path parameter or a required request query parameter. If not, the parameter in the endpoint will be ignored and left blank. - Parameters:
- endpoint- The endpoint template in use
- requiredParametersMap- Map of parameter name as key and value set in request path or query parameter as value
 
 - 
updateBaseEndpointpublic final void updateBaseEndpoint(String endpoint) This method should be used for parameterized endpoint templates only.This does not include {region} and {secondLevelDomain} parameters. - Parameters:
- endpoint- The updated endpoint to use
 
 - 
setEndpointpublic final void setEndpoint(String endpoint) 
 - 
getEndpointpublic final String getEndpoint() 
 - 
refreshClientpublic final void refreshClient() Rebuild the backingHttpClient.This will call ClientConfigurators again, and can be used to e.g. refresh the SSL certificate.
 - 
closepublic final void close() - Specified by:
- closein interface- AutoCloseable
 
 - 
getClientCommonLibraryVersionpublic String getClientCommonLibraryVersion() 
 - 
getMinimumClientCommonLibraryVersionFromClientpublic Optional<String> getMinimumClientCommonLibraryVersionFromClient() 
 - 
clientCallprotected <REQ extends BmcRequest<?>,RESP extends BmcResponse,RESP_BUILDER extends BmcResponse.Builder<RESP>> ClientCall<REQ,RESP,RESP_BUILDER> clientCall(REQ request, Supplier<RESP_BUILDER> responseBuilder) 
 
- 
 
-