/** * Creates a Swagger2MarkupConverter.Builder from a given Swagger YAML or JSON reader. * * @param swaggerReader the Swagger YAML or JSON reader. * @return a Swagger2MarkupConverter */ public static Builder from(Reader swaggerReader) { Validate.notNull(swaggerReader, "swaggerReader must not be null"); Swagger swagger; try { swagger = new SwaggerParser().parse(IOUtils.toString(swaggerReader)); } catch (IOException e) { throw new RuntimeException("Swagger source can not be parsed", e); } if (swagger == null) throw new IllegalArgumentException("Swagger source is in a wrong format"); return new Builder(swagger); }
public Swagger parse(String swaggerAsString) { return parse(swaggerAsString, null); }
private Swagger transformV2(String content, Map<String, String> config) { Swagger swagger = new SwaggerParser().parse(content); if (swagger != null && config != null && config.get("tryItURL") != null) { URI newURI = URI.create(config.get("tryItURL")); swagger.setSchemes(Collections.singletonList(Scheme.forValue(newURI.getScheme()))); swagger.setHost((newURI.getPort() != -1) ? newURI.getHost() + ':' + newURI.getPort() : newURI.getHost()); swagger.setBasePath((newURI.getRawPath().isEmpty()) ? "/" : newURI.getRawPath()); } return swagger; }
private Swagger transformV2(String content, Map<String, String> config) { Swagger swagger = new SwaggerParser().parse(content); if (swagger != null && config != null && config.get("tryItURL") != null) { URI newURI = URI.create(config.get("tryItURL")); swagger.setSchemes(Collections.singletonList(Scheme.forValue(newURI.getScheme()))); swagger.setHost((newURI.getPort() != -1) ? newURI.getHost() + ':' + newURI.getPort() : newURI.getHost()); swagger.setBasePath((newURI.getRawPath().isEmpty()) ? "/" : newURI.getRawPath()); } return swagger; }
/** * Creates a Swagger2MarkupConverter.Builder from a given Swagger YAML or JSON reader. * * @param swaggerReader the Swagger YAML or JSON reader. * @return a Swagger2MarkupConverter */ public static Builder from(Reader swaggerReader) { Validate.notNull(swaggerReader, "swaggerReader must not be null"); Swagger swagger; try { swagger = new SwaggerParser().parse(IOUtils.toString(swaggerReader)); } catch (IOException e) { throw new RuntimeException("Swagger source can not be parsed", e); } if (swagger == null) throw new IllegalArgumentException("Swagger source is in a wrong format"); return new Builder(swagger); }
@Override public Map<String, String> getScopesFromSecurityDefinition(String resourceConfigJSON) throws APIManagementException { SwaggerParser swaggerParser = new SwaggerParser(); Swagger swagger = swaggerParser.parse(resourceConfigJSON); Map<String, String> scopes = new HashMap<>(); Map<String, SecuritySchemeDefinition> securityDefinitions = swagger.getSecurityDefinitions(); if (securityDefinitions != null) { for (Map.Entry<String, SecuritySchemeDefinition> securitySchemeDefinitionEntry : securityDefinitions.entrySet()) { if (securitySchemeDefinitionEntry.getValue() instanceof OAuth2Definition) { OAuth2Definition securityDefinition = (OAuth2Definition) securitySchemeDefinitionEntry.getValue(); if (securityDefinition != null) { scopes.putAll(securityDefinition.getScopes()); } } } } return scopes; }
@Override public Map<String, String> getScopesFromSecurityDefinition(String resourceConfigJSON) throws APIManagementException { SwaggerParser swaggerParser = new SwaggerParser(); Swagger swagger = swaggerParser.parse(resourceConfigJSON); Map<String, String> scopes = new HashMap<>(); Map<String, SecuritySchemeDefinition> securityDefinitions = swagger.getSecurityDefinitions(); if (securityDefinitions != null) { for (Map.Entry<String, SecuritySchemeDefinition> securitySchemeDefinitionEntry : securityDefinitions.entrySet()) { if (securitySchemeDefinitionEntry.getValue() instanceof OAuth2Definition) { OAuth2Definition securityDefinition = (OAuth2Definition) securitySchemeDefinitionEntry.getValue(); if (securityDefinition != null) { scopes.putAll(securityDefinition.getScopes()); } } } } return scopes; }
@Override public List<String> getGlobalAssignedScopes(String resourceConfigJson) throws APIManagementException { SwaggerParser swaggerParser = new SwaggerParser(); Swagger swagger = swaggerParser.parse(resourceConfigJson); String securityName = getOauthSecurityName(swagger); Set<String> scopes = new HashSet<>(); List<SecurityRequirement> securityRequirements = swagger.getSecurity(); if (securityRequirements != null) { for (SecurityRequirement securityRequirement : securityRequirements) { Map<String, List<String>> requirementMap = securityRequirement.getRequirements(); if (requirementMap.containsKey(securityName)) { scopes.addAll(requirementMap.get(securityName)); } } } return new ArrayList<>(scopes); }
@Override public List<String> getGlobalAssignedScopes(String resourceConfigJson) throws APIManagementException { SwaggerParser swaggerParser = new SwaggerParser(); Swagger swagger = swaggerParser.parse(resourceConfigJson); String securityName = getOauthSecurityName(swagger); Set<String> scopes = new HashSet<>(); List<SecurityRequirement> securityRequirements = swagger.getSecurity(); if (securityRequirements != null) { for (SecurityRequirement securityRequirement : securityRequirements) { Map<String, List<String>> requirementMap = securityRequirement.getRequirements(); if (requirementMap.containsKey(securityName)) { scopes.addAll(requirementMap.get(securityName)); } } } return new ArrayList<>(scopes); }
/** * The convert method provides the functionality to convert the provided {@link File} into * a list of {@link RestApplication}. * @param file The file which will be converted to one or more {@link RestApplication}. * @param generateResponse Will generate a default response if true. No response will be generated if false. * @return A list of {@link RestApplication} based on the provided file. */ @Override public List<RestApplication> convert(final File file, final boolean generateResponse){ final String swaggerContent = FileUtility.getFileContent(file); final Swagger swagger = new SwaggerParser().parse(swaggerContent); final RestApplication restApplication = convertSwagger(swagger, generateResponse); return Arrays.asList(restApplication); }
public UnifiedXmlDataShapeGeneratorRequestShapeTest() throws IOException { try (InputStream in = UnifiedXmlDataShapeGenerator.class.getResourceAsStream("/swagger/petstore.swagger.json")) { swaggerSpecification = IOUtils.toString(in, StandardCharsets.UTF_8); } final SwaggerParser parser = new SwaggerParser(); swagger = parser.parse(swaggerSpecification); }
@Override public String updateScopesOnSwaggerDefinition(String resourceConfigJSON, Scope scope) { SwaggerParser swaggerParser = new SwaggerParser(); Swagger swagger = swaggerParser.parse(resourceConfigJSON); Map<String, SecuritySchemeDefinition> securitySchemeDefinitionMap = swagger.getSecurityDefinitions(); if (securitySchemeDefinitionMap != null && !securitySchemeDefinitionMap.isEmpty()) { OAuth2Definition oAuth2Definition = (OAuth2Definition) securitySchemeDefinitionMap.get(APIMgtConstants .OAUTH2SECURITY); if (oAuth2Definition != null) { // Removing Scope from Swagger SecurityDefinition Map<String, String> scopeMap = oAuth2Definition.getScopes(); if (scopeMap != null && scopeMap.containsKey(scope.getName())) { scopeMap.replace(scope.getName(), scope.getDescription()); } } } return Json.pretty(swagger); }
@Override public String updateScopesOnSwaggerDefinition(String resourceConfigJSON, Scope scope) { SwaggerParser swaggerParser = new SwaggerParser(); Swagger swagger = swaggerParser.parse(resourceConfigJSON); Map<String, SecuritySchemeDefinition> securitySchemeDefinitionMap = swagger.getSecurityDefinitions(); if (securitySchemeDefinitionMap != null && !securitySchemeDefinitionMap.isEmpty()) { OAuth2Definition oAuth2Definition = (OAuth2Definition) securitySchemeDefinitionMap.get(APIMgtConstants .OAUTH2SECURITY); if (oAuth2Definition != null) { // Removing Scope from Swagger SecurityDefinition Map<String, String> scopeMap = oAuth2Definition.getScopes(); if (scopeMap != null && scopeMap.containsKey(scope.getName())) { scopeMap.replace(scope.getName(), scope.getDescription()); } } } return Json.pretty(swagger); }
public UnifiedXmlDataShapeGeneratorRequestShapeTest() throws IOException { final String specification; try (InputStream in = UnifiedXmlDataShapeGenerator.class.getResourceAsStream("/swagger/petstore.swagger.json")) { specification = IOUtils.toString(in, StandardCharsets.UTF_8); } json = (ObjectNode) Json.reader().readTree(specification); final SwaggerParser parser = new SwaggerParser(); swagger = parser.parse(specification); }
public UnifiedXmlDataShapeGeneratorRequestShapeTest() throws IOException { final String specification; try (InputStream in = UnifiedXmlDataShapeGenerator.class.getResourceAsStream("/swagger/petstore.swagger.json")) { specification = IOUtils.toString(in, StandardCharsets.UTF_8); } json = (ObjectNode) Json.reader().readTree(specification); final SwaggerParser parser = new SwaggerParser(); swagger = parser.parse(specification); }
private NewApiEntity prepareV2(ImportSwaggerDescriptorEntity swaggerDescriptor) { NewApiEntity apiEntity; logger.info("Trying to loading a Swagger descriptor in v2"); if (swaggerDescriptor.getType() == ImportSwaggerDescriptorEntity.Type.INLINE) { apiEntity = mapSwagger12ToNewApi(new SwaggerParser().parse(swaggerDescriptor.getPayload())); } else { apiEntity = mapSwagger12ToNewApi(new SwaggerParser().read(swaggerDescriptor.getPayload())); } return apiEntity; }
private NewApiEntity prepareV2(ImportSwaggerDescriptorEntity swaggerDescriptor) { NewApiEntity apiEntity; logger.info("Trying to loading a Swagger descriptor in v2"); if (swaggerDescriptor.getType() == ImportSwaggerDescriptorEntity.Type.INLINE) { apiEntity = mapSwagger12ToNewApi(new SwaggerParser().parse(swaggerDescriptor.getPayload())); } else { apiEntity = mapSwagger12ToNewApi(new SwaggerParser().read(swaggerDescriptor.getPayload())); } return apiEntity; }
@Test public void shouldCreatePropertyParametersFromPetstoreSwagger() throws IOException { final String specification = resource("/swagger/petstore.swagger.json"); final Swagger swagger = new SwaggerParser().parse(specification); final Parameter petIdPathParameter = swagger.getPath("/pet/{petId}").getGet().getParameters().get(0); final Optional<ConfigurationProperty> maybeConfigurationProperty = BaseSwaggerConnectorGenerator .createPropertyFromParameter(petIdPathParameter); final ConfigurationProperty expected = new ConfigurationProperty.Builder()// .componentProperty(false)// .deprecated(false)// .description("ID of pet to return")// .displayName("petId")// .group("producer")// .javaType(Long.class.getName())// .kind("property")// .required(true)// .secret(false)// .type("integer")// .build(); assertThat(maybeConfigurationProperty).hasValue(expected); }
@Test public void shouldCreatePropertyParametersFromPetstoreSwagger() throws IOException { final String specification = resource("/swagger/petstore.swagger.json"); final Swagger swagger = new SwaggerParser().parse(specification); final Parameter petIdPathParameter = swagger.getPath("/pet/{petId}").getGet().getParameters().get(0); final Optional<ConfigurationProperty> maybeConfigurationProperty = BaseSwaggerConnectorGenerator .createPropertyFromParameter(petIdPathParameter); final ConfigurationProperty expected = new ConfigurationProperty.Builder()// .componentProperty(false)// .deprecated(false)// .description("ID of pet to return")// .displayName("petId")// .group("producer")// .javaType(Long.class.getName())// .kind("property")// .required(true)// .secret(false)// .type("integer")// .build(); assertThat(maybeConfigurationProperty).hasValue(expected); }
@Test public void shouldCreatePropertyParametersFromPetstoreSwagger() throws IOException { final String specification = resource("/swagger/petstore.swagger.json"); final Swagger swagger = new SwaggerParser().parse(specification); final Parameter petIdPathParameter = swagger.getPath("/pet/{petId}").getGet().getParameters().get(0); final Optional<ConfigurationProperty> maybeConfigurationProperty = BaseSwaggerConnectorGenerator .createPropertyFromParameter(petIdPathParameter); final ConfigurationProperty expected = new ConfigurationProperty.Builder()// .componentProperty(false)// .deprecated(false)// .description("ID of pet to return")// .displayName("petId")// .group("producer")// .javaType(Long.class.getName())// .kind("property")// .required(true)// .secret(false)// .type("integer")// .build(); assertThat(maybeConfigurationProperty).hasValue(expected); }