@Override public MarkupDocBuilder apply(MarkupDocBuilder markupDocBuilder, Parameters params) { String definitionName = params.definitionName; String definitionTitle = determineDefinitionTitle(params); Model model = params.model; applyDefinitionsDocumentExtension(new DefinitionsDocumentExtension.Context(Position.DEFINITION_BEFORE, markupDocBuilder, definitionName, model)); markupDocBuilder.sectionTitleWithAnchorLevel(params.titleLevel, definitionTitle, definitionName); applyDefinitionsDocumentExtension(new DefinitionsDocumentExtension.Context(Position.DEFINITION_BEGIN, markupDocBuilder, definitionName, model)); String description = model.getDescription(); if (isNotBlank(description)) { markupDocBuilder.paragraph(markupDescription(config.getSwaggerMarkupLanguage(), markupDocBuilder, description)); } inlineDefinitions(markupDocBuilder, typeSection(markupDocBuilder, definitionName, model), definitionName); applyDefinitionsDocumentExtension(new DefinitionsDocumentExtension.Context(Position.DEFINITION_END, markupDocBuilder, definitionName, model)); applyDefinitionsDocumentExtension(new DefinitionsDocumentExtension.Context(Position.DEFINITION_AFTER, markupDocBuilder, definitionName, model)); return markupDocBuilder; }
@Override public void apply(Context context) { MarkupDocBuilder markupBuilder = context.getMarkupDocBuilder(); //<2> Position position = context.getPosition(); //<3> String definitionName = context.getDefinitionName().get(); Model definitionModel = context.getModel().get(); if (position.equals(Position.DEFINITION_END)) { markupBuilder.sectionTitleLevel1(definitionName) //<4> .paragraph(definitionModel.getDescription()) .importMarkup(new StringReader("*Markup*"), MarkupLanguage.ASCIIDOC); } // apply is executed per definition } }
/** * Builds the definitions MarkupDocument. * * @return the definitions MarkupDocument */ @Override public MarkupDocBuilder apply(MarkupDocBuilder markupDocBuilder, DefinitionsDocument.Parameters params) { Map<String, Schema> definitions = params.definitions; if (MapUtils.isNotEmpty(definitions)) { applyDefinitionsDocumentExtension(new Context(Position.DOCUMENT_BEFORE, markupDocBuilder)); buildDefinitionsTitle(markupDocBuilder, labels.getLabel(Labels.DEFINITIONS)); applyDefinitionsDocumentExtension(new Context(Position.DOCUMENT_BEGIN, markupDocBuilder)); buildDefinitionsSection(markupDocBuilder, definitions); applyDefinitionsDocumentExtension(new Context(Position.DOCUMENT_END, markupDocBuilder)); applyDefinitionsDocumentExtension(new Context(Position.DOCUMENT_AFTER, markupDocBuilder)); } return markupDocBuilder; }
@Override public MarkupDocBuilder apply(MarkupDocBuilder markupDocBuilder, Parameters params) { String definitionName = params.definitionName; Schema model = params.model; applyDefinitionsDocumentExtension(new DefinitionsDocumentExtension.Context(Position.DEFINITION_BEFORE, markupDocBuilder, definitionName, model)); markupDocBuilder.sectionTitleWithAnchorLevel(params.titleLevel, definitionName, definitionName); applyDefinitionsDocumentExtension(new DefinitionsDocumentExtension.Context(Position.DEFINITION_BEGIN, markupDocBuilder, definitionName, model)); String description = model.getDescription(); if (isNotBlank(description)) { markupDocBuilder.paragraph(markupDescription(config.getSwaggerMarkupLanguage(), markupDocBuilder, description)); } inlineDefinitions(markupDocBuilder, model, typeSection(markupDocBuilder, definitionName, model), definitionName); applyDefinitionsDocumentExtension(new DefinitionsDocumentExtension.Context(Position.DEFINITION_END, markupDocBuilder, definitionName, model)); applyDefinitionsDocumentExtension(new DefinitionsDocumentExtension.Context(Position.DEFINITION_AFTER, markupDocBuilder, definitionName, model)); return markupDocBuilder; }
/** * Builds the definitions MarkupDocument. * * @return the definitions MarkupDocument */ @Override public MarkupDocBuilder apply(MarkupDocBuilder markupDocBuilder, DefinitionsDocument.Parameters params) { Map<String, Model> definitions = params.definitions; if (MapUtils.isNotEmpty(definitions)) { applyDefinitionsDocumentExtension(new Context(Position.DOCUMENT_BEFORE, markupDocBuilder)); buildDefinitionsTitle(markupDocBuilder, labels.getLabel(Labels.DEFINITIONS)); applyDefinitionsDocumentExtension(new Context(Position.DOCUMENT_BEGIN, markupDocBuilder)); buildDefinitionsSection(markupDocBuilder, definitions); applyDefinitionsDocumentExtension(new Context(Position.DOCUMENT_END, markupDocBuilder)); applyDefinitionsDocumentExtension(new Context(Position.DOCUMENT_AFTER, markupDocBuilder)); } return markupDocBuilder; }
@Override public MarkupDocBuilder apply(MarkupDocBuilder markupDocBuilder, Parameters params) { String definitionName = params.definitionName; Model model = params.model; applyDefinitionsDocumentExtension(new DefinitionsDocumentExtension.Context(Position.DEFINITION_BEFORE, markupDocBuilder, definitionName, model)); markupDocBuilder.sectionTitleWithAnchorLevel(params.titleLevel, definitionName, definitionName); applyDefinitionsDocumentExtension(new DefinitionsDocumentExtension.Context(Position.DEFINITION_BEGIN, markupDocBuilder, definitionName, model)); String description = model.getDescription(); if (isNotBlank(description)) { markupDocBuilder.paragraph(markupDescription(config.getSwaggerMarkupLanguage(), markupDocBuilder, description)); } inlineDefinitions(markupDocBuilder, typeSection(markupDocBuilder, definitionName, model), definitionName); applyDefinitionsDocumentExtension(new DefinitionsDocumentExtension.Context(Position.DEFINITION_END, markupDocBuilder, definitionName, model)); applyDefinitionsDocumentExtension(new DefinitionsDocumentExtension.Context(Position.DEFINITION_AFTER, markupDocBuilder, definitionName, model)); return markupDocBuilder; }
/** * Builds the definitions MarkupDocument. * * @return the definitions MarkupDocument */ @Override public MarkupDocBuilder apply(MarkupDocBuilder markupDocBuilder, DefinitionsDocument.Parameters params) { Map<String, Model> definitions = params.definitions; if (MapUtils.isNotEmpty(definitions)) { applyDefinitionsDocumentExtension(new Context(Position.DOCUMENT_BEFORE, markupDocBuilder)); buildDefinitionsTitle(markupDocBuilder, labels.getLabel(Labels.DEFINITIONS)); applyDefinitionsDocumentExtension(new Context(Position.DOCUMENT_BEGIN, markupDocBuilder)); buildDefinitionsSection(markupDocBuilder, definitions); applyDefinitionsDocumentExtension(new Context(Position.DOCUMENT_END, markupDocBuilder)); applyDefinitionsDocumentExtension(new Context(Position.DOCUMENT_AFTER, markupDocBuilder)); } return markupDocBuilder; }