Package com.github.jknack.handlebars
Interface HelperRegistry
-
- All Known Implementing Classes:
DefaultHelperRegistry
,Handlebars
public interface HelperRegistry
The helper registry.- Since:
- 1.2.0
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
HELPER_MISSING
The missing helper's name.
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description Decorator
decorator(java.lang.String name)
Find a decorator by name.<C> Helper<C>
helper(java.lang.String name)
Find a helper by name.java.util.Set<java.util.Map.Entry<java.lang.String,Helper<?>>>
helpers()
List all the helpers from registry.HelperRegistry
registerDecorator(java.lang.String name, Decorator decorator)
Register a decorator and make it accessible viadecorator(String)
.<H> HelperRegistry
registerHelper(java.lang.String name, Helper<H> helper)
Register a helper in the helper registry.<H> HelperRegistry
registerHelperMissing(Helper<H> helper)
Register the special helper missing in the registry.HelperRegistry
registerHelpers(java.io.File input)
Register helpers from a JavaScript source.HelperRegistry
registerHelpers(java.lang.Class<?> helperSource)
Register all the helper methods for the given helper source.HelperRegistry
registerHelpers(java.lang.Object helperSource)
Register all the helper methods for the given helper source.HelperRegistry
registerHelpers(java.lang.String filename, java.io.InputStream source)
Register helpers from a JavaScript source.HelperRegistry
registerHelpers(java.lang.String filename, java.io.Reader source)
Register helpers from a JavaScript source.HelperRegistry
registerHelpers(java.lang.String filename, java.lang.String source)
Register helpers from a JavaScript source.HelperRegistry
registerHelpers(java.net.URI location)
Register helpers from a JavaScript source.HelperRegistry
setCharset(java.nio.charset.Charset charset)
Set the charset to use.
-
-
-
Field Detail
-
HELPER_MISSING
static final java.lang.String HELPER_MISSING
The missing helper's name.- See Also:
- Constant Field Values
-
-
Method Detail
-
helper
<C> Helper<C> helper(java.lang.String name)
Find a helper by name.- Type Parameters:
C
- The helper runtime type.- Parameters:
name
- The helper's name. Required.- Returns:
- A helper or null if it's not found.
-
helpers
java.util.Set<java.util.Map.Entry<java.lang.String,Helper<?>>> helpers()
List all the helpers from registry.- Returns:
- Available helpers in the registry.
-
registerHelper
<H> HelperRegistry registerHelper(java.lang.String name, Helper<H> helper)
Register a helper in the helper registry.- Type Parameters:
H
- The helper runtime type.- Parameters:
name
- The helper's name. Required.helper
- The helper object. Required.- Returns:
- This handlebars.
-
registerHelperMissing
<H> HelperRegistry registerHelperMissing(Helper<H> helper)
Register the special helper missing in the registry.- Type Parameters:
H
- The helper runtime type.- Parameters:
helper
- The helper object. Required.- Returns:
- This handlebars.
-
registerHelpers
HelperRegistry registerHelpers(java.lang.Object helperSource)
Register all the helper methods for the given helper source.
A helper method looks like:
public static? CharSequence methodName(context?, parameter*, options?) { }
Where:- A method can/can't be static
- The method's name became the helper's name
- Context, parameters and options are all optional
- If context and options are present they must be the first and last method arguments.
- Parameters:
helperSource
- The helper source. Required.- Returns:
- This handlebars object.
-
registerHelpers
HelperRegistry registerHelpers(java.lang.Class<?> helperSource)
Register all the helper methods for the given helper source.
A helper method looks like:
public static? CharSequence methodName(context?, parameter*, options?) { }
Where:- A method can/can't be static
- The method's name became the helper's name
- Context, parameters and options are all optional
- If context and options are present they must be the first and last method arguments.
Enums are supported too
- Parameters:
helperSource
- The helper source. Enums are supported. Required.- Returns:
- This handlebars object.
-
registerHelpers
HelperRegistry registerHelpers(java.net.URI location) throws java.lang.Exception
Register helpers from a JavaScript source.
A JavaScript source file looks like:
Handlebars.registerHelper('hey', function (context) { return 'Hi ' + context.name; }); ... Handlebars.registerHelper('hey', function (context, options) { return 'Hi ' + context.name + options.hash['x']; }); ... Handlebars.registerHelper('hey', function (context, p1, p2, options) { return 'Hi ' + context.name + p1 + p2 + options.hash['x']; }); ...
To keep your helpers reusable between server and client avoid DOM manipulation.- Parameters:
location
- A classpath location. Required.- Returns:
- This handlebars object.
- Throws:
java.lang.Exception
- If the JavaScript helpers can't be registered.
-
registerHelpers
HelperRegistry registerHelpers(java.io.File input) throws java.lang.Exception
Register helpers from a JavaScript source.
A JavaScript source file looks like:
Handlebars.registerHelper('hey', function (context) { return 'Hi ' + context.name; }); ... Handlebars.registerHelper('hey', function (context, options) { return 'Hi ' + context.name + options.hash['x']; }); ... Handlebars.registerHelper('hey', function (context, p1, p2, options) { return 'Hi ' + context.name + p1 + p2 + options.hash['x']; }); ...
To keep your helpers reusable between server and client avoid DOM manipulation.- Parameters:
input
- A JavaScript file name. Required.- Returns:
- This handlebars object.
- Throws:
java.lang.Exception
- If the JavaScript helpers can't be registered.
-
registerHelpers
HelperRegistry registerHelpers(java.lang.String filename, java.io.Reader source) throws java.lang.Exception
Register helpers from a JavaScript source.
A JavaScript source file looks like:
Handlebars.registerHelper('hey', function (context) { return 'Hi ' + context.name; }); ... Handlebars.registerHelper('hey', function (context, options) { return 'Hi ' + context.name + options.hash['x']; }); ... Handlebars.registerHelper('hey', function (context, p1, p2, options) { return 'Hi ' + context.name + p1 + p2 + options.hash['x']; }); ...
To keep your helpers reusable between server and client avoid DOM manipulation.- Parameters:
filename
- The file name (just for debugging purpose). Required.source
- The JavaScript source. Required.- Returns:
- This handlebars object.
- Throws:
java.lang.Exception
- If the JavaScript helpers can't be registered.
-
registerHelpers
HelperRegistry registerHelpers(java.lang.String filename, java.io.InputStream source) throws java.lang.Exception
Register helpers from a JavaScript source.
A JavaScript source file looks like:
Handlebars.registerHelper('hey', function (context) { return 'Hi ' + context.name; }); ... Handlebars.registerHelper('hey', function (context, options) { return 'Hi ' + context.name + options.hash['x']; }); ... Handlebars.registerHelper('hey', function (context, p1, p2, options) { return 'Hi ' + context.name + p1 + p2 + options.hash['x']; }); ...
To keep your helpers reusable between server and client avoid DOM manipulation.- Parameters:
filename
- The file name (just for debugging purpose). Required.source
- The JavaScript source. Required.- Returns:
- This handlebars object.
- Throws:
java.lang.Exception
- If the JavaScript helpers can't be registered.
-
registerHelpers
HelperRegistry registerHelpers(java.lang.String filename, java.lang.String source) throws java.io.IOException
Register helpers from a JavaScript source.
A JavaScript source file looks like:
Handlebars.registerHelper('hey', function (context) { return 'Hi ' + context.name; }); ... Handlebars.registerHelper('hey', function (context, options) { return 'Hi ' + context.name + options.hash['x']; }); ... Handlebars.registerHelper('hey', function (context, p1, p2, options) { return 'Hi ' + context.name + p1 + p2 + options.hash['x']; }); ...
To keep your helpers reusable between server and client avoid DOM manipulation.- Parameters:
filename
- The file name (just for debugging purpose). Required.source
- The JavaScript source. Required.- Returns:
- This registry.
- Throws:
java.io.IOException
- If the JavaScript helpers can't be registered.
-
decorator
Decorator decorator(java.lang.String name)
Find a decorator by name.- Parameters:
name
- A decorator's name.- Returns:
- A decorator or
null
. - Since:
- 4.0.0
-
registerDecorator
HelperRegistry registerDecorator(java.lang.String name, Decorator decorator)
Register a decorator and make it accessible viadecorator(String)
.- Parameters:
name
- A decorator's name. Required.decorator
- A decorator. Required.- Returns:
- This registry.
- Since:
- 4.0.0
-
setCharset
HelperRegistry setCharset(java.nio.charset.Charset charset)
Set the charset to use.- Parameters:
charset
- Charset.- Returns:
- This registry.
- Since:
- 4.0.6
-
-