Class TemplateEngine

java.lang.Object
io.vertx.mutiny.ext.web.common.template.TemplateEngine
All Implemented Interfaces:
MutinyDelegate
Direct Known Subclasses:
FreeMarkerTemplateEngine, HandlebarsTemplateEngine, HTTLTemplateEngine, MVELTemplateEngine, PebbleTemplateEngine, PugTemplateEngine, RockerTemplateEngine, ThymeleafTemplateEngine

public class TemplateEngine extends Object implements MutinyDelegate
A template template uses a specific template and the data in a routing context to render a resource into a buffer.

Concrete implementations exist for several well-known template engines.

NOTE: This class has been automatically generated from the original non Mutiny-ified interface.

Author:
Tim Fox
See Also:
  • TemplateEngine
  • Field Details

  • Constructor Details

    • TemplateEngine

      public TemplateEngine(io.vertx.ext.web.common.template.TemplateEngine delegate)
      Create a new instance of TemplateEngine delegating to the given (non-null) instance of TemplateEngine.
    • TemplateEngine

      public TemplateEngine(Object delegate)
  • Method Details

    • getDelegate

      public io.vertx.ext.web.common.template.TemplateEngine getDelegate()
      Get the delegate instance.

      This method returns the instance on which this shim is delegating the calls. And so, give you access to the bare API.

      Specified by:
      getDelegate in interface MutinyDelegate
      Returns:
      the delegate instance
    • render

      @CheckReturnValue public io.smallrye.mutiny.Uni<io.vertx.core.buffer.Buffer> render(io.vertx.core.json.JsonObject context, String templateFileName)
      Render the template. Template engines that support partials/fragments should extract the template base path from the template filename up to the last file separator. Some engines support localization, for these engines, there is a predefined key "lang" to specify the language to be used in the localization, the format should follow the standard locale formats e.g.: "en-gb", "pt-br", "en".

      Unlike the bare Vert.x variant, this method returns a Uni. The uni emits the result of the operation as item. If the operation fails, the uni emits the failure.

      Don't forget to subscribe on it to trigger the operation.

      Parameters:
      context - the routing context
      templateFileName - the template file name to use
      Returns:
      A Uni representing the asynchronous result of this operation.
      See Also:
      • TemplateEngine.render(JsonObject, String)
    • renderAndAwait

      public io.vertx.core.buffer.Buffer renderAndAwait(io.vertx.core.json.JsonObject context, String templateFileName)
      Render the template. Template engines that support partials/fragments should extract the template base path from the template filename up to the last file separator. Some engines support localization, for these engines, there is a predefined key "lang" to specify the language to be used in the localization, the format should follow the standard locale formats e.g.: "en-gb", "pt-br", "en".

      Unlike the bare Vert.x variant, this method returns a Buffer. This method awaits indefinitely for the completion of the underlying asynchronous operation. If the operation completes successfully, the result is returned, otherwise the failure is thrown (potentially wrapped in a RuntimeException).

      Parameters:
      context - the routing context
      templateFileName - the template file name to use
      Returns:
      The operation result
      See Also:
      • TemplateEngine.render(JsonObject, String)
    • renderAndForget

      public TemplateEngine renderAndForget(io.vertx.core.json.JsonObject context, String templateFileName)
      Render the template. Template engines that support partials/fragments should extract the template base path from the template filename up to the last file separator. Some engines support localization, for these engines, there is a predefined key "lang" to specify the language to be used in the localization, the format should follow the standard locale formats e.g.: "en-gb", "pt-br", "en".

      Unlike the bare Vert.x variant, this method ignores the Buffer result or any failure.

      Parameters:
      context - the routing context
      templateFileName - the template file name to use
      Returns:
      The current instance to chain operations if needed.
      See Also:
      • TemplateEngine.render(JsonObject, String)
    • render

      @CheckReturnValue public io.smallrye.mutiny.Uni<io.vertx.core.buffer.Buffer> render(Map<String,Object> context, String templateFileName)
      Render the template. Template engines that support partials/fragments should extract the template base path from the template filename up to the last file separator. Some engines support localization, for these engines, there is a predefined key "lang" to specify the language to be used in the localization, the format should follow the standard locale formats e.g.: "en-gb", "pt-br", "en".

      Unlike the bare Vert.x variant, this method returns a Uni. The uni emits the result of the operation as item. If the operation fails, the uni emits the failure.

      Don't forget to subscribe on it to trigger the operation.

      Parameters:
      context - the routing context
      templateFileName - the template file name to use
      Returns:
      A Uni representing the asynchronous result of this operation.
      See Also:
      • TemplateEngine.render(Map, String)
    • renderAndAwait

      public io.vertx.core.buffer.Buffer renderAndAwait(Map<String,Object> context, String templateFileName)
      Render the template. Template engines that support partials/fragments should extract the template base path from the template filename up to the last file separator. Some engines support localization, for these engines, there is a predefined key "lang" to specify the language to be used in the localization, the format should follow the standard locale formats e.g.: "en-gb", "pt-br", "en".

      Unlike the bare Vert.x variant, this method returns a Buffer. This method awaits indefinitely for the completion of the underlying asynchronous operation. If the operation completes successfully, the result is returned, otherwise the failure is thrown (potentially wrapped in a RuntimeException).

      Parameters:
      context - the routing context
      templateFileName - the template file name to use
      Returns:
      The operation result
      See Also:
      • TemplateEngine.render(Map, String)
    • renderAndForget

      public TemplateEngine renderAndForget(Map<String,Object> context, String templateFileName)
      Render the template. Template engines that support partials/fragments should extract the template base path from the template filename up to the last file separator. Some engines support localization, for these engines, there is a predefined key "lang" to specify the language to be used in the localization, the format should follow the standard locale formats e.g.: "en-gb", "pt-br", "en".

      Unlike the bare Vert.x variant, this method ignores the Buffer result or any failure.

      Parameters:
      context - the routing context
      templateFileName - the template file name to use
      Returns:
      The current instance to chain operations if needed.
      See Also:
      • TemplateEngine.render(Map, String)
    • unwrap

      public Object unwrap()
      Returns the underlying engine, so further configurations or customizations may be applied or null when the engine cannot unwrap it.
      Returns:
      the engine instance.
    • clearCache

      public void clearCache()
      Clears any internal caches used by this engine. For most engines this means clearing the vert.x cache, implementations that do not use vert.x as a cache should clear their own cache.
    • newInstance

      public static TemplateEngine newInstance(io.vertx.ext.web.common.template.TemplateEngine delegate)
      Creates a new instance of the TemplateEngine.
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object