use of org.eclipse.microprofile.openapi.models.servers.Server in project empoa by OpenAPITools.
the class OASMerge method merge.
public static void merge(Operation from, Operation into) {
if (into == null) {
throw new IllegalArgumentException("Operation 'into' parameter can not be null");
}
if (from != null) {
List<String> fromTags = from.getTags();
if (fromTags != null) {
List<String> intoTags = into.getTags();
if (intoTags != null) {
for (String item : fromTags) {
if (!intoTags.contains(item)) {
into.addTag(item);
}
}
} else {
for (String item : fromTags) {
into.addTag(item);
}
}
}
String fromSummary = from.getSummary();
if (fromSummary != null) {
into.setSummary(fromSummary);
}
String fromDescription = from.getDescription();
if (fromDescription != null) {
into.setDescription(fromDescription);
}
ExternalDocumentation fromExternalDocs = from.getExternalDocs();
if (fromExternalDocs != null) {
ExternalDocumentation intoExternalDocs = into.getExternalDocs();
if (intoExternalDocs != null) {
merge(fromExternalDocs, intoExternalDocs);
} else {
into.setExternalDocs(OASCopy.copy(fromExternalDocs));
}
}
String fromOperationId = from.getOperationId();
if (fromOperationId != null) {
into.setOperationId(fromOperationId);
}
List<Parameter> fromParameters = from.getParameters();
if (fromParameters != null) {
List<Parameter> intoParameters = into.getParameters();
if (intoParameters != null) {
for (Parameter item : fromParameters) {
if (!intoParameters.stream().anyMatch(i -> OASEquals.equals(i, item))) {
into.addParameter(OASCopy.copy(item));
}
}
} else {
for (Parameter item : fromParameters) {
into.addParameter(OASCopy.copy(item));
}
}
}
RequestBody fromRequestBody = from.getRequestBody();
if (fromRequestBody != null) {
RequestBody intoRequestBody = into.getRequestBody();
if (intoRequestBody != null) {
merge(fromRequestBody, intoRequestBody);
} else {
into.setRequestBody(OASCopy.copy(fromRequestBody));
}
}
APIResponses fromResponses = from.getResponses();
if (fromResponses != null) {
APIResponses intoResponses = into.getResponses();
if (intoResponses != null) {
merge(fromResponses, intoResponses);
} else {
into.setResponses(OASCopy.copy(fromResponses));
}
}
Map<String, Callback> fromCallbacks = from.getCallbacks();
if (fromCallbacks != null) {
Map<String, Callback> intoCallbacks = into.getCallbacks();
if (intoCallbacks != null) {
for (Entry<String, Callback> entry : fromCallbacks.entrySet()) {
if (intoCallbacks.containsKey(entry.getKey())) {
merge(entry.getValue(), intoCallbacks.get(entry.getKey()));
} else {
into.addCallback(entry.getKey(), OASCopy.copy(entry.getValue()));
}
}
} else {
for (Entry<String, Callback> entry : fromCallbacks.entrySet()) {
into.addCallback(entry.getKey(), OASCopy.copy(entry.getValue()));
}
}
}
Boolean fromDeprecated = from.getDeprecated();
if (fromDeprecated != null) {
into.setDeprecated(fromDeprecated);
}
List<SecurityRequirement> fromSecurity = from.getSecurity();
if (fromSecurity != null) {
List<SecurityRequirement> intoSecurity = into.getSecurity();
if (intoSecurity != null) {
for (SecurityRequirement item : fromSecurity) {
if (!intoSecurity.stream().anyMatch(i -> OASEquals.equals(i, item))) {
into.addSecurityRequirement(OASCopy.copy(item));
}
}
} else {
for (SecurityRequirement item : fromSecurity) {
into.addSecurityRequirement(OASCopy.copy(item));
}
}
}
List<Server> fromServers = from.getServers();
if (fromServers != null) {
List<Server> intoServers = into.getServers();
if (intoServers != null) {
for (Server item : fromServers) {
if (!intoServers.stream().anyMatch(i -> OASEquals.equals(i, item))) {
into.addServer(OASCopy.copy(item));
}
}
} else {
for (Server item : fromServers) {
into.addServer(OASCopy.copy(item));
}
}
}
Map<String, Object> extensions = from.getExtensions();
if (extensions != null) {
for (Entry<String, Object> entry : extensions.entrySet()) {
into.addExtension(entry.getKey(), entry.getValue());
}
}
}
}
use of org.eclipse.microprofile.openapi.models.servers.Server in project empoa by OpenAPITools.
the class OASMerge method merge.
public static void merge(Link from, Link into) {
if (into == null) {
throw new IllegalArgumentException("Link 'into' parameter can not be null");
}
if (from != null) {
String fromRef = from.getRef();
if (fromRef != null) {
into.setRef(fromRef);
}
Server fromServer = from.getServer();
if (fromServer != null) {
Server intoServer = into.getServer();
if (intoServer != null) {
merge(fromServer, intoServer);
} else {
into.setServer(OASCopy.copy(fromServer));
}
}
String fromOperationRef = from.getOperationRef();
if (fromOperationRef != null) {
into.setOperationRef(fromOperationRef);
}
Object fromRequestBody = from.getRequestBody();
if (fromRequestBody != null) {
into.setRequestBody(fromRequestBody);
}
String fromOperationId = from.getOperationId();
if (fromOperationId != null) {
into.setOperationId(fromOperationId);
}
Map<String, Object> fromParameters = from.getParameters();
if (fromParameters != null) {
for (Entry<String, Object> entry : fromParameters.entrySet()) {
into.addParameter(entry.getKey(), entry.getValue());
}
}
String fromDescription = from.getDescription();
if (fromDescription != null) {
into.setDescription(fromDescription);
}
Map<String, Object> extensions = from.getExtensions();
if (extensions != null) {
for (Entry<String, Object> entry : extensions.entrySet()) {
into.addExtension(entry.getKey(), entry.getValue());
}
}
}
}
use of org.eclipse.microprofile.openapi.models.servers.Server in project empoa by OpenAPITools.
the class OASAccept method accept.
public static void accept(OASVisitor visitor, PathItem pathItem, String jsonPath) {
if (pathItem != null) {
OASVisitResult result = visitor.visit(pathItem, jsonPath);
if (result == OASVisitResult.CONTINUE) {
List<Server> servers = pathItem.getServers();
if (servers != null) {
for (int i = 0; i < servers.size(); i++) {
Server item = servers.get(i);
accept(visitor, item, jsonPath + ".servers[" + i + "]");
}
}
List<Parameter> parameters = pathItem.getParameters();
if (parameters != null) {
for (int i = 0; i < parameters.size(); i++) {
Parameter item = parameters.get(i);
accept(visitor, item, jsonPath + ".parameters[" + i + "]");
}
}
accept(visitor, pathItem.getGET(), jsonPath + ".get");
accept(visitor, pathItem.getPUT(), jsonPath + ".put");
accept(visitor, pathItem.getPOST(), jsonPath + ".post");
accept(visitor, pathItem.getDELETE(), jsonPath + ".delete");
accept(visitor, pathItem.getOPTIONS(), jsonPath + ".options");
accept(visitor, pathItem.getHEAD(), jsonPath + ".head");
accept(visitor, pathItem.getPATCH(), jsonPath + ".patch");
accept(visitor, pathItem.getTRACE(), jsonPath + ".trace");
}
}
}
use of org.eclipse.microprofile.openapi.models.servers.Server in project empoa by OpenAPITools.
the class OASCopyTest method testCopyServer.
@Test
public void testCopyServer() throws Exception {
Server original1 = OASFactory.createServer();
Server copy1 = OASCopy.copy(original1);
assertThat(copy1).isNotSameAs(original1);
assertThat(OASEquals.equals(original1, copy1)).isTrue();
Server original2 = OASTestFactory.createTestServer();
Server copy2 = OASCopy.copy(original2);
assertThat(copy2).isNotSameAs(original2);
assertThat(OASEquals.equals(original2, copy2)).isTrue();
}
use of org.eclipse.microprofile.openapi.models.servers.Server in project empoa by OpenAPITools.
the class AbstractElementSerializerTest method testServerToJson.
@Test
public void testServerToJson() throws Exception {
Server server = OASElement.createServer();
String json = convertToJson(server);
assertThatJson(json).isEqualTo("" + "{\n" + " \"description\": \"Some description\"\n" + "}");
}
Aggregations