com.reprezen.genflow.swagger.doc.ExamplesHelper Maven / Gradle / Ivy
package com.reprezen.genflow.swagger.doc;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.ObjectWriter;
import com.reprezen.genflow.swagger.doc.Helper;
import com.reprezen.genflow.swagger.doc.HelperHelper;
import com.reprezen.genflow.swagger.doc.HtmlHelper;
import java.util.List;
import java.util.Map;
import java.util.Set;
import org.eclipse.xtend2.lib.StringConcatenation;
import org.eclipse.xtext.xbase.lib.Exceptions;
import org.eclipse.xtext.xbase.lib.Extension;
@SuppressWarnings("all")
public class ExamplesHelper implements Helper {
@Extension
private HtmlHelper htmlHelper;
@Override
public void init() {
HtmlHelper _htmlHelper = HelperHelper.getHtmlHelper();
this.htmlHelper = _htmlHelper;
}
public CharSequence renderExamples(final Map examples) {
CharSequence _xifexpression = null;
boolean _and = false;
if (!(examples != null)) {
_and = false;
} else {
boolean _isEmpty = examples.isEmpty();
boolean _not = (!_isEmpty);
_and = _not;
}
if (_and) {
StringConcatenation _builder = new StringConcatenation();
_builder.append("Examples
");
_builder.newLine();
_builder.append("");
_builder.newLine();
{
Set _keySet = examples.keySet();
for(final String key : _keySet) {
_builder.append(" ");
_builder.append("- ");
_builder.append(key, " ");
_builder.append("
");
_builder.newLineIfNotEmpty();
_builder.append(" ");
_builder.append("- ");
_builder.newLine();
_builder.append(" ");
_builder.append(" ");
_builder.append("
");
_builder.newLine();
_builder.append(" ");
_builder.append(" ");
T _get = examples.get(key);
String _exampleText = null;
if (_get!=null) {
_exampleText=this.getExampleText(_get);
}
String _htmlEscape = null;
if (_exampleText!=null) {
_htmlEscape=this.htmlHelper.htmlEscape(_exampleText);
}
_builder.append(_htmlEscape, " ");
_builder.newLineIfNotEmpty();
_builder.append(" ");
_builder.append(" ");
_builder.append("");
_builder.newLine();
_builder.append(" ");
_builder.append(" ");
_builder.newLine();
}
}
_builder.append("
");
_builder.newLine();
_xifexpression = _builder;
}
return _xifexpression;
}
public String getExampleText(final Object value) {
try {
String _switchResult = null;
boolean _matched = false;
if (!_matched) {
if (value instanceof Map) {
_matched=true;
ObjectMapper _objectMapper = new ObjectMapper();
ObjectWriter _writerWithDefaultPrettyPrinter = _objectMapper.writerWithDefaultPrettyPrinter();
_switchResult = _writerWithDefaultPrettyPrinter.writeValueAsString(value);
}
}
if (!_matched) {
if (value instanceof List) {
_matched=true;
ObjectMapper _objectMapper = new ObjectMapper();
ObjectWriter _writerWithDefaultPrettyPrinter = _objectMapper.writerWithDefaultPrettyPrinter();
_switchResult = _writerWithDefaultPrettyPrinter.writeValueAsString(value);
}
}
if (!_matched) {
_switchResult = value.toString();
}
return _switchResult;
} catch (Throwable _e) {
throw Exceptions.sneakyThrow(_e);
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy