WebApiSkillConverter.java
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
package com.azure.search.documents.implementation.converters;
import com.azure.search.documents.indexes.models.InputFieldMappingEntry;
import com.azure.search.documents.indexes.models.OutputFieldMappingEntry;
import com.azure.search.documents.indexes.models.WebApiSkill;
import java.time.Duration;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
* A converter between {@link com.azure.search.documents.indexes.implementation.models.WebApiSkill} and {@link WebApiSkill}.
*/
public final class WebApiSkillConverter {
/**
* Maps from {@link com.azure.search.documents.indexes.implementation.models.WebApiSkill} to {@link WebApiSkill}.
*/
public static WebApiSkill map(com.azure.search.documents.indexes.implementation.models.WebApiSkill obj) {
if (obj == null) {
return null;
}
List<OutputFieldMappingEntry> outputs = obj.getOutputs() == null ? null : obj.getOutputs();
List<InputFieldMappingEntry> inputs = obj.getInputs() == null ? null
: obj.getInputs().stream().map(InputFieldMappingEntryConverter::map).collect(Collectors.toList());
WebApiSkill webApiSkill = new WebApiSkill(inputs, outputs, obj.getUri());
String name = obj.getName();
webApiSkill.setName(name);
String context = obj.getContext();
webApiSkill.setContext(context);
String description = obj.getDescription();
webApiSkill.setDescription(description);
if (obj.getHttpHeaders() != null) {
Map<String, String> httpHeaders =
obj.getHttpHeaders().entrySet().stream().collect(Collectors.toMap(Map.Entry::getKey,
Map.Entry::getValue));
webApiSkill.setHttpHeaders(httpHeaders);
}
String httpMethod = obj.getHttpMethod();
webApiSkill.setHttpMethod(httpMethod);
Integer batchSize = obj.getBatchSize();
webApiSkill.setBatchSize(batchSize);
Duration timeout = obj.getTimeout();
webApiSkill.setTimeout(timeout);
Integer degreeOfParallelism = obj.getDegreeOfParallelism();
webApiSkill.setDegreeOfParallelism(degreeOfParallelism);
return webApiSkill;
}
/**
* Maps from {@link WebApiSkill} to {@link com.azure.search.documents.indexes.implementation.models.WebApiSkill}.
*/
public static com.azure.search.documents.indexes.implementation.models.WebApiSkill map(WebApiSkill obj) {
if (obj == null) {
return null;
}
List<OutputFieldMappingEntry> outputs = obj.getOutputs() == null ? null : obj.getOutputs();
List<com.azure.search.documents.indexes.implementation.models.InputFieldMappingEntry> inputs =
obj.getOutputs() == null ? null
: obj.getInputs().stream().map(InputFieldMappingEntryConverter::map).collect(Collectors.toList());
com.azure.search.documents.indexes.implementation.models.WebApiSkill webApiSkill =
new com.azure.search.documents.indexes.implementation.models.WebApiSkill(inputs, outputs, obj.getUri());
String name = obj.getName();
webApiSkill.setName(name);
String context = obj.getContext();
webApiSkill.setContext(context);
String description = obj.getDescription();
webApiSkill.setDescription(description);
if (obj.getHttpHeaders() != null) {
Map<String, String> httpHeaders =
obj.getHttpHeaders().entrySet().stream().collect(Collectors.toMap(Map.Entry::getKey,
Map.Entry::getValue));
webApiSkill.setHttpHeaders(httpHeaders);
}
String httpMethod = obj.getHttpMethod();
webApiSkill.setHttpMethod(httpMethod);
Integer batchSize = obj.getBatchSize();
webApiSkill.setBatchSize(batchSize);
Duration timeout = obj.getTimeout();
webApiSkill.setTimeout(timeout);
Integer degreeOfParallelism = obj.getDegreeOfParallelism();
webApiSkill.setDegreeOfParallelism(degreeOfParallelism);
return webApiSkill;
}
private WebApiSkillConverter() {
}
}