PippoSettings pippoSettings = getPippoSettings(); MustacheEngineBuilder builder = MustacheEngineBuilder.newBuilder(); builder.setLocaleSupport(localeSupport); builder.setProperty(EngineConfigurationKey.DEFAULT_FILE_ENCODING, PippoConstants.UTF8); builder.registerHelper("ng", new AngularJsHelper()); builder.registerHelper("i18n", new I18nHelper(application.getMessages())); builder.registerHelper("formatTime", new DateTimeFormatHelper()); builder.registerHelper("prettyTime", new PrettyTimeHelper()); builder.registerHelper("webjarsAt", new WebjarsAtHelper(router)); builder.registerHelper("publicAt", new PublicAtHelper(router)); builder.registerHelpers(HelpersBuilder.extra().build()); builder.addTemplateLocator(new ClassPathTemplateLocator(10, pathPrefix, MUSTACHE)); builder.setProperty(EngineConfigurationKey.DEBUG_MODE, true); } else { builder.addMustacheListener(Minify.htmlListener()); builder.addGlobalData("contextPath", router.getContextPath()); builder.addGlobalData("appPath", router.getApplicationPath()); engine = builder.build();
@Setup public void setup() { template = MustacheEngineBuilder.newBuilder() // Disable HTML escaping .setProperty(EngineConfigurationKey.SKIP_VALUE_ESCAPING, true) // Disable useless resolver .setProperty(CombinedIndexResolver.ENABLED_KEY, false) .addTemplateLocator(ClassPathTemplateLocator.builder(1).setRootPath("templates").setScanClasspath(false).setSuffix("trimou.html").build()) .registerHelpers(HelpersBuilder.extra().build()) // This is a single purpose helper // It's a pity we can't use JDK8 extension and SimpleHelpers util class .registerHelper("minusClass", new BasicValueHelper() { @Override public void execute(Options options) { Object value = options.getParameters().get(0); if (value instanceof Double && (Double) value < 0) { options.append(" class=\"minus\""); } // We don't handle any other number types } }).build().getMustache("stocks"); this.context = getContext(); }
.newBuilder() .addTemplateLocator(locator1) .addTemplateLocator(locator2) .setLocaleSupport(FixedLocaleSupport.from(Locales.forName(locale))) .registerHelper("i18n", i18n) .registerHelper("each", new EachHelperEx()) .registerHelper("ifeq", new EqualsHelper()) .registerHelper("ifneq", new EqualsHelper(true)) .registerHelper("join", new JoinHelper()) .registerHelper("json", new JsonHelper()) .registerHelper("lower_", new LowerUnderscoreHelper()) .registerHelper("basename", new BaseNameHelper(false)) .registerHelper("lower_basename", new BaseNameHelper(true)) .build();
@Override public synchronized void init(ProcessingEnvironment processingEnv) { super.init(processingEnv); types = processingEnv.getTypeUtils(); elements = processingEnv.getElementUtils(); filer = processingEnv.getFiler(); messager = processingEnv.getMessager(); engine = MustacheEngineBuilder .newBuilder() .addResolver(new MapResolver()) .addResolver(new ReflectionResolver()) .setProperty(EngineConfigurationKey.DEFAULT_FILE_ENCODING, StandardCharsets.UTF_8.name()) .addTemplateLocator(ClassPathTemplateLocator.builder(1) .setClassLoader(this.getClass().getClassLoader()) .setSuffix("mustache").build()) .build(); messager.printMessage(NOTE, ApiGeneratorProcessor.class.getSimpleName() + " loaded"); }
/** * Each helper must be registered with a unique name. If there is a helper * registered with the same name and the param <code>overwrite</code> is * <code>true</code> the previous instance is replaced, otherwise an * {@link IllegalArgumentException} is thrown. * * @param helpers * @param overwrite * @return */ public MustacheEngineBuilder registerHelpers(Map<String, Helper> helpers, boolean overwrite) { checkArgumentNotNull(helpers); checkNotBuilt(); for (Entry<String, Helper> entry : helpers.entrySet()) { registerHelper(entry.getKey(), entry.getValue(), overwrite); } return this; }
/** * Sets a configuration property. * * @param configurationKey * @param value * @param <T> * The type of configuration key * @return self */ public <T extends ConfigurationKey> MustacheEngineBuilder setProperty( T configurationKey, Object value) { checkArgumentsNotNull(configurationKey, value); checkNotBuilt(); setProperty(configurationKey.get(), value); return this; }
/** * Each helper must be registered with a unique name. If there are more * helpers registered with the same name an {@link IllegalArgumentException} * is thrown. Use {@link #registerHelper(String, Helper, boolean)} to * overwrite the helper. * * @param name * @param helper * @return self */ public MustacheEngineBuilder registerHelper(String name, Helper helper) { return registerHelper(name, helper, false); }
/** * Each helper must be registered with a unique name. If there are more * helpers registered with the same name an {@link IllegalArgumentException} * is thrown. Use {@link #registerHelpers(Map, boolean)} to overwrite the * helpers. * * @param helpers * @return self */ public MustacheEngineBuilder registerHelpers(Map<String, Helper> helpers) { return registerHelpers(helpers, false); }
PippoSettings pippoSettings = getPippoSettings(); MustacheEngineBuilder builder = MustacheEngineBuilder.newBuilder(); builder.setLocaleSupport(localeSupport); builder.setProperty(EngineConfigurationKey.DEFAULT_FILE_ENCODING, PippoConstants.UTF8); builder.registerHelper("ng", new AngularJsHelper()); builder.registerHelper("i18n", new I18nHelper(application.getMessages())); builder.registerHelper("formatTime", new DateTimeFormatHelper()); builder.registerHelper("prettyTime", new PrettyTimeHelper()); builder.registerHelper("webjarsAt", new WebjarsAtHelper(router)); builder.registerHelper("publicAt", new PublicAtHelper(router)); builder.registerHelpers(HelpersBuilder.extra().build()); builder.addTemplateLocator(new ClassPathTemplateLocator(10, pathPrefix, MUSTACHE)); builder.setProperty(EngineConfigurationKey.DEBUG_MODE, true); } else { builder.addMustacheListener(Minify.htmlListener()); builder.addGlobalData("contextPath", router.getContextPath()); builder.addGlobalData("appPath", router.getApplicationPath()); engine = builder.build();