use of io.swagger.v3.jaxrs2.Reader in project swagger-core by swagger-api.
the class ReaderTest method testResolveDuplicatedOperationIdMethodName.
@Test(description = "Get a Duplicated Operation Id with same id as method name")
public void testResolveDuplicatedOperationIdMethodName() {
Reader reader = new Reader(new OpenAPI());
OpenAPI openAPI = reader.read(DuplicatedOperationMethodNameResource.class);
Paths paths = openAPI.getPaths();
assertNotNull(paths);
Operation firstOperation = paths.get("/1").getGet();
Operation secondOperation = paths.get("/2").getGet();
Operation secondPostOperation = paths.get("/2").getPost();
Operation thirdPostOperation = paths.get("/3").getPost();
assertNotNull(firstOperation);
assertNotNull(secondOperation);
assertNotNull(secondPostOperation);
assertNotNull(thirdPostOperation);
assertNotEquals(firstOperation.getOperationId(), secondOperation.getOperationId());
assertNotEquals(secondOperation.getOperationId(), secondPostOperation.getOperationId());
assertNotEquals(secondPostOperation.getOperationId(), thirdPostOperation.getOperationId());
Operation thirdOperation = paths.get("/3").getGet();
Operation fourthOperation = paths.get("/4").getGet();
assertNotNull(thirdOperation);
assertNotNull(fourthOperation);
assertNotEquals(thirdOperation.getOperationId(), fourthOperation.getOperationId());
}
use of io.swagger.v3.jaxrs2.Reader in project swagger-core by swagger-api.
the class JaxrsOpenApiContext method buildReader.
@Override
protected OpenApiReader buildReader(OpenAPIConfiguration openApiConfiguration) throws Exception {
OpenApiReader reader;
if (StringUtils.isNotBlank(openApiConfiguration.getReaderClass())) {
Class cls = getClass().getClassLoader().loadClass(openApiConfiguration.getReaderClass());
reader = (OpenApiReader) cls.newInstance();
} else {
reader = new Reader();
}
if (reader instanceof Reader) {
((Reader) reader).setApplication(app);
}
reader.setConfiguration(openApiConfiguration);
return reader;
}
use of io.swagger.v3.jaxrs2.Reader in project swagger-core by swagger-api.
the class ParameterDeserializer method deserialize.
@Override
public Parameter deserialize(JsonParser jp, DeserializationContext ctxt) throws IOException {
Parameter result = null;
JsonNode node = jp.getCodec().readTree(jp);
JsonNode sub = node.get("$ref");
JsonNode inNode = node.get("in");
JsonNode desc = node.get("description");
if (sub != null) {
result = new Parameter().$ref(sub.asText());
if (desc != null && openapi31) {
result.description(desc.asText());
}
} else if (inNode != null) {
String in = inNode.asText();
ObjectReader reader = null;
ObjectMapper mapper = null;
if (openapi31) {
mapper = Json31.mapper();
} else {
mapper = Json.mapper();
}
if ("query".equals(in)) {
reader = mapper.readerFor(QueryParameter.class);
} else if ("header".equals(in)) {
reader = mapper.readerFor(HeaderParameter.class);
} else if ("path".equals(in)) {
reader = mapper.readerFor(PathParameter.class);
} else if ("cookie".equals(in)) {
reader = mapper.readerFor(CookieParameter.class);
}
if (reader != null) {
result = reader.with(DeserializationFeature.READ_ENUMS_USING_TO_STRING).readValue(node);
}
}
return result;
}
use of io.swagger.v3.jaxrs2.Reader in project swagger-core by swagger-api.
the class JsonIdentityTest method testJsonIdentity.
@Test(description = "Test JsonIdentity")
public void testJsonIdentity() throws IOException {
Reader reader = new Reader(new OpenAPI());
OpenAPI openAPI = reader.read(JsonIdentityResource.class);
SerializationMatchers.assertEqualsToYaml(openAPI, EXPECTED_YAML);
}
use of io.swagger.v3.jaxrs2.Reader in project swagger-core by swagger-api.
the class PetResourceTest method testSetOfClasses.
@Test(description = "Test a full set of classes")
public void testSetOfClasses() {
final Reader reader = new Reader(new OpenAPI());
final OpenAPI openAPI = reader.read(getSetOfClassesFromPackage(PETSTORE_PACKAGE));
assertNotNull(openAPI);
try {
SerializationMatchers.assertEqualsToYaml(openAPI, getOpenAPIAsString(PETSTORE_SOURCE + "FullPetResource.yaml"));
} catch (IOException e) {
fail();
}
}
Aggregations