Java Code Examples for

The following examples show how to use These examples are extracted from open source projects. You can vote up the ones you like or vote down the ones you don't like, and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source Project: helidon-build-tools   Source File:    License: Apache License 2.0 6 votes vote down vote up
public MustacheVisitor createMustacheVisitor() {
    return new DefaultMustacheVisitor(this) {
        public void value(TemplateContext tc, String variable, boolean encoded) {
            list.add(new ValueCode(tc, df, variable, encoded) {
                public Writer execute(Writer writer, List<Object> scopes) {
                    try {
                        final Object object = get(scopes);
                        if (object instanceof NotEncoded) {
                            return appendText(run(writer, scopes));
                        } else {
                            return super.execute(writer, scopes);
                    } catch (Exception e) {
                        throw new MustacheException("Failed to get value for " + name, e, tc);
Example 2
Source Project: hesperides   Source File:    License: GNU General Public License v3.0 6 votes vote down vote up
public static List<AbstractProperty> extractPropertiesFromStringContent(String content) {
    List<AbstractProperty> properties = new ArrayList<>();
    Mustache mustache = getMustacheInstanceFromStringContent(content);
    for (Code code : mustache.getCodes()) {
        if (code instanceof ValueCode) {
            String propertyDefinition = code.getName();
            Property property = Property.extractProperty(propertyDefinition);
            if (property != null) {
        } else if (code instanceof IterableCode) {
            IterableProperty iterableProperty = IterableProperty.extractIterablePropertyFromMustacheCode((IterableCode) code);
    return properties;
Example 3
Source Project: dcos-commons   Source File:    License: Apache License 2.0 5 votes vote down vote up
protected synchronized Wrapper getWrapper(String name, List<Object> scopes) {
  Wrapper wrapper = super.getWrapper(name, scopes);
  // This should only do anything when the template param is e.g. "{{hello}}", not "{{#hello}}hi{{/hello}}".
  // The latter case implies an expectation that the value will sometimes be unset. We can determine the
  // situation based on the code type:
  // - "{{hello}}" = ValueCode <-- check for this case
  // - "{{#hello}}{{/hello}}" = IterableCode
  // - "{{^hello}}{{/hello}}" = NotIterableCode
  // - etc... "{{>partial}}", "{{!comment}}"
  if (code instanceof ValueCode && wrapper instanceof MissingWrapper) {
    missingValues.add(new MissingValue(name, tc.line()));
  return wrapper;
Example 4
Source Project: hesperides   Source File:    License: GNU General Public License v3.0 5 votes vote down vote up
 * Méthode récursive permettant d'extraire les propriétés et les propriétés itérables contenues dans une propriété itérable.
 * @param code
 * @return
public static IterableProperty extractIterablePropertyFromMustacheCode(IterableCode code) {
    String name = code.getName();
    Set<AbstractProperty> properties = new HashSet<>();

    for (Code childCode : code.getCodes()) {
        if (childCode instanceof ValueCode) {
        } else if (childCode instanceof IterableCode) {
            properties.add(extractIterablePropertyFromMustacheCode((IterableCode) childCode));
    return new IterableProperty(name, new ArrayList<>(properties));