use of com.ibm.watson.discovery.v1.model.Expansions in project java-sdk by watson-developer-cloud.
the class Discovery method createExpansions.
/**
* Create or update expansion list.
*
* <p>Create or replace the Expansion list for this collection. The maximum number of expanded
* terms per collection is `500`. The current expansion list is replaced with the uploaded
* content.
*
* @param createExpansionsOptions the {@link CreateExpansionsOptions} containing the options for
* the call
* @return a {@link ServiceCall} with a result of type {@link Expansions}
*/
public ServiceCall<Expansions> createExpansions(CreateExpansionsOptions createExpansionsOptions) {
com.ibm.cloud.sdk.core.util.Validator.notNull(createExpansionsOptions, "createExpansionsOptions cannot be null");
Map<String, String> pathParamsMap = new HashMap<String, String>();
pathParamsMap.put("environment_id", createExpansionsOptions.environmentId());
pathParamsMap.put("collection_id", createExpansionsOptions.collectionId());
RequestBuilder builder = RequestBuilder.post(RequestBuilder.resolveRequestUrl(getServiceUrl(), "/v1/environments/{environment_id}/collections/{collection_id}/expansions", pathParamsMap));
Map<String, String> sdkHeaders = SdkCommon.getSdkHeaders("discovery", "v1", "createExpansions");
for (Entry<String, String> header : sdkHeaders.entrySet()) {
builder.header(header.getKey(), header.getValue());
}
builder.header("Accept", "application/json");
builder.query("version", String.valueOf(this.version));
final JsonObject contentJson = new JsonObject();
contentJson.add("expansions", com.ibm.cloud.sdk.core.util.GsonSingleton.getGson().toJsonTree(createExpansionsOptions.expansions()));
builder.bodyJson(contentJson);
ResponseConverter<Expansions> responseConverter = ResponseConverterUtils.getValue(new com.google.gson.reflect.TypeToken<Expansions>() {
}.getType());
return createServiceCall(builder.build(), responseConverter);
}
use of com.ibm.watson.discovery.v1.model.Expansions in project java-sdk by watson-developer-cloud.
the class DiscoveryServiceTest method createExpansionsIsSuccessful.
@Test
public void createExpansionsIsSuccessful() throws InterruptedException {
server.enqueue(jsonResponse(expansionsResp));
List<String> expansion1InputTerms = Arrays.asList("weekday", "week day");
List<String> expansion1ExpandedTerms = Arrays.asList("monday", "tuesday", "wednesday", "thursday", "friday");
List<String> expansion2InputTerms = Arrays.asList("weekend", "week end");
List<String> expansion2ExpandedTerms = Arrays.asList("saturday", "sunday");
Expansion expansion1 = new Expansion();
expansion1.setInputTerms(expansion1InputTerms);
expansion1.setExpandedTerms(expansion1ExpandedTerms);
Expansion expansion2 = new Expansion();
expansion2.setInputTerms(expansion2InputTerms);
expansion2.setExpandedTerms(expansion2ExpandedTerms);
Expansions expansions = new Expansions();
expansions.setExpansions(Arrays.asList(expansion1, expansion2));
CreateExpansionsOptions createOptions = new CreateExpansionsOptions.Builder().environmentId(environmentId).collectionId(collectionId).expansions(expansions).build();
Expansions createResults = discoveryService.createExpansions(createOptions).execute();
RecordedRequest request = server.takeRequest();
assertEquals(EXPANSIONS_PATH, request.getPath());
assertEquals(POST, request.getMethod());
assertEquals(expansion1, createResults.getExpansions().get(0));
assertEquals(expansion2, createResults.getExpansions().get(1));
}
use of com.ibm.watson.discovery.v1.model.Expansions in project java-sdk by watson-developer-cloud.
the class DiscoveryServiceTest method listExpansionsIsSuccessful.
@Test
public void listExpansionsIsSuccessful() throws InterruptedException {
server.enqueue(jsonResponse(expansionsResp));
List<String> expansion1InputTerms = Arrays.asList("weekday", "week day");
List<String> expansion1ExpandedTerms = Arrays.asList("monday", "tuesday", "wednesday", "thursday", "friday");
List<String> expansion2InputTerms = Arrays.asList("weekend", "week end");
List<String> expansion2ExpandedTerms = Arrays.asList("saturday", "sunday");
Expansion expansion1 = new Expansion();
expansion1.setInputTerms(expansion1InputTerms);
expansion1.setExpandedTerms(expansion1ExpandedTerms);
Expansion expansion2 = new Expansion();
expansion2.setInputTerms(expansion2InputTerms);
expansion2.setExpandedTerms(expansion2ExpandedTerms);
ListExpansionsOptions listOptions = new ListExpansionsOptions.Builder().environmentId(environmentId).collectionId(collectionId).build();
Expansions listResults = discoveryService.listExpansions(listOptions).execute();
RecordedRequest request = server.takeRequest();
assertEquals(EXPANSIONS_PATH, request.getPath());
assertEquals(GET, request.getMethod());
assertEquals(expansion1, listResults.getExpansions().get(0));
assertEquals(expansion2, listResults.getExpansions().get(1));
}
use of com.ibm.watson.discovery.v1.model.Expansions in project java-sdk by watson-developer-cloud.
the class Discovery method createExpansions.
/**
* Set the expansion list.
*
* Create or replace the Expansion list for this collection. The maximum number of expanded terms per collection is
* `500`. The current expansion list is replaced with the uploaded content.
*
* @param createExpansionsOptions the {@link CreateExpansionsOptions} containing the options for the call
* @return a {@link ServiceCall} with a response type of {@link Expansions}
*/
public ServiceCall<Expansions> createExpansions(CreateExpansionsOptions createExpansionsOptions) {
Validator.notNull(createExpansionsOptions, "createExpansionsOptions cannot be null");
String[] pathSegments = { "v1/environments", "collections", "expansions" };
String[] pathParameters = { createExpansionsOptions.environmentId(), createExpansionsOptions.collectionId() };
RequestBuilder builder = RequestBuilder.post(RequestBuilder.constructHttpUrl(getEndPoint(), pathSegments, pathParameters));
builder.query(VERSION, versionDate);
final JsonObject contentJson = new JsonObject();
if (createExpansionsOptions.expansions() != null) {
contentJson.add("expansions", GsonSingleton.getGson().toJsonTree(createExpansionsOptions.expansions()));
}
builder.bodyJson(contentJson);
return createServiceCall(builder.build(), ResponseConverterUtils.getObject(Expansions.class));
}
use of com.ibm.watson.discovery.v1.model.Expansions in project java-sdk by watson-developer-cloud.
the class DiscoveryServiceTest method createExpansionsIsSuccessful.
/**
* Creates the expansions is successful.
*
* @throws InterruptedException the interrupted exception
*/
@Test
public void createExpansionsIsSuccessful() throws InterruptedException {
server.enqueue(jsonResponse(expansionsResp));
List<String> expansion1InputTerms = Arrays.asList("weekday", "week day");
List<String> expansion1ExpandedTerms = Arrays.asList("monday", "tuesday", "wednesday", "thursday", "friday");
List<String> expansion2InputTerms = Arrays.asList("weekend", "week end");
List<String> expansion2ExpandedTerms = Arrays.asList("saturday", "sunday");
Expansion expansion1 = new Expansion.Builder().inputTerms(expansion1InputTerms).expandedTerms(expansion1ExpandedTerms).build();
Expansion expansion2 = new Expansion.Builder().inputTerms(expansion2InputTerms).expandedTerms(expansion2ExpandedTerms).build();
Expansions expansions = new Expansions.Builder().expansions(Arrays.asList(expansion1, expansion2)).build();
CreateExpansionsOptions createOptions = new CreateExpansionsOptions.Builder().environmentId(environmentId).collectionId(collectionId).expansions(expansions).build();
Expansions createResults = discoveryService.createExpansions(createOptions).execute().getResult();
RecordedRequest request = server.takeRequest();
assertEquals(EXPANSIONS_PATH, request.getPath());
assertEquals(POST, request.getMethod());
assertEquals(expansion1, createResults.expansions().get(0));
assertEquals(expansion2, createResults.expansions().get(1));
}
Aggregations