use of io.swagger.models.Info in project ballerina by ballerina-lang.
the class SwaggerServiceMapper method parseServiceInfoAnnotationAttachment.
/**
* Parses the 'ServiceInfo' annotation and build the swagger definition for it.
* @param service The ballerina service which has the 'ServiceInfo' annotation attachment.
* @param swagger The swagger definition to be built up.
*/
private void parseServiceInfoAnnotationAttachment(ServiceNode service, Swagger swagger) {
Optional<? extends AnnotationAttachmentNode> swaggerInfoAnnotation = service.getAnnotationAttachments().stream().filter(a -> null != swaggerAlias && this.swaggerAlias.equals(a.getPackageAlias().getValue()) && "ServiceInfo".equals(a.getAnnotationName().getValue())).findFirst();
Info info = new Info().version("1.0.0").title(service.getName().getValue());
if (swaggerInfoAnnotation.isPresent()) {
Map<String, AnnotationAttachmentAttributeValueNode> attributes = this.listToMap(swaggerInfoAnnotation.get());
if (attributes.containsKey("serviceVersion")) {
info.version(this.getStringLiteralValue(attributes.get("serviceVersion")));
}
if (attributes.containsKey("title")) {
info.title(this.getStringLiteralValue(attributes.get("title")));
}
if (attributes.containsKey("description")) {
info.description(this.getStringLiteralValue(attributes.get("description")));
}
if (attributes.containsKey("termsOfService")) {
info.termsOfService(this.getStringLiteralValue(attributes.get("termsOfService")));
}
this.createContactModel(attributes.get("contact"), info);
this.createLicenseModel(attributes.get("license"), info);
this.createExternalDocModel(attributes.get("externalDoc"), swagger);
this.createTagModel(attributes.get("tags"), swagger);
this.createOrganizationModel(attributes.get("organization"), info);
this.createDevelopersModel(attributes.get("developers"), info);
}
swagger.setInfo(info);
}
use of io.swagger.models.Info in project syndesis by syndesisio.
the class BaseSwaggerConnectorGenerator method determineConnectorName.
@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;
}
use of io.swagger.models.Info in project java-chassis by ServiceComb.
the class SwaggerUtils method getInterface.
public static Class<?> getInterface(Swagger swagger) {
Info info = swagger.getInfo();
if (info == null) {
return null;
}
String name = getInterfaceName(info.getVendorExtensions());
if (StringUtils.isEmpty(name)) {
return null;
}
return ReflectUtils.getClassByName(name);
}
use of io.swagger.models.Info in project java-chassis by ServiceComb.
the class AbstractSwaggerGenerator 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);
}
Aggregations