Package groovy.text.markup
Class TemplateConfiguration
java.lang.Object
groovy.text.markup.TemplateConfiguration
Configuration options for the
markup template engine.-
Constructor Summary
ConstructorsConstructorDescriptionCreates a configuration instance with default markup template settings.Creates a configuration by copying values from another instance. -
Method Summary
Modifier and TypeMethodDescriptionReturns the indentation unit inserted when automatic indentation is enabled.Class<? extends BaseTemplate>Returns the base class used for generated template scripts.Returns the locale used when resolving localized templates.Returns the line separator inserted byBaseTemplate.newLine().booleanbooleanbooleanIndicates whether source layout should automatically insert line separators.booleanIndicates whether templates resolved from external resources are cached.booleanbooleanvoidsetAutoEscape(boolean autoEscape) Set to true if you want variables in the model which are assignable toCharSequenceto be escaped automatically in templates.voidsetAutoIndent(boolean autoIndent) Set this to true if you want the template engine to render indents automatically.voidsetAutoIndentString(String autoIndentString) Sets the indentation unit inserted when automatic indentation is enabled.voidsetAutoNewLine(boolean autoNewLine) Sets whether source layout should automatically insert line separators.voidsetBaseTemplateClass(Class<? extends BaseTemplate> baseTemplateClass) Set the template base class.voidsetCacheTemplates(boolean cacheTemplates) If cache is enabled, then templates are compiled once for each source (URL or File).voidsetDeclarationEncoding(String declarationEncoding) Set the encoding used to write the declaration header.voidsetExpandEmptyElements(boolean expandEmptyElements) Sets whether empty elements should be expanded into explicit opening and closing tags.voidSets the locale used when resolving localized templates.voidsetNewLineString(String newLineString) Sets the line separator inserted byBaseTemplate.newLine().voidsetUseDoubleQuotes(boolean useDoubleQuotes) Sets whether attributes should be rendered with double quotes.
-
Constructor Details
-
TemplateConfiguration
public TemplateConfiguration()Creates a configuration instance with default markup template settings. -
TemplateConfiguration
Creates a configuration by copying values from another instance.- Parameters:
that- configuration to copy
-
-
Method Details
-
getDeclarationEncoding
- Returns:
- the encoding used in the declaration header
-
setDeclarationEncoding
Set the encoding used to write the declaration header. Note that it is the responsibility of the user to ensure that it matches the writer encoding.- Parameters:
declarationEncoding- encoding to be used in the declaration string
-
isExpandEmptyElements
public boolean isExpandEmptyElements()- Returns:
- whether elements without body should be written in the short form (ex: <br/>) or in an expanded form (ex: <br></br>)
-
setExpandEmptyElements
public void setExpandEmptyElements(boolean expandEmptyElements) Sets whether empty elements should be expanded into explicit opening and closing tags.- Parameters:
expandEmptyElements-trueto render<tag></tag>instead of<tag/>
-
isUseDoubleQuotes
public boolean isUseDoubleQuotes()- Returns:
- true if attributes should use double quotes instead of single quotes
-
setUseDoubleQuotes
public void setUseDoubleQuotes(boolean useDoubleQuotes) Sets whether attributes should be rendered with double quotes.- Parameters:
useDoubleQuotes-trueto use double quotes around attribute values
-
getNewLineString
Returns the line separator inserted byBaseTemplate.newLine().- Returns:
- the configured line separator
-
setNewLineString
Sets the line separator inserted byBaseTemplate.newLine().- Parameters:
newLineString- line separator to emit for explicit and automatic new lines
-
isAutoEscape
public boolean isAutoEscape()- Returns:
- true if variables in the model which are assignable to
CharSequenceshould be automatically escaped.
-
setAutoEscape
public void setAutoEscape(boolean autoEscape) Set to true if you want variables in the model which are assignable toCharSequenceto be escaped automatically in templates. If this flag is set to true and that you want a value not to be automatically escaped, then you need to use ${unescaped.variable} instead of $variable- Parameters:
autoEscape- value if the autoEscape flag
-
isAutoIndent
public boolean isAutoIndent()- Returns:
- true if the template engine should handle indents automatically
-
setAutoIndent
public void setAutoIndent(boolean autoIndent) Set this to true if you want the template engine to render indents automatically. In that case, the supplied writer is wrapped into aDelegatingIndentWriterand indents are inserted after each call to newLine.- Parameters:
autoIndent- the auto-indent flag
-
getAutoIndentString
Returns the indentation unit inserted when automatic indentation is enabled.- Returns:
- the indentation unit string
-
setAutoIndentString
Sets the indentation unit inserted when automatic indentation is enabled.- Parameters:
autoIndentString- indentation unit to write for each nesting level
-
isAutoNewLine
public boolean isAutoNewLine()Indicates whether source layout should automatically insert line separators.- Returns:
trueif builder blocks automatically emit new lines
-
setAutoNewLine
public void setAutoNewLine(boolean autoNewLine) Sets whether source layout should automatically insert line separators.- Parameters:
autoNewLine-trueto insert new lines based on builder block layout
-
getBaseTemplateClass
Returns the base class used for generated template scripts.- Returns:
- the configured base template class
-
setBaseTemplateClass
Set the template base class. You can use a distinct template class to provide more statically available data to your templates.- Parameters:
baseTemplateClass- a class extendingBaseTemplate
-
getLocale
Returns the locale used when resolving localized templates.- Returns:
- the configured template locale
-
setLocale
Sets the locale used when resolving localized templates.- Parameters:
locale- locale to prefer when loading localized template resources
-
isCacheTemplates
public boolean isCacheTemplates()Indicates whether templates resolved from external resources are cached.- Returns:
trueif template compilation results may be reused
-
setCacheTemplates
public void setCacheTemplates(boolean cacheTemplates) If cache is enabled, then templates are compiled once for each source (URL or File). It is recommended to keep this flag to true unless you are in development mode and want automatic reloading of templates.- Parameters:
cacheTemplates- should templates be cached
-