@Override public void document(Operation operation) throws IOException { RestDocumentationContext context = (RestDocumentationContext) operation .getAttributes().get(RestDocumentationContext.class.getName()); WriterResolver writerResolver = (WriterResolver) operation.getAttributes() .get(WriterResolver.class.getName()); try (Writer writer = writerResolver.resolve( operation.getName() + "/" + getSnippetName(), this.file, context)) { Map<String, Object> model = createModel(operation); model.putAll(getAttributes()); TemplateEngine templateEngine = (TemplateEngine) operation.getAttributes() .get(TemplateEngine.class.getName()); writer.append(templateEngine.compileTemplate(getSnippetName()).render(model)); } }
private String extractUrlTemplate(Operation operation) { String urlTemplate = (String) operation.getAttributes() .get(RestDocumentationGenerator.ATTRIBUTE_NAME_URL_TEMPLATE); Assert.notNull(urlTemplate, "urlTemplate not found. If you are using MockMvc did " + "you use RestDocumentationRequestBuilders to build the request?"); return urlTemplate; }
@Override public void document(Operation operation) throws IOException { RestDocumentationContext context = (RestDocumentationContext) operation .getAttributes().get(RestDocumentationContext.class.getName()); WriterResolver writerResolver = (WriterResolver) operation.getAttributes() .get(WriterResolver.class.getName()); try (Writer writer = writerResolver.resolve(operation.getName(), this.snippetName, context)) { Map<String, Object> model = createModel(operation); model.putAll(this.attributes); TemplateEngine templateEngine = (TemplateEngine) operation.getAttributes() .get(TemplateEngine.class.getName()); writer.append( templateEngine.compileTemplate(this.templateName).render(model)); } }
private void verifySnippetInvocation(Snippet snippet, Map<String, Object> attributes) throws IOException { ArgumentCaptor<Operation> operation = ArgumentCaptor.forClass(Operation.class); verify(snippet).document(operation.capture()); assertThat(this.operationRequest).isEqualTo(operation.getValue().getRequest()); assertThat(this.operationResponse).isEqualTo(operation.getValue().getResponse()); assertThat(attributes).isEqualTo(operation.getValue().getAttributes()); }
private void verifySnippetInvocation(InOrder inOrder, Snippet snippet, Map<String, Object> attributes) throws IOException { ArgumentCaptor<Operation> operation = ArgumentCaptor.forClass(Operation.class); inOrder.verify(snippet).document(operation.capture()); assertThat(this.operationRequest).isEqualTo(operation.getValue().getRequest()); assertThat(this.operationResponse).isEqualTo(operation.getValue().getResponse()); assertThat(attributes).isEqualTo(operation.getValue().getAttributes()); }