use of io.swagger.models.Info in project incubator-servicecomb-java-chassis by apache.
the class SwaggerGenerator method correctInfo.
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);
}
use of io.swagger.models.Info in project apiee by phillip-kruger.
the class SwaggerCache method createSwagger.
private Swagger createSwagger(final Set<Class<?>> classes, final URL url) {
Swagger swagger = new Reader(new Swagger()).read(classes);
Info info = getSwaggerInfo();
if (info != null)
swagger.setInfo(info);
String consumes = whiteLabel.getProperty(CONSUMES, null);
if (isSet(consumes))
swagger.setConsumes(toList(consumes));
String produces = whiteLabel.getProperty(PRODUCES, null);
if (isSet(produces))
swagger.setProduces(toList(produces));
String basePath = whiteLabel.getProperty(BASE_PATH, getBasePath(swagger.getBasePath(), url));
if (isSet(basePath))
swagger.setBasePath(basePath);
String schemes = whiteLabel.getProperty(SCHEMES, url.getProtocol().toUpperCase());
if (isSet(schemes))
swagger.setSchemes(toSchemeList(schemes));
String host = whiteLabel.getProperty(HOST, url.getHost() + DOUBLE_POINT + url.getPort());
if (isSet(host))
swagger.setHost(host);
String tags = whiteLabel.getProperty(TAGS, null);
if (isSet(tags))
swagger.setTags(toTagList(tags));
return swagger;
}
use of io.swagger.models.Info in project herd by FINRAOS.
the class SwaggerGenMojo method getSwagger.
/**
* Gets a new Swagger metadata.
*
* @return the Swagger metadata.
* @throws MojoExecutionException if any problems were encountered.
*/
private Swagger getSwagger() throws MojoExecutionException {
getLog().debug("Creating Swagger Metadata");
// Set up initial Swagger metadata.
Swagger swagger = new Swagger();
swagger.setInfo(new Info().title(title).version(version));
swagger.setBasePath(basePath);
// Set the schemes.
if (!CollectionUtils.isEmpty(schemeParameters)) {
List<Scheme> schemes = new ArrayList<>();
for (String schemeParameter : schemeParameters) {
Scheme scheme = Scheme.forValue(schemeParameter);
if (scheme == null) {
throw new MojoExecutionException("Invalid scheme specified: " + schemeParameter);
}
schemes.add(scheme);
}
swagger.setSchemes(schemes);
}
// Add authorization support if specified.
if (authType != null) {
// Find the definition for the user specified type.
SecuritySchemeDefinition securitySchemeDefinition = null;
for (SecuritySchemeDefinition possibleDefinition : SECURITY_SCHEME_DEFINITIONS) {
if (possibleDefinition.getType().equalsIgnoreCase(authType)) {
securitySchemeDefinition = possibleDefinition;
break;
}
}
// If we found a match, set it on the swagger object.
if (securitySchemeDefinition != null) {
// Come up with an authentication name for easy identification (e.g. basicAuthentication, etc.).
String securityName = securitySchemeDefinition.getType() + "Authentication";
// Add the security definition.
swagger.addSecurityDefinition(securityName, securitySchemeDefinition);
// Add the security for everything based on the name of the definition.
SecurityRequirement securityRequirement = new SecurityRequirement();
securityRequirement.requirement(securityName);
swagger.addSecurity(securityRequirement);
}
}
// Use default paths and definitions.
swagger.setPaths(new TreeMap<>());
swagger.setDefinitions(new TreeMap<>());
return swagger;
}
use of io.swagger.models.Info in project syndesis by syndesisio.
the class BaseSwaggerConnectorGenerator method determineConnectorDescription.
@Override
protected final String determineConnectorDescription(final ConnectorTemplate connectorTemplate, final ConnectorSettings connectorSettings) {
final Swagger swagger = parseSpecification(connectorSettings, false).getModel();
final Info info = swagger.getInfo();
if (info == null) {
return super.determineConnectorDescription(connectorTemplate, connectorSettings);
}
final String description = info.getDescription();
if (description == null) {
return super.determineConnectorDescription(connectorTemplate, connectorSettings);
}
return description;
}
use of io.swagger.models.Info in project syndesis by syndesisio.
the class BaseSwaggerConnectorGenerator method info.
@Override
public final ConnectorSummary info(final ConnectorTemplate connectorTemplate, final ConnectorSettings connectorSettings) {
final SwaggerModelInfo swaggerInfo = parseSpecification(connectorSettings, true);
try {
// No matter if the validation fails, try to process the swagger
final Connector connector = basicConnector(connectorTemplate, connectorSettings);
final Map<String, Path> paths = swaggerInfo.getModel().getPaths();
final AtomicInteger total = new AtomicInteger(0);
final Map<String, Integer> tagCounts = //
paths.entrySet().stream().flatMap(//
p -> p.getValue().getOperations().stream()).peek(//
o -> total.incrementAndGet()).flatMap(//
o -> o.getTags().stream().distinct()).collect(//
Collectors.groupingBy(//
Function.identity(), //
Collectors.reducing(0, (e) -> 1, Integer::sum)));
final ActionsSummary actionsSummary = //
new ActionsSummary.Builder().totalActions(//
total.intValue()).actionCountByTags(//
tagCounts).build();
return new ConnectorSummary.Builder().createFrom(connector).actionsSummary(actionsSummary).errors(swaggerInfo.getErrors()).warnings(swaggerInfo.getWarnings()).build();
} catch (@SuppressWarnings("PMD.AvoidCatchingGenericException") final Exception ex) {
if (!swaggerInfo.getErrors().isEmpty()) {
// Just log and return the validation errors if any
LOG.error("An error occurred while trying to create a swagger connector", ex);
return new ConnectorSummary.Builder().errors(swaggerInfo.getErrors()).warnings(swaggerInfo.getWarnings()).build();
}
throw SyndesisServerException.launderThrowable("An error occurred while trying to create a swagger connector", ex);
}
}
Aggregations