/** * Builds the overview MarkupDocument. * * @return the overview MarkupDocument */ @Override public MarkupDocBuilder apply(MarkupDocBuilder markupDocBuilder, OverviewDocument.Parameters params) { Swagger swagger = params.swagger; Info info = swagger.getInfo(); buildDocumentTitle(markupDocBuilder, info.getTitle()); applyOverviewDocumentExtension(new Context(Position.DOCUMENT_BEFORE, markupDocBuilder)); buildOverviewTitle(markupDocBuilder, labels.getLabel(Labels.OVERVIEW)); applyOverviewDocumentExtension(new Context(Position.DOCUMENT_BEGIN, markupDocBuilder)); buildDescriptionParagraph(markupDocBuilder, info.getDescription()); buildVersionInfoSection(markupDocBuilder, info); buildContactInfoSection(markupDocBuilder, info.getContact()); buildLicenseInfoSection(markupDocBuilder, info); buildUriSchemeSection(markupDocBuilder, swagger); buildTagsSection(markupDocBuilder, swagger.getTags()); buildConsumesSection(markupDocBuilder, swagger.getConsumes()); buildProducesSection(markupDocBuilder, swagger.getProduces()); buildExternalDocsSection(markupDocBuilder, swagger.getExternalDocs()); applyOverviewDocumentExtension(new Context(Position.DOCUMENT_END, markupDocBuilder)); applyOverviewDocumentExtension(new Context(Position.DOCUMENT_AFTER, markupDocBuilder)); return markupDocBuilder; }
private void correctInfo() { Info info = swagger.getInfo(); if (info == null) { info = new Info(); swagger.setInfo(info); } if (StringUtils.isEmpty(info.getTitle())) { info.setTitle("swagger definition for " + cls.getName()); } if (StringUtils.isEmpty(info.getVersion())) { info.setVersion("1.0.0"); } setJavaInterface(info, cls); }
private void initOperations() { if (swagger.getPaths() == null) { LOGGER.warn(swagger.getInfo().getTitle() + " with path " + swagger.getBasePath() + " is an empty interface, please delete it or fill with one method!"); return;
private String getApiName(Swagger swagger, String fileName) { String title = swagger.getInfo().getTitle(); return StringUtils.isNotBlank(title) ? title : fileName; }
/** * validate configuration according to swagger spec and plugin requirement * * @param apiSource * @throws GenerateException */ private void validateConfiguration(ApiSource apiSource) throws GenerateException { if (apiSource == null) { throw new GenerateException("You do not configure any apiSource!"); } else if (apiSource.getInfo() == null) { throw new GenerateException("`<info>` is required by Swagger Spec."); } if (apiSource.getInfo().getTitle() == null) { throw new GenerateException("`<info><title>` is required by Swagger Spec."); } if (apiSource.getInfo().getVersion() == null) { throw new GenerateException("`<info><version>` is required by Swagger Spec."); } if (apiSource.getInfo().getLicense() != null && apiSource.getInfo().getLicense().getName() == null) { throw new GenerateException("`<info><license><name>` is required by Swagger Spec."); } if (apiSource.getLocations() == null) { throw new GenerateException("<locations> is required by this plugin."); } }
private String getApplicationName(final Swagger swagger){ if(swagger.getInfo() != null && swagger.getInfo().getTitle() != null){ return swagger.getInfo().getTitle(); } else if(swagger.getHost() != null){ return swagger.getHost(); } else if(swagger.getBasePath() != null){ return swagger.getBasePath(); } throw new IllegalArgumentException("Unable to extract application name " + "from the following swagger config: " + swagger); }
private void correctInfo() { Info info = swagger.getInfo(); if (info == null) { info = new Info(); swagger.setInfo(info); } if (StringUtils.isEmpty(info.getTitle())) { info.setTitle("swagger definition for " + cls.getName()); } if (StringUtils.isEmpty(info.getVersion())) { info.setVersion("1.0.0"); } setJavaInterface(info, cls); }
@Override protected final String determineConnectorName(final ConnectorTemplate connectorTemplate, final ConnectorSettings connectorSettings) { final SwaggerModelInfo modelInfo = parseSpecification(connectorSettings, false); if (!modelInfo.getErrors().isEmpty()) { throw new IllegalArgumentException("Given OpenAPI specification contains errors: " + modelInfo); } final Swagger swagger = modelInfo.getModel(); final Info info = swagger.getInfo(); if (info == null) { return super.determineConnectorName(connectorTemplate, connectorSettings); } final String title = info.getTitle(); if (title == null) { return super.determineConnectorName(connectorTemplate, connectorSettings); } return title; }
@Override protected final String determineConnectorName(final ConnectorTemplate connectorTemplate, final ConnectorSettings connectorSettings) { final SwaggerModelInfo modelInfo = parseSpecification(connectorSettings, false); if (!modelInfo.getErrors().isEmpty()) { throw new IllegalArgumentException("Given Swagger specification contains errors: " + modelInfo); } final Swagger swagger = modelInfo.getModel(); final Info info = swagger.getInfo(); if (info == null) { return super.determineConnectorName(connectorTemplate, connectorSettings); } final String title = info.getTitle(); if (title == null) { return super.determineConnectorName(connectorTemplate, connectorSettings); } return title; }
@Override protected final String determineConnectorName(final ConnectorTemplate connectorTemplate, final ConnectorSettings connectorSettings) { final SwaggerModelInfo modelInfo = parseSpecification(connectorSettings, APIValidationContext.NONE); if (!modelInfo.getErrors().isEmpty()) { throw new IllegalArgumentException("Given OpenAPI specification contains errors: " + modelInfo); } final Swagger swagger = modelInfo.getModel(); final Info info = swagger.getInfo(); if (info == null) { return super.determineConnectorName(connectorTemplate, connectorSettings); } final String title = info.getTitle(); if (title == null) { return super.determineConnectorName(connectorTemplate, connectorSettings); } return title; }
@Override public void generate(Swagger swagger) throws GenerationException { Config config = Config.fromContext(context); File outputFile = new File(context.getOutputDirectory(), swagger.getInfo().getTitle() + " Client.cs"); try { new NSwagGenerator(config).generate(config.getNSwagRunFile(swagger, Output.CS_CLIENT, outputFile)); } catch (IOException e) { throw new GenerationException("Failed to run NSwag Generation", e); } }
private NewApiEntity mapSwagger12ToNewApi(Swagger swagger) { if (swagger == null || swagger.getInfo() == null) { return null; } NewApiEntity apiEntity = new NewApiEntity(); apiEntity.setName(swagger.getInfo().getTitle()); apiEntity.setDescription(swagger.getInfo().getDescription()); apiEntity.setVersion(swagger.getInfo().getVersion()); String scheme = (swagger.getSchemes() == null || swagger.getSchemes().isEmpty()) ? defaultScheme : swagger.getSchemes().iterator().next().toValue(); apiEntity.setEndpoint(scheme + "://" + swagger.getHost() + swagger.getBasePath()); apiEntity.setPaths(new ArrayList<>( swagger.getPaths().keySet() .stream() .map(path -> path.replaceAll("\\{(.[^/]*)\\}", ":$1")) .collect(Collectors.toList()))); return apiEntity; }
@Override public void generate(Swagger swagger) throws GenerationException { Config config = Config.fromContext(context); File outputFile = new File(context.getOutputDirectory(), swagger.getInfo().getTitle() + " Client.js"); try { new NSwagGenerator(config).generate(config.getNSwagRunFile(swagger, Output.TS_CLIENT, outputFile)); } catch (IOException e) { throw new GenerationException("Failed to run NSwag Generation", e); } }
private NewApiEntity mapSwagger12ToNewApi(Swagger swagger) { if (swagger == null || swagger.getInfo() == null) { return null; } NewApiEntity apiEntity = new NewApiEntity(); apiEntity.setName(swagger.getInfo().getTitle()); apiEntity.setDescription(swagger.getInfo().getDescription()); apiEntity.setVersion(swagger.getInfo().getVersion()); String scheme = (swagger.getSchemes() == null || swagger.getSchemes().isEmpty()) ? defaultScheme : swagger.getSchemes().iterator().next().toValue(); apiEntity.setEndpoint(scheme + "://" + swagger.getHost() + swagger.getBasePath()); apiEntity.setPaths(new ArrayList<>( swagger.getPaths().keySet() .stream() .map(path -> path.replaceAll("\\{(.[^/]*)\\}", ":$1")) .collect(Collectors.toList()))); return apiEntity; }
@Override public void generate(Swagger swagger) throws GenerationException { Config config = Config.fromContext(context); File outputFile = new File(context.getOutputDirectory(), swagger.getInfo().getTitle() + "Controller.cs"); try { new NSwagGenerator(config).generate(config.getNSwagRunFile(swagger, Output.CS_SERVER, outputFile)); } catch (IOException e) { throw new GenerationException("Failed to run NSwag Generation", e); } }
@Override protected final String determineConnectorName(final ConnectorTemplate connectorTemplate, final ConnectorSettings connectorSettings) { final Swagger swagger = parseSpecification(connectorSettings, false).getModel(); final Info info = swagger.getInfo(); if (info == null) { return super.determineConnectorName(connectorTemplate, connectorSettings); } final String title = info.getTitle(); if (title == null) { return super.determineConnectorName(connectorTemplate, connectorSettings); } return title; }
/** * Adds additional information to {@link Service} object. * * @throws OpenApiConversionException */ private void createServiceInfoFromOpenApi( Service.Builder serviceBuilder, List<OpenApiFile> openApiFiles) throws OpenApiConversionException { for (OpenApiFile openApiFile : openApiFiles) { //TODO(user): need better way to resolve conflicts here if (openApiFile.swagger().getInfo() != null) { Info info = openApiFile.swagger().getInfo(); if (info.getTitle() != null) { serviceBuilder.setTitle(info.getTitle()); } if (info.getDescription() != null) { serviceBuilder.getDocumentationBuilder().setSummary(info.getDescription()); } } } }
public Info convert(io.swagger.models.Info v2Info) { Info info = new Info(); info.setContact(convert(v2Info.getContact())); info.setDescription(v2Info.getDescription()); info.setLicense(convert(v2Info.getLicense())); info.setTermsOfService(v2Info.getTermsOfService()); info.setTitle(v2Info.getTitle()); info.setVersion(v2Info.getVersion()); info.setExtensions(convert(v2Info.getVendorExtensions())); return info; }
public Info convert(io.swagger.models.Info v2Info) { Info info = new Info(); info.setContact(convert(v2Info.getContact())); info.setDescription(v2Info.getDescription()); info.setLicense(convert(v2Info.getLicense())); info.setTermsOfService(v2Info.getTermsOfService()); info.setTitle(v2Info.getTitle()); info.setVersion(v2Info.getVersion()); info.setExtensions(convert(v2Info.getVendorExtensions())); return info; }
public Info convert(io.swagger.models.Info v2Info) { Info info = new Info(); info.setContact(convert(v2Info.getContact())); info.setDescription(v2Info.getDescription()); info.setLicense(convert(v2Info.getLicense())); info.setTermsOfService(v2Info.getTermsOfService()); info.setTitle(v2Info.getTitle()); info.setVersion(v2Info.getVersion()); info.setExtensions(convert(v2Info.getVendorExtensions())); return info; }