All Classes and Interfaces
Class
Description
An abstract jstachio that just needs a
JStachioExtensions
container.Entry point.
Entry point and class that defines shared jstachio config to be imported in other
places with
JStacheConfig.using()
.A singleton like decorator for appendables that has additional methods for dealing with
native types used to output variables that have been formatted.
An encoded output that will store the output in its preferred memory structure and can
then be copied to an
OutputStream
or read from a ReadableByteChannel
.A custom OutputStream that is designed for generating bytes from pre-encoded output as
well as reused carefully either by threadlocals or some other pooling
mechanism.
An encoded output optimized for producing a single
ByteBuffer
.Maintains the encoded output in an iterable of chunks of type
T
that is
optimized for BufferedEncodedOutput.asReadableByteChannel()
.A special JStachio that can render models with a loose typed context object bound to
"@context".
This interface serves three puproses:
A way to represent the current context stack (see
ContextNode.parent()
)
Allow you to simulate JSON/Javscript object node like trees without being coupled
to a particularly JSON lib.A marker interface to signify something is context aware.
A context aware template.
Default formatters.
Default view implementation.
Opinionated static config for dropwizard based on how dropwizard stores templates for
Mustache.java.
An Escaper is an
Appender
used to escape content such as HTML.Dropwizard example application entry point.
Since JStachio is mostly static configuration this class is empty.
A JStache model using external template:
src/main/resources/io/jstach/opt/dropwizard/example/ExampleModel.mustache
.Generated Renderer.
Dropwizard JAXRS example resource highlighting JStachio integration.
Formats and then sends the results to the downstream appender.
Implement to allow formatting of custom objects you want to output.
An encoded output that forwards all calls to a delegate.
An encoded output that forwards all calls to a delegate.
Example hello world controller using different ways to use JStachio for web
development.
Example hello world controller using different ways to use JStachio for web
development.
Model using a resource template that is in src/main/resources/views.
Model using a resource template that is in src/main/resources/views.
Model that implements
JStachioModelView
using a resource template that is in
src/main/resources/views.Generated Renderer.
Generated Renderer.
Generated Renderer.
Provides a mustache spec based HTML escaper which is the default in normal mustache.
Deprecated.
This extension does not reliably mimic JStachio's mustache support
unfortunately based on feedback we have decided to deprecate this and recommend using
other mechanisms for hot reload.
Generates a JStachio Renderer from a template and a model (the annotated class).
Place on package to generate a TemplateProvider/JStachioTemplateFinder that will have a
catalog of all public generated JStache templates in the compile time boundary that are
of type
JStacheType.JSTACHIO
.Configuration flags for generating template catalogs such
META-INF/services
files.Set module or package level config for
JStache
annotated models that do not
have the configuration explicitly set (e.g.Register escapers or filters.
A sentinel null object content type marker to auto resolve the content type based
on config found elsewhere.
Compiler feature flags that are subject to change.
Compiler flags.
Statically registers a formatter.
A formatter type marker to resolve the formatter based on config elsewhere.
Statically sets allowed formatting types.
This annotation is useful to force models and templates implement interfaces or have
annotations particularly where you want all models to implement a lambda mixin
interface.
Tag a method to be used as a mustache lambda section for custom logic.
Tag a method return type of String or parameter of String to be used as a raw
unprocessed string.
Configures how to name the generated template java code (the classes generated from
JStache annotations).
Allows you to define and remap/override partials on a model (
JStache
)Allows you to define and remap/override partials on a model.
Configure how the paths of templates map to actual source resources.
Tells the annotation processor what kind of code to generate namely whether to generate
full fledged jstachio templates (default
JStacheType.JSTACHIO
) or zero
dependency templates (JStacheType.STACHE
).Have JStache models implement this mixin interface for easier support to generate views
from models.
Render models by using reflection or static catalog to lookup generated templates as
well as apply filtering and fallback mechanisms.
Auto Configures JStachio for Spring Boot.
Runtime Config Service.
Configures JStachio Spring style.
Encodes a JStachio model into a bytes to be used as output from a webflux reactive
controller.
An SPI extension point via the
ServiceLoader
or other mechanisms like DI.An extension that is a factory that provides other extensions.
A container that will hold all resolved
JStachioExtension
s and consolidate them
to a single instances of various services.A marker interface used for JStachio implementations that provide access to
extensions.
Creates JStachios mainly with the
ServiceLoader
or a JStachioFactory.Builder
.Builder for creating a custom JStachio.
Advises, intercepts or filters a template before being rendered.
A fully composed chain that renders a model by applying filtering.
Type-safe way to use JStachio in Spring Web.
One way to use JStachio with Spring Webflux is to use this special View that will
delegate to JStachio to render.
Another way to use JStachio with Spring MVC is to have models implement Springs
View
interface.User can provide instances in the application context and they will be applied to each
JStachioModelView
instance before rendering.User can provide instances in the application context and they will be applied to each
JStachioModelView
instance before rendering.@ConfigurationProperties
for JStachio.Finds templates based on the model type (class).
An easier to implement template finder based on a sequence of templates.
An interface to mark JStachio dropwizard views
Dropwizard view support.
MVC AutoConfiguration for JStachio runtime.
This output will limit buffering by byte count and then fallback
to pushing to the downstream output type of
T
once limit is exceeded.Message wiring.
Spring configuration to add a
JStachioModelViewConfigurer
for MessagePage.Example controller that uses a View which has global state injected into it via a
handler interceptor.
Example controller that uses a View which has global state injected into it via a
handler interceptor.
Model using a configurer to add state.
Model using a configurer to add state.
Generated Renderer.
Generated Renderer.
Extend this class to make
JStache
model act like JSON object or a
java.util.Map.A low level abstraction and implementation detail analogous to
Appendable
and
DataOutput
.An encoded output that can be closed.
A specialized Output designed for pre-encoded templates that have already encoded
byte arrays to be used directly.
String Builder based output.
An OutputStream like callback.
Creates output like objects with a buffer size.
Provides NOOP escaper for working with plain text.
Renders models of type
T
by writing to an Appendable.A servlet server aware
JStachioHttpMessageConverter
that will leverage
ServletResponse.setBufferSize(int)
to reduce duplicate buffering.Formatter that follows the spec rules that if a variable is
null
it will
be an empty string (ie NOOP).Static config for Spring Boot like conventions of finding templates in
classpath:/templates
.A JStachio that does not use the service loader.
JStachio services based on Spring notably the config and
template finding.
Configures JStachio Spring style.
A JStachio Template is a renderer that has template meta data.
EXPERIMENTAL support of pre-encoded templates that have the static
parts of the template already encoded into bytes.
Generated template catalog.
A Container for optional template collaborators for ease of wiring generated
Template
s.Template meta data like its location, formatters, escapers and or its contents.
Symbols representing where the template was retrieved from.
A template and model combined with convenience methods.
A
ServiceLoader
interface for finding Template
s.Generated template providers implement this interface to support easier
ServiceLoader registration for modular libraries/applications.
Locates generated templates by their model via reflection.
Resolved
JStachePath
config by replacing JStachePath.UNSPECIFIED
with default values.Strategy to load templates dynamically.
This abstract output will limit buffering by byte count and then
fallback to pushing to the downstream output type of
T
once limit is
exceeded.An OutputStream backed buffer limited encoded output.
A mixin for generated templates to create dropwizard views.
A
HandlerInterceptor
to automatically resolve a Controller
method
return value that is a JStache
model into a JStachioModelView
.A
BeanPostProcessor
that it registers a HandlerResultHandler
that
automatically applies all JStachioModelViewConfigurer
instances to views before
rendering.A
HandlerInterceptor
that automatically applies all
JStachioModelViewConfigurer
instances to views before rendering.Configures WebFlux using
JStachioEncoder
to allow returning models which will
be rendered using JStachio runtime.