Package io.quarkus.qute
Class SetSectionHelper.Factory
- java.lang.Object
-
- io.quarkus.qute.SetSectionHelper.Factory
-
- All Implemented Interfaces:
SectionHelperFactory<SetSectionHelper>
- Enclosing class:
- SetSectionHelper
public static class SetSectionHelper.Factory extends Object implements SectionHelperFactory<SetSectionHelper>
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface io.quarkus.qute.SectionHelperFactory
SectionHelperFactory.BlockInfo, SectionHelperFactory.ParametersInfo, SectionHelperFactory.ParserDelegate, SectionHelperFactory.SectionInitContext
-
-
Field Summary
Fields Modifier and Type Field Description static StringHINT_PREFIX-
Fields inherited from interface io.quarkus.qute.SectionHelperFactory
MAIN_BLOCK_NAME
-
-
Constructor Summary
Constructors Constructor Description Factory()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description List<String>getDefaultAliases()SectionHelperFactory.ParametersInfogetParameters()A factory may definefactory parametersfor the start tag of any section block.SetSectionHelperinitialize(SectionHelperFactory.SectionInitContext context)Initialize a new helper instance for a specific section node in a template.ScopeinitializeBlock(Scope previousScope, SectionHelperFactory.BlockInfo block)Initialize a section block.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface io.quarkus.qute.SectionHelperFactory
cacheFactoryConfig, getBlockLabels, treatUnknownSectionsAsBlocks
-
-
-
-
Field Detail
-
HINT_PREFIX
public static final String HINT_PREFIX
- See Also:
- Constant Field Values
-
-
Method Detail
-
getDefaultAliases
public List<String> getDefaultAliases()
- Specified by:
getDefaultAliasesin interfaceSectionHelperFactory<SetSectionHelper>- Returns:
- the list of default aliases used to match the helper
- See Also:
SectionHelperFactory.cacheFactoryConfig()
-
getParameters
public SectionHelperFactory.ParametersInfo getParameters()
Description copied from interface:SectionHelperFactoryA factory may definefactory parametersfor the start tag of any section block. A factoryParameterhas a name and optional default value. The default value is automatically assigned if no other value is set by a parser. A parameter may be optional. A non-optional parameter that has no value assigned results in a parser error.A section block in a template defines the
actual parameters:{! The value is "item.isActive". The name is not defined. !} {#if item.isActive}{/} {! The name is "age" and the value is "10". !} {#let age=10}{/}The actual parameters are parsed taking the factory parameters into account:- Named actual params are processed first and the relevant values are assigned, e.g. the param with name
agehas the value10, - Then, if the number of actual params is greater or equals to the number of factory params the values are set according to position of factory params,
- Otherwise, the values are set according to position but params with no default value take precedence.
- Finally, all unset parameters that define a default value are initialized with the default value.
- Specified by:
getParametersin interfaceSectionHelperFactory<SetSectionHelper>- Returns:
- the factory parameters
- See Also:
SectionHelperFactory.cacheFactoryConfig(),SectionHelperFactory.BlockInfo.getParameters()
- Named actual params are processed first and the relevant values are assigned, e.g. the param with name
-
initialize
public SetSectionHelper initialize(SectionHelperFactory.SectionInitContext context)
Description copied from interface:SectionHelperFactoryInitialize a new helper instance for a specific section node in a template.- Specified by:
initializein interfaceSectionHelperFactory<SetSectionHelper>- Returns:
- a new helper instance
-
initializeBlock
public Scope initializeBlock(Scope previousScope, SectionHelperFactory.BlockInfo block)
Description copied from interface:SectionHelperFactoryInitialize a section block.All section blocks are initialized before
SectionHelperFactory.initialize(SectionInitContext)is called.The factory is responsible to register all expression via
SectionHelperFactory.BlockInfo.addExpression(String, String). The expression can be then used duringSectionHelperFactory.initialize(SectionInitContext)viaSectionHelperFactory.SectionInitContext.getExpression(String)andSectionBlock.expressions.- Specified by:
initializeBlockin interfaceSectionHelperFactory<SetSectionHelper>- Returns:
- a new scope if this section introduces a new scope, or the outer scope
- See Also:
SectionHelperFactory.BlockInfo.addExpression(String, String)
-
-