Refactored package structure into an API (root), a SPI (service provider interface) and internal classes which should not be used by a user directly.
This commit is contained in:
@@ -13,14 +13,14 @@
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
package io.github.robwin.swagger2markup.config;
|
||||
package io.github.robwin.swagger2markup;
|
||||
|
||||
import com.google.common.base.Function;
|
||||
import com.google.common.collect.Ordering;
|
||||
import io.github.robwin.markup.builder.LineSeparator;
|
||||
import io.github.robwin.markup.builder.MarkupLanguage;
|
||||
import io.github.robwin.swagger2markup.*;
|
||||
import io.github.robwin.swagger2markup.utils.IOUtils;
|
||||
import io.github.robwin.swagger2markup.internal.model.PathOperation;
|
||||
import io.github.robwin.swagger2markup.internal.utils.IOUtils;
|
||||
import io.swagger.models.HttpMethod;
|
||||
import io.swagger.models.parameters.Parameter;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
@@ -89,7 +89,7 @@ public class Swagger2MarkupConfig {
|
||||
* @param globalContext Partially initialized global context (globalContext.extensionRegistry == null)
|
||||
*/
|
||||
public void setGlobalContext(Swagger2MarkupConverter.Context globalContext) {
|
||||
configureDefaultContentPaths(globalContext.swaggerLocation);
|
||||
configureDefaultContentPaths(globalContext.getSwaggerLocation());
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -15,14 +15,13 @@
|
||||
*/
|
||||
package io.github.robwin.swagger2markup;
|
||||
|
||||
import io.github.robwin.swagger2markup.builder.DefinitionsDocumentBuilder;
|
||||
import io.github.robwin.swagger2markup.builder.OverviewDocumentBuilder;
|
||||
import io.github.robwin.swagger2markup.builder.PathsDocumentBuilder;
|
||||
import io.github.robwin.swagger2markup.builder.SecurityDocumentBuilder;
|
||||
import io.github.robwin.swagger2markup.config.Swagger2MarkupConfig;
|
||||
import io.github.robwin.swagger2markup.extension.Extension;
|
||||
import io.github.robwin.swagger2markup.extension.Swagger2MarkupExtensionRegistry;
|
||||
import io.github.robwin.swagger2markup.extension.SwaggerExtension;
|
||||
import com.google.common.annotations.VisibleForTesting;
|
||||
import io.github.robwin.swagger2markup.internal.builder.DefinitionsDocumentBuilder;
|
||||
import io.github.robwin.swagger2markup.internal.builder.OverviewDocumentBuilder;
|
||||
import io.github.robwin.swagger2markup.internal.builder.PathsDocumentBuilder;
|
||||
import io.github.robwin.swagger2markup.internal.builder.SecurityDocumentBuilder;
|
||||
import io.github.robwin.swagger2markup.spi.Extension;
|
||||
import io.github.robwin.swagger2markup.spi.SwaggerExtension;
|
||||
import io.swagger.models.Swagger;
|
||||
import io.swagger.parser.SwaggerParser;
|
||||
import org.apache.commons.io.IOUtils;
|
||||
@@ -43,14 +42,21 @@ import java.nio.file.Path;
|
||||
*/
|
||||
public class Swagger2MarkupConverter {
|
||||
|
||||
public static class Context {
|
||||
public Swagger2MarkupConfig config;
|
||||
public Swagger2MarkupExtensionRegistry extensionRegistry;
|
||||
public Swagger swagger;
|
||||
public URI swaggerLocation;
|
||||
private Context context;
|
||||
|
||||
public Swagger2MarkupConverter(Context globalContext) {
|
||||
this.context = globalContext;
|
||||
}
|
||||
|
||||
Context globalContext;
|
||||
/**
|
||||
* Returns the global Context
|
||||
*
|
||||
* @return the global Context
|
||||
*/
|
||||
@VisibleForTesting
|
||||
Context getContext(){
|
||||
return context;
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates a Swagger2MarkupConverter.Builder using a remote URL.
|
||||
@@ -113,12 +119,6 @@ public class Swagger2MarkupConverter {
|
||||
return new Builder(swagger);
|
||||
}
|
||||
|
||||
protected void applySwaggerExtensions() {
|
||||
for (SwaggerExtension swaggerExtension : globalContext.extensionRegistry.getExtensions(SwaggerExtension.class)) {
|
||||
swaggerExtension.apply(globalContext);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Builds the document with the given markup language and stores
|
||||
* the files in the given folder.
|
||||
@@ -144,6 +144,12 @@ public class Swagger2MarkupConverter {
|
||||
return buildDocuments();
|
||||
}
|
||||
|
||||
private void applySwaggerExtensions() {
|
||||
for (SwaggerExtension swaggerExtension : context.extensionRegistry.getExtensions(SwaggerExtension.class)) {
|
||||
swaggerExtension.apply(context);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Builds all documents and writes them to a directory
|
||||
*
|
||||
@@ -151,10 +157,10 @@ public class Swagger2MarkupConverter {
|
||||
* @throws IOException if a file cannot be written
|
||||
*/
|
||||
private void buildDocuments(Path outputPath) throws IOException {
|
||||
new OverviewDocumentBuilder(globalContext, outputPath).build().writeToFile(outputPath.resolve(globalContext.config.getOverviewDocument()), StandardCharsets.UTF_8);
|
||||
new PathsDocumentBuilder(globalContext, outputPath).build().writeToFile(outputPath.resolve(globalContext.config.getPathsDocument()), StandardCharsets.UTF_8);
|
||||
new DefinitionsDocumentBuilder(globalContext, outputPath).build().writeToFile(outputPath.resolve(globalContext.config.getDefinitionsDocument()), StandardCharsets.UTF_8);
|
||||
new SecurityDocumentBuilder(globalContext, outputPath).build().writeToFile(outputPath.resolve(globalContext.config.getSecurityDocument()), StandardCharsets.UTF_8);
|
||||
new OverviewDocumentBuilder(context, outputPath).build().writeToFile(outputPath.resolve(context.config.getOverviewDocument()), StandardCharsets.UTF_8);
|
||||
new PathsDocumentBuilder(context, outputPath).build().writeToFile(outputPath.resolve(context.config.getPathsDocument()), StandardCharsets.UTF_8);
|
||||
new DefinitionsDocumentBuilder(context, outputPath).build().writeToFile(outputPath.resolve(context.config.getDefinitionsDocument()), StandardCharsets.UTF_8);
|
||||
new SecurityDocumentBuilder(context, outputPath).build().writeToFile(outputPath.resolve(context.config.getSecurityDocument()), StandardCharsets.UTF_8);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -164,10 +170,10 @@ public class Swagger2MarkupConverter {
|
||||
*/
|
||||
private String buildDocuments() {
|
||||
StringBuilder sb = new StringBuilder();
|
||||
sb.append(new OverviewDocumentBuilder(globalContext, null).build().toString());
|
||||
sb.append(new PathsDocumentBuilder(globalContext, null).build().toString());
|
||||
sb.append(new DefinitionsDocumentBuilder(globalContext, null).build().toString());
|
||||
sb.append(new SecurityDocumentBuilder(globalContext, null).build().toString());
|
||||
sb.append(new OverviewDocumentBuilder(context, null).build().toString());
|
||||
sb.append(new PathsDocumentBuilder(context, null).build().toString());
|
||||
sb.append(new DefinitionsDocumentBuilder(context, null).build().toString());
|
||||
sb.append(new SecurityDocumentBuilder(context, null).build().toString());
|
||||
return sb.toString();
|
||||
}
|
||||
|
||||
@@ -238,30 +244,49 @@ public class Swagger2MarkupConverter {
|
||||
}
|
||||
|
||||
public Swagger2MarkupConverter build() {
|
||||
Context context = new Context();
|
||||
|
||||
context.swagger = this.swagger;
|
||||
context.swaggerLocation = this.swaggerLocation;
|
||||
|
||||
if (config == null)
|
||||
context.config = Swagger2MarkupConfig.ofDefaults().build();
|
||||
else
|
||||
context.config = config;
|
||||
context.config.setGlobalContext(context);
|
||||
config = Swagger2MarkupConfig.ofDefaults().build();
|
||||
|
||||
if (extensionRegistry == null)
|
||||
context.extensionRegistry = Swagger2MarkupExtensionRegistry.ofDefaults().build();
|
||||
else
|
||||
context.extensionRegistry = extensionRegistry;
|
||||
for (Extension extension : context.extensionRegistry.getExtensions())
|
||||
extensionRegistry = Swagger2MarkupExtensionRegistry.ofDefaults().build();
|
||||
|
||||
Context context = new Context(config, extensionRegistry, swagger, swaggerLocation);
|
||||
config.setGlobalContext(context);
|
||||
|
||||
for (Extension extension : extensionRegistry.getExtensions())
|
||||
extension.setGlobalContext(context);
|
||||
return new Swagger2MarkupConverter(context);
|
||||
}
|
||||
}
|
||||
|
||||
Swagger2MarkupConverter converter = new Swagger2MarkupConverter();
|
||||
converter.globalContext = context;
|
||||
public static class Context {
|
||||
private Swagger2MarkupConfig config;
|
||||
private Swagger2MarkupExtensionRegistry extensionRegistry;
|
||||
private Swagger swagger;
|
||||
private URI swaggerLocation;
|
||||
|
||||
return converter;
|
||||
Context(Swagger2MarkupConfig config, Swagger2MarkupExtensionRegistry extensionRegistry, Swagger swagger, URI swaggerLocation) {
|
||||
this.config = config;
|
||||
this.extensionRegistry = extensionRegistry;
|
||||
this.swagger = swagger;
|
||||
this.swaggerLocation = swaggerLocation;
|
||||
}
|
||||
|
||||
public Swagger2MarkupConfig getConfig() {
|
||||
return config;
|
||||
}
|
||||
|
||||
public Swagger2MarkupExtensionRegistry getExtensionRegistry() {
|
||||
return extensionRegistry;
|
||||
}
|
||||
|
||||
public Swagger getSwagger() {
|
||||
return swagger;
|
||||
}
|
||||
|
||||
public URI getSwaggerLocation() {
|
||||
return swaggerLocation;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -14,14 +14,15 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package io.github.robwin.swagger2markup.extension;
|
||||
package io.github.robwin.swagger2markup;
|
||||
|
||||
import com.google.common.collect.Multimap;
|
||||
import com.google.common.collect.MultimapBuilder;
|
||||
import io.github.robwin.swagger2markup.extension.repository.DynamicDefinitionsContentExtension;
|
||||
import io.github.robwin.swagger2markup.extension.repository.DynamicOperationsContentExtension;
|
||||
import io.github.robwin.swagger2markup.extension.repository.DynamicOverviewContentExtension;
|
||||
import io.github.robwin.swagger2markup.extension.repository.DynamicSecurityContentExtension;
|
||||
import io.github.robwin.swagger2markup.internal.extensions.DynamicDefinitionsContentExtension;
|
||||
import io.github.robwin.swagger2markup.internal.extensions.DynamicOperationsContentExtension;
|
||||
import io.github.robwin.swagger2markup.internal.extensions.DynamicOverviewContentExtension;
|
||||
import io.github.robwin.swagger2markup.internal.extensions.DynamicSecurityContentExtension;
|
||||
import io.github.robwin.swagger2markup.spi.*;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
@@ -13,16 +13,16 @@
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
package io.github.robwin.swagger2markup.builder;
|
||||
package io.github.robwin.swagger2markup.internal.builder;
|
||||
|
||||
import com.google.common.base.Optional;
|
||||
import com.google.common.collect.ImmutableMap;
|
||||
import io.github.robwin.markup.builder.MarkupDocBuilder;
|
||||
import io.github.robwin.swagger2markup.Swagger2MarkupConverter;
|
||||
import io.github.robwin.swagger2markup.document.MarkupDocument;
|
||||
import io.github.robwin.swagger2markup.extension.DefinitionsContentExtension;
|
||||
import io.github.robwin.swagger2markup.type.ObjectType;
|
||||
import io.github.robwin.swagger2markup.type.Type;
|
||||
import io.github.robwin.swagger2markup.internal.document.MarkupDocument;
|
||||
import io.github.robwin.swagger2markup.spi.DefinitionsContentExtension;
|
||||
import io.github.robwin.swagger2markup.internal.type.ObjectType;
|
||||
import io.github.robwin.swagger2markup.internal.type.Type;
|
||||
import io.swagger.models.ComposedModel;
|
||||
import io.swagger.models.Model;
|
||||
import io.swagger.models.RefModel;
|
||||
@@ -41,7 +41,7 @@ import java.nio.charset.StandardCharsets;
|
||||
import java.nio.file.Path;
|
||||
import java.util.*;
|
||||
|
||||
import static io.github.robwin.swagger2markup.utils.IOUtils.normalizeName;
|
||||
import static io.github.robwin.swagger2markup.internal.utils.IOUtils.normalizeName;
|
||||
import static org.apache.commons.lang3.StringUtils.defaultString;
|
||||
import static org.apache.commons.lang3.StringUtils.isNotBlank;
|
||||
|
||||
@@ -89,7 +89,7 @@ public class DefinitionsDocumentBuilder extends MarkupDocumentBuilder {
|
||||
*/
|
||||
@Override
|
||||
public MarkupDocument build() {
|
||||
definitions(globalContext.swagger.getDefinitions());
|
||||
definitions(globalContext.getSwagger().getDefinitions());
|
||||
return new MarkupDocument(markupDocBuilder);
|
||||
}
|
||||
|
||||
@@ -142,7 +142,7 @@ public class DefinitionsDocumentBuilder extends MarkupDocumentBuilder {
|
||||
* @param context context
|
||||
*/
|
||||
private void applyDefinitionExtension(DefinitionsContentExtension.Context context) {
|
||||
for (DefinitionsContentExtension extension : globalContext.extensionRegistry.getExtensions(DefinitionsContentExtension.class)) {
|
||||
for (DefinitionsContentExtension extension : globalContext.getExtensionRegistry().getExtensions(DefinitionsContentExtension.class)) {
|
||||
extension.apply(context);
|
||||
}
|
||||
}
|
||||
@@ -338,7 +338,7 @@ public class DefinitionsDocumentBuilder extends MarkupDocumentBuilder {
|
||||
for (String fileNameExtension : config.getMarkupLanguage().getFileNameExtensions()) {
|
||||
URI contentUri = config.getDefinitionDescriptionsUri().resolve(descriptionFolder).resolve(descriptionFileName + fileNameExtension);
|
||||
|
||||
try (Reader reader = io.github.robwin.swagger2markup.utils.IOUtils.uriReader(contentUri)) {
|
||||
try (Reader reader = io.github.robwin.swagger2markup.internal.utils.IOUtils.uriReader(contentUri)) {
|
||||
if (logger.isInfoEnabled()) {
|
||||
logger.info("Definition description content processed {}", contentUri);
|
||||
}
|
||||
@@ -13,21 +13,21 @@
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
package io.github.robwin.swagger2markup.builder;
|
||||
package io.github.robwin.swagger2markup.internal.builder;
|
||||
|
||||
import io.github.robwin.markup.builder.MarkupDocBuilder;
|
||||
import io.github.robwin.markup.builder.MarkupDocBuilders;
|
||||
import io.github.robwin.markup.builder.MarkupLanguage;
|
||||
import io.github.robwin.markup.builder.MarkupTableColumn;
|
||||
import io.github.robwin.swagger2markup.Swagger2MarkupConverter;
|
||||
import io.github.robwin.swagger2markup.config.Swagger2MarkupConfig;
|
||||
import io.github.robwin.swagger2markup.document.MarkupDocument;
|
||||
import io.github.robwin.swagger2markup.type.DefinitionDocumentResolver;
|
||||
import io.github.robwin.swagger2markup.type.ObjectType;
|
||||
import io.github.robwin.swagger2markup.type.RefType;
|
||||
import io.github.robwin.swagger2markup.type.Type;
|
||||
import io.github.robwin.swagger2markup.utils.IOUtils;
|
||||
import io.github.robwin.swagger2markup.utils.PropertyUtils;
|
||||
import io.github.robwin.swagger2markup.Swagger2MarkupConfig;
|
||||
import io.github.robwin.swagger2markup.internal.document.MarkupDocument;
|
||||
import io.github.robwin.swagger2markup.internal.type.DefinitionDocumentResolver;
|
||||
import io.github.robwin.swagger2markup.internal.type.ObjectType;
|
||||
import io.github.robwin.swagger2markup.internal.type.RefType;
|
||||
import io.github.robwin.swagger2markup.internal.type.Type;
|
||||
import io.github.robwin.swagger2markup.internal.utils.IOUtils;
|
||||
import io.github.robwin.swagger2markup.internal.utils.PropertyUtils;
|
||||
import io.swagger.models.properties.Property;
|
||||
import io.swagger.util.Json;
|
||||
import org.apache.commons.collections.MapUtils;
|
||||
@@ -68,7 +68,7 @@ public abstract class MarkupDocumentBuilder {
|
||||
|
||||
MarkupDocumentBuilder(Swagger2MarkupConverter.Context globalContext, Path outputPath) {
|
||||
this.globalContext = globalContext;
|
||||
this.config = globalContext.config;
|
||||
this.config = globalContext.getConfig();
|
||||
this.outputPath = outputPath;
|
||||
|
||||
this.markupDocBuilder = MarkupDocBuilders.documentBuilder(config.getMarkupLanguage(), config.getLineSeparator()).withAnchorPrefix(config.getAnchorPrefix());
|
||||
@@ -140,7 +140,7 @@ public abstract class MarkupDocumentBuilder {
|
||||
}
|
||||
}
|
||||
|
||||
Object example = PropertyUtils.getExample(globalContext.config.isGeneratedExamplesEnabled(), property, markupDocBuilder);
|
||||
Object example = PropertyUtils.getExample(config.isGeneratedExamplesEnabled(), property, markupDocBuilder);
|
||||
|
||||
List<String> content = Arrays.asList(
|
||||
propertyName,
|
||||
@@ -13,11 +13,11 @@
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
package io.github.robwin.swagger2markup.builder;
|
||||
package io.github.robwin.swagger2markup.internal.builder;
|
||||
|
||||
import io.github.robwin.swagger2markup.Swagger2MarkupConverter;
|
||||
import io.github.robwin.swagger2markup.document.MarkupDocument;
|
||||
import io.github.robwin.swagger2markup.extension.OverviewContentExtension;
|
||||
import io.github.robwin.swagger2markup.internal.document.MarkupDocument;
|
||||
import io.github.robwin.swagger2markup.spi.OverviewContentExtension;
|
||||
import io.swagger.models.*;
|
||||
|
||||
import java.nio.file.Path;
|
||||
@@ -86,7 +86,7 @@ public class OverviewDocumentBuilder extends MarkupDocumentBuilder {
|
||||
* Builds the document header of the swagger model
|
||||
*/
|
||||
private void overview() {
|
||||
Swagger swagger = globalContext.swagger;
|
||||
Swagger swagger = globalContext.getSwagger();
|
||||
Info info = swagger.getInfo();
|
||||
this.markupDocBuilder.documentTitle(info.getTitle());
|
||||
|
||||
@@ -179,7 +179,7 @@ public class OverviewDocumentBuilder extends MarkupDocumentBuilder {
|
||||
* @param context context
|
||||
*/
|
||||
private void applyOverviewExtension(OverviewContentExtension.Context context) {
|
||||
for (OverviewContentExtension extension : globalContext.extensionRegistry.getExtensions(OverviewContentExtension.class)) {
|
||||
for (OverviewContentExtension extension : globalContext.getExtensionRegistry().getExtensions(OverviewContentExtension.class)) {
|
||||
extension.apply(context);
|
||||
}
|
||||
}
|
||||
@@ -13,24 +13,24 @@
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
package io.github.robwin.swagger2markup.builder;
|
||||
package io.github.robwin.swagger2markup.internal.builder;
|
||||
|
||||
import com.google.common.base.Joiner;
|
||||
import com.google.common.base.Optional;
|
||||
import com.google.common.collect.Multimap;
|
||||
import io.github.robwin.markup.builder.*;
|
||||
import io.github.robwin.swagger2markup.GroupBy;
|
||||
import io.github.robwin.swagger2markup.PathOperation;
|
||||
import io.github.robwin.swagger2markup.internal.model.PathOperation;
|
||||
import io.github.robwin.swagger2markup.Swagger2MarkupConverter;
|
||||
import io.github.robwin.swagger2markup.document.MarkupDocument;
|
||||
import io.github.robwin.swagger2markup.extension.OperationsContentExtension;
|
||||
import io.github.robwin.swagger2markup.type.ObjectType;
|
||||
import io.github.robwin.swagger2markup.type.RefType;
|
||||
import io.github.robwin.swagger2markup.type.Type;
|
||||
import io.github.robwin.swagger2markup.utils.ExamplesUtil;
|
||||
import io.github.robwin.swagger2markup.utils.ParameterUtils;
|
||||
import io.github.robwin.swagger2markup.utils.PropertyUtils;
|
||||
import io.github.robwin.swagger2markup.utils.TagUtils;
|
||||
import io.github.robwin.swagger2markup.internal.document.MarkupDocument;
|
||||
import io.github.robwin.swagger2markup.spi.OperationsContentExtension;
|
||||
import io.github.robwin.swagger2markup.internal.type.ObjectType;
|
||||
import io.github.robwin.swagger2markup.internal.type.RefType;
|
||||
import io.github.robwin.swagger2markup.internal.type.Type;
|
||||
import io.github.robwin.swagger2markup.internal.utils.ExamplesUtil;
|
||||
import io.github.robwin.swagger2markup.internal.utils.ParameterUtils;
|
||||
import io.github.robwin.swagger2markup.internal.utils.PropertyUtils;
|
||||
import io.github.robwin.swagger2markup.internal.utils.TagUtils;
|
||||
import io.swagger.models.*;
|
||||
import io.swagger.models.auth.SecuritySchemeDefinition;
|
||||
import io.swagger.models.parameters.Parameter;
|
||||
@@ -50,9 +50,9 @@ import java.net.URI;
|
||||
import java.nio.charset.StandardCharsets;
|
||||
import java.util.*;
|
||||
|
||||
import static io.github.robwin.swagger2markup.utils.IOUtils.normalizeName;
|
||||
import static io.github.robwin.swagger2markup.utils.TagUtils.convertTagsListToMap;
|
||||
import static io.github.robwin.swagger2markup.utils.TagUtils.getTagDescription;
|
||||
import static io.github.robwin.swagger2markup.internal.utils.IOUtils.normalizeName;
|
||||
import static io.github.robwin.swagger2markup.internal.utils.TagUtils.convertTagsListToMap;
|
||||
import static io.github.robwin.swagger2markup.internal.utils.TagUtils.getTagDescription;
|
||||
import static org.apache.commons.lang3.StringUtils.defaultString;
|
||||
import static org.apache.commons.lang3.StringUtils.isNotBlank;
|
||||
|
||||
@@ -154,7 +154,7 @@ public class PathsDocumentBuilder extends MarkupDocumentBuilder {
|
||||
*/
|
||||
private void operations() {
|
||||
Set<PathOperation> allOperations = new LinkedHashSet<>();
|
||||
Map<String, Path> paths = globalContext.swagger.getPaths();
|
||||
Map<String, Path> paths = globalContext.getSwagger().getPaths();
|
||||
|
||||
if (paths != null) {
|
||||
for (Map.Entry<String, Path> path : paths.entrySet()) {
|
||||
@@ -192,7 +192,7 @@ public class PathsDocumentBuilder extends MarkupDocumentBuilder {
|
||||
} else {
|
||||
Multimap<String, PathOperation> operationsGroupedByTag = TagUtils.groupOperationsByTag(allOperations, config.getTagOrdering(), config.getOperationOrdering());
|
||||
|
||||
Map<String, Tag> tagsMap = convertTagsListToMap(globalContext.swagger.getTags());
|
||||
Map<String, Tag> tagsMap = convertTagsListToMap(globalContext.getSwagger().getTags());
|
||||
for (String tagName : operationsGroupedByTag.keySet()) {
|
||||
this.markupDocBuilder.sectionTitleLevel2(WordUtils.capitalize(tagName));
|
||||
|
||||
@@ -219,7 +219,7 @@ public class PathsDocumentBuilder extends MarkupDocumentBuilder {
|
||||
* @param context context
|
||||
*/
|
||||
private void applyOperationExtension(OperationsContentExtension.Context context) {
|
||||
for (OperationsContentExtension extension : globalContext.extensionRegistry.getExtensions(OperationsContentExtension.class)) {
|
||||
for (OperationsContentExtension extension : globalContext.getExtensionRegistry().getExtensions(OperationsContentExtension.class)) {
|
||||
extension.apply(context);
|
||||
}
|
||||
}
|
||||
@@ -600,8 +600,8 @@ public class PathsDocumentBuilder extends MarkupDocumentBuilder {
|
||||
*/
|
||||
private void examplesSection(PathOperation operation, MarkupDocBuilder docBuilder) {
|
||||
|
||||
Map<String, Object> generatedRequestExampleMap = ExamplesUtil.generateRequestExampleMap(globalContext.config.isGeneratedExamplesEnabled(), operation, globalContext.swagger.getDefinitions(), markupDocBuilder);
|
||||
Map<String, Object> generatedResponseExampleMap = ExamplesUtil.generateResponseExampleMap(globalContext.config.isGeneratedExamplesEnabled(), operation.getOperation(), globalContext.swagger.getDefinitions(), markupDocBuilder);
|
||||
Map<String, Object> generatedRequestExampleMap = ExamplesUtil.generateRequestExampleMap(config.isGeneratedExamplesEnabled(), operation, globalContext.getSwagger().getDefinitions(), markupDocBuilder);
|
||||
Map<String, Object> generatedResponseExampleMap = ExamplesUtil.generateResponseExampleMap(config.isGeneratedExamplesEnabled(), operation.getOperation(), globalContext.getSwagger().getDefinitions(), markupDocBuilder);
|
||||
|
||||
exampleMap(generatedRequestExampleMap, EXAMPLE_REQUEST, REQUEST, docBuilder);
|
||||
exampleMap(generatedResponseExampleMap, EXAMPLE_RESPONSE, RESPONSE, docBuilder);
|
||||
@@ -627,7 +627,7 @@ public class PathsDocumentBuilder extends MarkupDocumentBuilder {
|
||||
List<Map<String, List<String>>> securitySchemes = operation.getOperation().getSecurity();
|
||||
if (CollectionUtils.isNotEmpty(securitySchemes)) {
|
||||
addOperationSectionTitle(SECURITY, docBuilder);
|
||||
Map<String, SecuritySchemeDefinition> securityDefinitions = globalContext.swagger.getSecurityDefinitions();
|
||||
Map<String, SecuritySchemeDefinition> securityDefinitions = globalContext.getSwagger().getSecurityDefinitions();
|
||||
List<List<String>> cells = new ArrayList<>();
|
||||
List<MarkupTableColumn> cols = Arrays.asList(
|
||||
new MarkupTableColumn(TYPE_COLUMN, 1).withMarkupSpecifiers(MarkupLanguage.ASCIIDOC, ".^1"),
|
||||
@@ -660,7 +660,7 @@ public class PathsDocumentBuilder extends MarkupDocumentBuilder {
|
||||
for (String fileNameExtension : config.getMarkupLanguage().getFileNameExtensions()) {
|
||||
URI contentUri = config.getOperationDescriptionsUri().resolve(descriptionFolder).resolve(descriptionFileName + fileNameExtension);
|
||||
|
||||
try (Reader reader = io.github.robwin.swagger2markup.utils.IOUtils.uriReader(contentUri)) {
|
||||
try (Reader reader = io.github.robwin.swagger2markup.internal.utils.IOUtils.uriReader(contentUri)) {
|
||||
if (logger.isInfoEnabled()) {
|
||||
logger.info("Operation description content processed {}", contentUri);
|
||||
}
|
||||
@@ -13,12 +13,12 @@
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
package io.github.robwin.swagger2markup.builder;
|
||||
package io.github.robwin.swagger2markup.internal.builder;
|
||||
|
||||
import io.github.robwin.markup.builder.MarkupTableColumn;
|
||||
import io.github.robwin.swagger2markup.Swagger2MarkupConverter;
|
||||
import io.github.robwin.swagger2markup.document.MarkupDocument;
|
||||
import io.github.robwin.swagger2markup.extension.SecurityContentExtension;
|
||||
import io.github.robwin.swagger2markup.internal.document.MarkupDocument;
|
||||
import io.github.robwin.swagger2markup.spi.SecurityContentExtension;
|
||||
import io.swagger.models.auth.ApiKeyAuthDefinition;
|
||||
import io.swagger.models.auth.OAuth2Definition;
|
||||
import io.swagger.models.auth.SecuritySchemeDefinition;
|
||||
@@ -76,7 +76,7 @@ public class SecurityDocumentBuilder extends MarkupDocumentBuilder {
|
||||
* Builds all security definition of the Swagger model.
|
||||
*/
|
||||
private void security() {
|
||||
Map<String, SecuritySchemeDefinition> definitions = globalContext.swagger.getSecurityDefinitions();
|
||||
Map<String, SecuritySchemeDefinition> definitions = globalContext.getSwagger().getSecurityDefinitions();
|
||||
if (MapUtils.isNotEmpty(definitions)) {
|
||||
|
||||
applyOverviewExtension(new SecurityContentExtension.Context(SecurityContentExtension.Position.DOC_BEFORE, this.markupDocBuilder));
|
||||
@@ -124,7 +124,7 @@ public class SecurityDocumentBuilder extends MarkupDocumentBuilder {
|
||||
* @param context context
|
||||
*/
|
||||
private void applyOverviewExtension(SecurityContentExtension.Context context) {
|
||||
for (SecurityContentExtension extension : globalContext.extensionRegistry.getExtensions(SecurityContentExtension.class)) {
|
||||
for (SecurityContentExtension extension : globalContext.getExtensionRegistry().getExtensions(SecurityContentExtension.class)) {
|
||||
extension.apply(context);
|
||||
}
|
||||
}
|
||||
@@ -13,7 +13,7 @@
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
package io.github.robwin.swagger2markup.document;
|
||||
package io.github.robwin.swagger2markup.internal.document;
|
||||
|
||||
import io.github.robwin.markup.builder.MarkupDocBuilder;
|
||||
|
||||
@@ -14,11 +14,11 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package io.github.robwin.swagger2markup.extension.repository;
|
||||
package io.github.robwin.swagger2markup.internal.extensions;
|
||||
|
||||
import com.google.common.base.Optional;
|
||||
import io.github.robwin.swagger2markup.Swagger2MarkupConverter;
|
||||
import io.github.robwin.swagger2markup.extension.ContentContext;
|
||||
import io.github.robwin.swagger2markup.spi.ContentContext;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
@@ -80,7 +80,7 @@ public class ContentExtension {
|
||||
*/
|
||||
protected Optional<Reader> readContentUri(URI contentUri) {
|
||||
try {
|
||||
Reader reader = io.github.robwin.swagger2markup.utils.IOUtils.uriReader(contentUri);
|
||||
Reader reader = io.github.robwin.swagger2markup.internal.utils.IOUtils.uriReader(contentUri);
|
||||
|
||||
if (logger.isInfoEnabled()) {
|
||||
logger.info("Content URI {} processed", contentUri);
|
||||
@@ -14,7 +14,7 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package io.github.robwin.swagger2markup.extension.repository;
|
||||
package io.github.robwin.swagger2markup.internal.extensions;
|
||||
|
||||
import com.google.common.base.Function;
|
||||
import com.google.common.base.Optional;
|
||||
@@ -22,7 +22,7 @@ import com.google.common.collect.Collections2;
|
||||
import com.google.common.collect.Lists;
|
||||
import com.google.common.collect.Ordering;
|
||||
import io.github.robwin.swagger2markup.Swagger2MarkupConverter;
|
||||
import io.github.robwin.swagger2markup.extension.ContentContext;
|
||||
import io.github.robwin.swagger2markup.spi.ContentContext;
|
||||
import org.apache.commons.io.FilenameUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.slf4j.Logger;
|
||||
@@ -53,7 +53,7 @@ public class DynamicContentExtension extends ContentExtension {
|
||||
* @param levelOffset import markup level offset
|
||||
*/
|
||||
public void extensionsSection(Path contentPath, final String prefix, int levelOffset) {
|
||||
final Collection<String> filenameExtensions = Collections2.transform(globalContext.config.getMarkupLanguage().getFileNameExtensions(), new Function<String, String>() {
|
||||
final Collection<String> filenameExtensions = Collections2.transform(globalContext.getConfig().getMarkupLanguage().getFileNameExtensions(), new Function<String, String>() {
|
||||
public String apply(String input) {
|
||||
return StringUtils.stripStart(input, ".");
|
||||
}
|
||||
@@ -14,11 +14,11 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package io.github.robwin.swagger2markup.extension.repository;
|
||||
package io.github.robwin.swagger2markup.internal.extensions;
|
||||
|
||||
import io.github.robwin.swagger2markup.Swagger2MarkupConverter;
|
||||
import io.github.robwin.swagger2markup.extension.DefinitionsContentExtension;
|
||||
import io.github.robwin.swagger2markup.utils.IOUtils;
|
||||
import io.github.robwin.swagger2markup.spi.DefinitionsContentExtension;
|
||||
import io.github.robwin.swagger2markup.internal.utils.IOUtils;
|
||||
import org.apache.commons.lang3.Validate;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
@@ -60,11 +60,11 @@ public class DynamicDefinitionsContentExtension extends DefinitionsContentExtens
|
||||
@Override
|
||||
public void init(Swagger2MarkupConverter.Context globalContext) {
|
||||
if (contentPath == null) {
|
||||
if (globalContext.swaggerLocation == null || !globalContext.swaggerLocation.getScheme().equals("file")) {
|
||||
if (globalContext.getSwaggerLocation() == null || !globalContext.getSwaggerLocation().getScheme().equals("file")) {
|
||||
if (logger.isWarnEnabled())
|
||||
logger.warn("Disable DynamicDefinitionsContentExtension > Can't set default contentPath from swaggerLocation. You have to explicitly configure the content path.");
|
||||
} else {
|
||||
contentPath = Paths.get(globalContext.swaggerLocation).getParent();
|
||||
contentPath = Paths.get(globalContext.getSwaggerLocation()).getParent();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -14,11 +14,11 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package io.github.robwin.swagger2markup.extension.repository;
|
||||
package io.github.robwin.swagger2markup.internal.extensions;
|
||||
|
||||
import io.github.robwin.swagger2markup.Swagger2MarkupConverter;
|
||||
import io.github.robwin.swagger2markup.extension.OperationsContentExtension;
|
||||
import io.github.robwin.swagger2markup.utils.IOUtils;
|
||||
import io.github.robwin.swagger2markup.spi.OperationsContentExtension;
|
||||
import io.github.robwin.swagger2markup.internal.utils.IOUtils;
|
||||
import org.apache.commons.lang3.Validate;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
@@ -60,11 +60,11 @@ public class DynamicOperationsContentExtension extends OperationsContentExtensio
|
||||
@Override
|
||||
public void init(Swagger2MarkupConverter.Context globalContext) {
|
||||
if (contentPath == null) {
|
||||
if (globalContext.swaggerLocation == null || !globalContext.swaggerLocation.getScheme().equals("file")) {
|
||||
if (globalContext.getSwaggerLocation() == null || !globalContext.getSwaggerLocation().getScheme().equals("file")) {
|
||||
if (logger.isWarnEnabled())
|
||||
logger.warn("Disable DynamicOperationsContentExtension > Can't set default contentPath from swaggerLocation. You have to explicitly configure the content path.");
|
||||
} else {
|
||||
contentPath = Paths.get(globalContext.swaggerLocation).getParent();
|
||||
contentPath = Paths.get(globalContext.getSwaggerLocation()).getParent();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -14,10 +14,10 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package io.github.robwin.swagger2markup.extension.repository;
|
||||
package io.github.robwin.swagger2markup.internal.extensions;
|
||||
|
||||
import io.github.robwin.swagger2markup.Swagger2MarkupConverter;
|
||||
import io.github.robwin.swagger2markup.extension.OverviewContentExtension;
|
||||
import io.github.robwin.swagger2markup.spi.OverviewContentExtension;
|
||||
import org.apache.commons.lang3.Validate;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
@@ -57,11 +57,11 @@ public class DynamicOverviewContentExtension extends OverviewContentExtension {
|
||||
@Override
|
||||
public void init(Swagger2MarkupConverter.Context globalContext) {
|
||||
if (contentPath == null) {
|
||||
if (globalContext.swaggerLocation == null || !globalContext.swaggerLocation.getScheme().equals("file")) {
|
||||
if (globalContext.getSwaggerLocation() == null || !globalContext.getSwaggerLocation().getScheme().equals("file")) {
|
||||
if (logger.isWarnEnabled())
|
||||
logger.warn("Disable > DynamicOverviewContentExtension > Can't set default contentPath from swaggerLocation. You have to explicitly configure the content path.");
|
||||
} else {
|
||||
contentPath = Paths.get(globalContext.swaggerLocation).getParent();
|
||||
contentPath = Paths.get(globalContext.getSwaggerLocation()).getParent();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -14,10 +14,10 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package io.github.robwin.swagger2markup.extension.repository;
|
||||
package io.github.robwin.swagger2markup.internal.extensions;
|
||||
|
||||
import io.github.robwin.swagger2markup.Swagger2MarkupConverter;
|
||||
import io.github.robwin.swagger2markup.extension.SecurityContentExtension;
|
||||
import io.github.robwin.swagger2markup.spi.SecurityContentExtension;
|
||||
import org.apache.commons.lang3.Validate;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
@@ -57,11 +57,11 @@ public class DynamicSecurityContentExtension extends SecurityContentExtension {
|
||||
@Override
|
||||
public void init(Swagger2MarkupConverter.Context globalContext) {
|
||||
if (contentPath == null) {
|
||||
if (globalContext.swaggerLocation == null || !globalContext.swaggerLocation.getScheme().equals("file")) {
|
||||
if (globalContext.getSwaggerLocation() == null || !globalContext.getSwaggerLocation().getScheme().equals("file")) {
|
||||
if (logger.isWarnEnabled())
|
||||
logger.warn("Disable > DynamicSecurityContentExtension > Can't set default contentPath from swaggerLocation. You have to explicitly configure the content path.");
|
||||
} else {
|
||||
contentPath = Paths.get(globalContext.swaggerLocation).getParent();
|
||||
contentPath = Paths.get(globalContext.getSwaggerLocation()).getParent();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -14,12 +14,12 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package io.github.robwin.swagger2markup.extension.repository;
|
||||
package io.github.robwin.swagger2markup.internal.extensions;
|
||||
|
||||
import com.google.common.base.Optional;
|
||||
import io.github.robwin.swagger2markup.Swagger2MarkupConverter;
|
||||
import io.github.robwin.swagger2markup.extension.DefinitionsContentExtension;
|
||||
import io.github.robwin.swagger2markup.utils.IOUtils;
|
||||
import io.github.robwin.swagger2markup.spi.DefinitionsContentExtension;
|
||||
import io.github.robwin.swagger2markup.internal.utils.IOUtils;
|
||||
import org.apache.commons.lang3.Validate;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
@@ -75,11 +75,11 @@ public class SchemaExtension extends DefinitionsContentExtension {
|
||||
@Override
|
||||
public void init(Swagger2MarkupConverter.Context globalContext) {
|
||||
if (schemaBaseUri == null) {
|
||||
if (globalContext.swaggerLocation == null) {
|
||||
if (globalContext.getSwaggerLocation() == null) {
|
||||
if (logger.isWarnEnabled())
|
||||
logger.warn("Disable SchemaExtension > Can't set default schemaBaseUri from swaggerLocation. You have to explicitly configure the schemaBaseUri.");
|
||||
} else {
|
||||
schemaBaseUri = IOUtils.uriParent(globalContext.swaggerLocation);
|
||||
schemaBaseUri = IOUtils.uriParent(globalContext.getSwaggerLocation());
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -14,14 +14,14 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package io.github.robwin.swagger2markup.extension.repository;
|
||||
package io.github.robwin.swagger2markup.internal.extensions;
|
||||
|
||||
import com.google.common.base.Optional;
|
||||
import com.google.common.base.Throwables;
|
||||
import io.github.robwin.swagger2markup.PathOperation;
|
||||
import io.github.robwin.swagger2markup.internal.model.PathOperation;
|
||||
import io.github.robwin.swagger2markup.Swagger2MarkupConverter;
|
||||
import io.github.robwin.swagger2markup.extension.OperationsContentExtension;
|
||||
import io.github.robwin.swagger2markup.utils.IOUtils;
|
||||
import io.github.robwin.swagger2markup.spi.OperationsContentExtension;
|
||||
import io.github.robwin.swagger2markup.internal.utils.IOUtils;
|
||||
import org.apache.commons.lang3.Validate;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
@@ -66,11 +66,11 @@ public class SpringRestDocsExtension extends OperationsContentExtension {
|
||||
@Override
|
||||
public void init(Swagger2MarkupConverter.Context globalContext) {
|
||||
if (snippetBaseUri == null) {
|
||||
if (globalContext.swaggerLocation == null) {
|
||||
if (globalContext.getSwaggerLocation() == null) {
|
||||
if (logger.isWarnEnabled())
|
||||
logger.warn("Disable SpringRestDocsExtension > Can't set default snippetBaseUri from swaggerLocation. You have to explicitly configure the snippetBaseUri.");
|
||||
} else {
|
||||
snippetBaseUri = IOUtils.uriParent(globalContext.swaggerLocation);
|
||||
snippetBaseUri = IOUtils.uriParent(globalContext.getSwaggerLocation());
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -14,7 +14,7 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package io.github.robwin.swagger2markup;
|
||||
package io.github.robwin.swagger2markup.internal.model;
|
||||
|
||||
import io.swagger.models.HttpMethod;
|
||||
import io.swagger.models.Operation;
|
||||
@@ -14,7 +14,7 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package io.github.robwin.swagger2markup.type;
|
||||
package io.github.robwin.swagger2markup.internal.type;
|
||||
|
||||
import io.github.robwin.markup.builder.MarkupDocBuilder;
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package io.github.robwin.swagger2markup.type;
|
||||
package io.github.robwin.swagger2markup.internal.type;
|
||||
|
||||
import io.github.robwin.markup.builder.MarkupDocBuilder;
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package io.github.robwin.swagger2markup.type;
|
||||
package io.github.robwin.swagger2markup.internal.type;
|
||||
|
||||
import com.google.common.base.Function;
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package io.github.robwin.swagger2markup.type;
|
||||
package io.github.robwin.swagger2markup.internal.type;
|
||||
|
||||
import io.github.robwin.markup.builder.MarkupDocBuilder;
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package io.github.robwin.swagger2markup.type;
|
||||
package io.github.robwin.swagger2markup.internal.type;
|
||||
|
||||
import io.github.robwin.markup.builder.MarkupDocBuilder;
|
||||
import io.swagger.models.properties.Property;
|
||||
@@ -14,7 +14,7 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package io.github.robwin.swagger2markup.type;
|
||||
package io.github.robwin.swagger2markup.internal.type;
|
||||
|
||||
import io.github.robwin.markup.builder.MarkupDocBuilder;
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package io.github.robwin.swagger2markup.type;
|
||||
package io.github.robwin.swagger2markup.internal.type;
|
||||
|
||||
import io.github.robwin.markup.builder.MarkupDocBuilder;
|
||||
import org.apache.commons.lang3.Validate;
|
||||
@@ -14,7 +14,7 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package io.github.robwin.swagger2markup.utils;
|
||||
package io.github.robwin.swagger2markup.internal.utils;
|
||||
|
||||
/**
|
||||
* Java 8 style Consumer functional interface
|
||||
@@ -14,10 +14,10 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package io.github.robwin.swagger2markup.utils;
|
||||
package io.github.robwin.swagger2markup.internal.utils;
|
||||
|
||||
import io.github.robwin.markup.builder.MarkupDocBuilder;
|
||||
import io.github.robwin.swagger2markup.PathOperation;
|
||||
import io.github.robwin.swagger2markup.internal.model.PathOperation;
|
||||
import io.swagger.models.*;
|
||||
import io.swagger.models.parameters.*;
|
||||
import io.swagger.models.properties.ArrayProperty;
|
||||
@@ -14,7 +14,7 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package io.github.robwin.swagger2markup.utils;
|
||||
package io.github.robwin.swagger2markup.internal.utils;
|
||||
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
|
||||
@@ -13,13 +13,13 @@
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
package io.github.robwin.swagger2markup.utils;
|
||||
package io.github.robwin.swagger2markup.internal.utils;
|
||||
|
||||
import com.google.common.base.Function;
|
||||
import io.github.robwin.swagger2markup.type.ArrayType;
|
||||
import io.github.robwin.swagger2markup.type.ObjectType;
|
||||
import io.github.robwin.swagger2markup.type.RefType;
|
||||
import io.github.robwin.swagger2markup.type.Type;
|
||||
import io.github.robwin.swagger2markup.internal.type.ArrayType;
|
||||
import io.github.robwin.swagger2markup.internal.type.ObjectType;
|
||||
import io.github.robwin.swagger2markup.internal.type.RefType;
|
||||
import io.github.robwin.swagger2markup.internal.type.Type;
|
||||
import io.swagger.models.ArrayModel;
|
||||
import io.swagger.models.Model;
|
||||
import io.swagger.models.ModelImpl;
|
||||
@@ -13,11 +13,11 @@
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
package io.github.robwin.swagger2markup.utils;
|
||||
package io.github.robwin.swagger2markup.internal.utils;
|
||||
|
||||
import com.google.common.base.Function;
|
||||
import io.github.robwin.markup.builder.MarkupDocBuilder;
|
||||
import io.github.robwin.swagger2markup.type.*;
|
||||
import io.github.robwin.swagger2markup.internal.type.*;
|
||||
import io.swagger.models.Model;
|
||||
import io.swagger.models.parameters.AbstractSerializableParameter;
|
||||
import io.swagger.models.parameters.BodyParameter;
|
||||
@@ -13,11 +13,11 @@
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
package io.github.robwin.swagger2markup.utils;
|
||||
package io.github.robwin.swagger2markup.internal.utils;
|
||||
|
||||
import com.google.common.base.Function;
|
||||
import io.github.robwin.markup.builder.MarkupDocBuilder;
|
||||
import io.github.robwin.swagger2markup.type.*;
|
||||
import io.github.robwin.swagger2markup.internal.type.*;
|
||||
import io.swagger.models.properties.*;
|
||||
import io.swagger.models.refs.RefFormat;
|
||||
import org.apache.commons.collections.CollectionUtils;
|
||||
@@ -13,13 +13,13 @@
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
package io.github.robwin.swagger2markup.utils;
|
||||
package io.github.robwin.swagger2markup.internal.utils;
|
||||
|
||||
import com.google.common.base.Optional;
|
||||
import com.google.common.collect.Multimap;
|
||||
import com.google.common.collect.MultimapBuilder;
|
||||
import com.google.common.collect.Ordering;
|
||||
import io.github.robwin.swagger2markup.PathOperation;
|
||||
import io.github.robwin.swagger2markup.internal.model.PathOperation;
|
||||
import io.swagger.models.Tag;
|
||||
import org.apache.commons.lang3.Validate;
|
||||
import org.slf4j.Logger;
|
||||
@@ -14,7 +14,7 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package io.github.robwin.swagger2markup.extension;
|
||||
package io.github.robwin.swagger2markup.spi;
|
||||
|
||||
import io.github.robwin.swagger2markup.Swagger2MarkupConverter;
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package io.github.robwin.swagger2markup.extension;
|
||||
package io.github.robwin.swagger2markup.spi;
|
||||
|
||||
import io.github.robwin.markup.builder.MarkupDocBuilder;
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package io.github.robwin.swagger2markup.extension;
|
||||
package io.github.robwin.swagger2markup.spi;
|
||||
|
||||
import io.github.robwin.markup.builder.MarkupDocBuilder;
|
||||
import org.apache.commons.lang3.Validate;
|
||||
@@ -14,7 +14,7 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package io.github.robwin.swagger2markup.extension;
|
||||
package io.github.robwin.swagger2markup.spi;
|
||||
|
||||
import io.github.robwin.swagger2markup.Swagger2MarkupConverter;
|
||||
|
||||
@@ -14,11 +14,11 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package io.github.robwin.swagger2markup.extension;
|
||||
package io.github.robwin.swagger2markup.spi;
|
||||
|
||||
import io.github.robwin.markup.builder.MarkupDocBuilder;
|
||||
import io.github.robwin.swagger2markup.GroupBy;
|
||||
import io.github.robwin.swagger2markup.PathOperation;
|
||||
import io.github.robwin.swagger2markup.internal.model.PathOperation;
|
||||
import org.apache.commons.lang3.Validate;
|
||||
|
||||
public abstract class OperationsContentExtension extends AbstractExtension {
|
||||
@@ -82,7 +82,7 @@ public abstract class OperationsContentExtension extends AbstractExtension {
|
||||
default:
|
||||
throw new RuntimeException(String.format("Unknown position '%s'", context.position));
|
||||
}
|
||||
if (globalContext.config.getOperationsGroupedBy() == GroupBy.TAGS) {
|
||||
if (globalContext.getConfig().getOperationsGroupedBy() == GroupBy.TAGS) {
|
||||
levelOffset++;
|
||||
}
|
||||
return levelOffset;
|
||||
@@ -14,7 +14,7 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package io.github.robwin.swagger2markup.extension;
|
||||
package io.github.robwin.swagger2markup.spi;
|
||||
|
||||
import io.github.robwin.markup.builder.MarkupDocBuilder;
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package io.github.robwin.swagger2markup.extension;
|
||||
package io.github.robwin.swagger2markup.spi;
|
||||
|
||||
import io.github.robwin.markup.builder.MarkupDocBuilder;
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package io.github.robwin.swagger2markup.extension;
|
||||
package io.github.robwin.swagger2markup.spi;
|
||||
|
||||
import io.github.robwin.swagger2markup.Swagger2MarkupConverter;
|
||||
|
||||
@@ -16,12 +16,10 @@
|
||||
package io.github.robwin.swagger2markup;
|
||||
|
||||
import io.github.robwin.swagger2markup.assertions.DiffUtils;
|
||||
import io.github.robwin.swagger2markup.config.Swagger2MarkupConfig;
|
||||
import io.github.robwin.swagger2markup.extension.Swagger2MarkupExtensionRegistry;
|
||||
import io.github.robwin.swagger2markup.extension.repository.DynamicDefinitionsContentExtension;
|
||||
import io.github.robwin.swagger2markup.extension.repository.DynamicOperationsContentExtension;
|
||||
import io.github.robwin.swagger2markup.extension.repository.SchemaExtension;
|
||||
import io.github.robwin.swagger2markup.extension.repository.SpringRestDocsExtension;
|
||||
import io.github.robwin.swagger2markup.internal.extensions.DynamicDefinitionsContentExtension;
|
||||
import io.github.robwin.swagger2markup.internal.extensions.DynamicOperationsContentExtension;
|
||||
import io.github.robwin.swagger2markup.internal.extensions.SchemaExtension;
|
||||
import io.github.robwin.swagger2markup.internal.extensions.SpringRestDocsExtension;
|
||||
import org.apache.commons.io.FileUtils;
|
||||
import org.apache.commons.io.IOUtils;
|
||||
import org.junit.Before;
|
||||
|
||||
@@ -15,7 +15,6 @@
|
||||
*/
|
||||
package io.github.robwin.swagger2markup;
|
||||
|
||||
import io.github.robwin.swagger2markup.config.Swagger2MarkupConfig;
|
||||
import io.swagger.models.Swagger;
|
||||
import org.junit.Test;
|
||||
|
||||
@@ -40,14 +39,14 @@ public class GeneralConverterTest {
|
||||
.withOperationDescriptions()
|
||||
.build();
|
||||
|
||||
Swagger2MarkupConverter converterBuilder = Swagger2MarkupConverter.from(file)
|
||||
Swagger2MarkupConverter converter = Swagger2MarkupConverter.from(file)
|
||||
.withConfig(config)
|
||||
.build();
|
||||
|
||||
//Then
|
||||
URI baseUri = io.github.robwin.swagger2markup.utils.IOUtils.uriParent(converterBuilder.globalContext.swaggerLocation);
|
||||
assertThat(converterBuilder.globalContext.config.getDefinitionDescriptionsUri()).isEqualTo(baseUri);
|
||||
assertThat(converterBuilder.globalContext.config.getOperationDescriptionsUri()).isEqualTo(baseUri);
|
||||
URI baseUri = io.github.robwin.swagger2markup.internal.utils.IOUtils.uriParent(converter.getContext().getSwaggerLocation());
|
||||
assertThat(converter.getContext().getConfig().getDefinitionDescriptionsUri()).isEqualTo(baseUri);
|
||||
assertThat(converter.getContext().getConfig().getOperationDescriptionsUri()).isEqualTo(baseUri);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -65,8 +64,8 @@ public class GeneralConverterTest {
|
||||
.build();
|
||||
|
||||
//Then
|
||||
assertThat(converterBuilder.globalContext.config.getDefinitionDescriptionsUri()).isNull();
|
||||
assertThat(converterBuilder.globalContext.config.getOperationDescriptionsUri()).isNull();
|
||||
assertThat(converterBuilder.getContext().getConfig().getDefinitionDescriptionsUri()).isNull();
|
||||
assertThat(converterBuilder.getContext().getConfig().getOperationDescriptionsUri()).isNull();
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -81,6 +80,6 @@ public class GeneralConverterTest {
|
||||
Swagger2MarkupConverter converter = Swagger2MarkupConverter.from(new Swagger())
|
||||
.withConfig(config)
|
||||
.build();
|
||||
assertThat(converter.globalContext.config.isDefinitionDescriptionsEnabled()).isFalse();
|
||||
assertThat(converter.getContext().getConfig().isDefinitionDescriptionsEnabled()).isFalse();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -21,10 +21,8 @@ import com.google.common.collect.Maps;
|
||||
import com.google.common.collect.Sets;
|
||||
import io.github.robwin.markup.builder.MarkupLanguage;
|
||||
import io.github.robwin.swagger2markup.assertions.DiffUtils;
|
||||
import io.github.robwin.swagger2markup.config.Swagger2MarkupConfig;
|
||||
import io.github.robwin.swagger2markup.extension.Swagger2MarkupExtensionRegistry;
|
||||
import io.github.robwin.swagger2markup.extension.repository.DynamicDefinitionsContentExtension;
|
||||
import io.github.robwin.swagger2markup.extension.repository.DynamicOperationsContentExtension;
|
||||
import io.github.robwin.swagger2markup.internal.extensions.DynamicDefinitionsContentExtension;
|
||||
import io.github.robwin.swagger2markup.internal.extensions.DynamicOperationsContentExtension;
|
||||
import org.apache.commons.io.FileUtils;
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
|
||||
@@ -13,13 +13,10 @@
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
package io.github.robwin.swagger2markup.config;
|
||||
package io.github.robwin.swagger2markup;
|
||||
|
||||
import com.google.common.collect.Ordering;
|
||||
import io.github.robwin.markup.builder.MarkupLanguage;
|
||||
import io.github.robwin.swagger2markup.GroupBy;
|
||||
import io.github.robwin.swagger2markup.Language;
|
||||
import io.github.robwin.swagger2markup.OrderBy;
|
||||
import org.junit.Test;
|
||||
|
||||
import java.io.IOException;
|
||||
@@ -0,0 +1,29 @@
|
||||
/*
|
||||
* Copyright 2016 Robert Winkler
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
package io.github.robwin.swagger2markup.spi;
|
||||
|
||||
import io.github.robwin.swagger2markup.Swagger2MarkupConverter;
|
||||
|
||||
public class MySwaggerExtension extends SwaggerExtension {
|
||||
|
||||
public MySwaggerExtension() {
|
||||
super();
|
||||
}
|
||||
|
||||
public void apply(Swagger2MarkupConverter.Context globalContext) {
|
||||
globalContext.getSwagger().setHost("host.domain.tld");
|
||||
}
|
||||
}
|
||||
@@ -13,11 +13,12 @@
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
package io.github.robwin.swagger2markup.extension;
|
||||
package io.github.robwin.swagger2markup.spi;
|
||||
|
||||
import io.github.robwin.swagger2markup.Swagger2MarkupConverter;
|
||||
import io.github.robwin.swagger2markup.extension.repository.DynamicDefinitionsContentExtension;
|
||||
import io.github.robwin.swagger2markup.extension.repository.DynamicOperationsContentExtension;
|
||||
import io.github.robwin.swagger2markup.Swagger2MarkupExtensionRegistry;
|
||||
import io.github.robwin.swagger2markup.internal.extensions.DynamicDefinitionsContentExtension;
|
||||
import io.github.robwin.swagger2markup.internal.extensions.DynamicOperationsContentExtension;
|
||||
import org.junit.Test;
|
||||
|
||||
import java.nio.file.Paths;
|
||||
@@ -27,17 +28,6 @@ import java.util.List;
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
import static org.assertj.core.api.Assertions.fail;
|
||||
|
||||
class MySwaggerExtension extends SwaggerExtension {
|
||||
|
||||
public MySwaggerExtension() {
|
||||
super();
|
||||
}
|
||||
|
||||
public void apply(Swagger2MarkupConverter.Context globalContext) {
|
||||
globalContext.swagger.setHost("host.domain.tld");
|
||||
}
|
||||
}
|
||||
|
||||
public class Swagger2MarkupExtensionRegistryTest {
|
||||
|
||||
@Test
|
||||
Reference in New Issue
Block a user