| <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> |
| <!-- NewPage --> |
| <html lang="en"> |
| <head> |
| <!-- Generated by javadoc (1.8.0_281) on Sun Jan 15 15:58:34 CET 2023 --> |
| <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> |
| <title>Environment (FreeMarker 2.3.32 API)</title> |
| <meta name="date" content="2023-01-15"> |
| <link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style"> |
| <script type="text/javascript" src="../../script.js"></script> |
| </head> |
| <body> |
| <script type="text/javascript"><!-- |
| try { |
| if (location.href.indexOf('is-external=true') == -1) { |
| parent.document.title="Environment (FreeMarker 2.3.32 API)"; |
| } |
| } |
| catch(err) { |
| } |
| //--> |
| var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":42,"i9":10,"i10":10,"i11":10,"i12":9,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10,"i19":10,"i20":10,"i21":10,"i22":10,"i23":10,"i24":10,"i25":10,"i26":10,"i27":10,"i28":10,"i29":10,"i30":10,"i31":42,"i32":10,"i33":10,"i34":10,"i35":10,"i36":10,"i37":10,"i38":10,"i39":10,"i40":10,"i41":10,"i42":10,"i43":10,"i44":10,"i45":10,"i46":10,"i47":10,"i48":10,"i49":10,"i50":10,"i51":10,"i52":10,"i53":10,"i54":10,"i55":10,"i56":10,"i57":10,"i58":10,"i59":10,"i60":10,"i61":10,"i62":10,"i63":10,"i64":10,"i65":10,"i66":10,"i67":10,"i68":10,"i69":10,"i70":10,"i71":10,"i72":42}; |
| var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"],32:["t6","Deprecated Methods"]}; |
| var altColor = "altColor"; |
| var rowColor = "rowColor"; |
| var tableTab = "tableTab"; |
| var activeTableTab = "activeTableTab"; |
| </script> |
| <noscript> |
| <div>JavaScript is disabled on your browser.</div> |
| </noscript> |
| <!-- ========= START OF TOP NAVBAR ======= --> |
| <div class="topNav"><a name="navbar.top"> |
| <!-- --> |
| </a> |
| <div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div> |
| <a name="navbar.top.firstrow"> |
| <!-- --> |
| </a> |
| <ul class="navList" title="Navigation"> |
| <li><a href="../../overview-summary.html">Overview</a></li> |
| <li><a href="package-summary.html">Package</a></li> |
| <li class="navBarCell1Rev">Class</li> |
| <li><a href="class-use/Environment.html">Use</a></li> |
| <li><a href="package-tree.html">Tree</a></li> |
| <li><a href="../../deprecated-list.html">Deprecated</a></li> |
| <li><a href="../../index-all.html">Index</a></li> |
| <li><a href="../../help-doc.html">Help</a></li> |
| </ul> |
| </div> |
| <div class="subNav"> |
| <ul class="navList"> |
| <li><a href="../../freemarker/core/DirectiveCallPlace.html" title="interface in freemarker.core"><span class="typeNameLink">Prev Class</span></a></li> |
| <li><a href="../../freemarker/core/Environment.Namespace.html" title="class in freemarker.core"><span class="typeNameLink">Next Class</span></a></li> |
| </ul> |
| <ul class="navList"> |
| <li><a href="../../index.html?freemarker/core/Environment.html" target="_top">Frames</a></li> |
| <li><a href="Environment.html" target="_top">No Frames</a></li> |
| </ul> |
| <ul class="navList" id="allclasses_navbar_top"> |
| <li><a href="../../allclasses-noframe.html">All Classes</a></li> |
| </ul> |
| <div> |
| <script type="text/javascript"><!-- |
| allClassesLink = document.getElementById("allclasses_navbar_top"); |
| if(window==top) { |
| allClassesLink.style.display = "block"; |
| } |
| else { |
| allClassesLink.style.display = "none"; |
| } |
| //--> |
| </script> |
| </div> |
| <div> |
| <ul class="subNavList"> |
| <li>Summary: </li> |
| <li><a href="#nested.class.summary">Nested</a> | </li> |
| <li><a href="#fields.inherited.from.class.freemarker.core.Configurable">Field</a> | </li> |
| <li><a href="#constructor.summary">Constr</a> | </li> |
| <li><a href="#method.summary">Method</a></li> |
| </ul> |
| <ul class="subNavList"> |
| <li>Detail: </li> |
| <li>Field | </li> |
| <li><a href="#constructor.detail">Constr</a> | </li> |
| <li><a href="#method.detail">Method</a></li> |
| </ul> |
| </div> |
| <a name="skip.navbar.top"> |
| <!-- --> |
| </a></div> |
| <!-- ========= END OF TOP NAVBAR ========= --> |
| <!-- ======== START OF CLASS DATA ======== --> |
| <div class="header"> |
| <div class="subTitle">freemarker.core</div> |
| <h2 title="Class Environment" class="title">Class Environment</h2> |
| </div> |
| <div class="contentContainer"> |
| <ul class="inheritance"> |
| <li>java.lang.Object</li> |
| <li> |
| <ul class="inheritance"> |
| <li><a href="../../freemarker/core/Configurable.html" title="class in freemarker.core">freemarker.core.Configurable</a></li> |
| <li> |
| <ul class="inheritance"> |
| <li>freemarker.core.Environment</li> |
| </ul> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| <div class="description"> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <hr> |
| <br> |
| <pre>public final class <span class="typeNameLabel">Environment</span> |
| extends <a href="../../freemarker/core/Configurable.html" title="class in freemarker.core">Configurable</a></pre> |
| <div class="block">Object that represents the runtime environment during template processing. For every invocation of a |
| <tt>Template.process()</tt> method, a new instance of this object is created, and then discarded when |
| <tt>process()</tt> returns. This object stores the set of temporary variables created by the template, the value of |
| settings set by the template, the reference to the data model root, etc. Everything that is needed to fulfill the |
| template processing job. |
| |
| <p> |
| Data models that need to access the <tt>Environment</tt> object that represents the template processing on the |
| current thread can use the <a href="../../freemarker/core/Environment.html#getCurrentEnvironment--"><code>getCurrentEnvironment()</code></a> method. |
| |
| <p> |
| If you need to modify or read this object before or after the <tt>process</tt> call, use |
| <a href="../../freemarker/template/Template.html#createProcessingEnvironment-java.lang.Object-java.io.Writer-freemarker.template.ObjectWrapper-"><code>Template.createProcessingEnvironment(Object rootMap, Writer out, ObjectWrapper wrapper)</code></a></div> |
| </li> |
| </ul> |
| </div> |
| <div class="summary"> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <!-- ======== NESTED CLASS SUMMARY ======== --> |
| <ul class="blockList"> |
| <li class="blockList"><a name="nested.class.summary"> |
| <!-- --> |
| </a> |
| <h3>Nested Class Summary</h3> |
| <table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Nested Class Summary table, listing nested classes, and an explanation"> |
| <caption><span>Nested Classes</span><span class="tabEnd"> </span></caption> |
| <tr> |
| <th class="colFirst" scope="col">Modifier and Type</th> |
| <th class="colLast" scope="col">Class and Description</th> |
| </tr> |
| <tr class="altColor"> |
| <td class="colFirst"><code>class </code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.Namespace.html" title="class in freemarker.core">Environment.Namespace</a></span></code> </td> |
| </tr> |
| </table> |
| <ul class="blockList"> |
| <li class="blockList"><a name="nested.classes.inherited.from.class.freemarker.core.Configurable"> |
| <!-- --> |
| </a> |
| <h3>Nested classes/interfaces inherited from class freemarker.core.<a href="../../freemarker/core/Configurable.html" title="class in freemarker.core">Configurable</a></h3> |
| <code><a href="../../freemarker/core/Configurable.SettingValueAssignmentException.html" title="class in freemarker.core">Configurable.SettingValueAssignmentException</a>, <a href="../../freemarker/core/Configurable.UnknownSettingException.html" title="class in freemarker.core">Configurable.UnknownSettingException</a></code></li> |
| </ul> |
| </li> |
| </ul> |
| <!-- =========== FIELD SUMMARY =========== --> |
| <ul class="blockList"> |
| <li class="blockList"><a name="field.summary"> |
| <!-- --> |
| </a> |
| <h3>Field Summary</h3> |
| <ul class="blockList"> |
| <li class="blockList"><a name="fields.inherited.from.class.freemarker.core.Configurable"> |
| <!-- --> |
| </a> |
| <h3>Fields inherited from class freemarker.core.<a href="../../freemarker/core/Configurable.html" title="class in freemarker.core">Configurable</a></h3> |
| <code><a href="../../freemarker/core/Configurable.html#API_BUILTIN_ENABLED_KEY">API_BUILTIN_ENABLED_KEY</a>, <a href="../../freemarker/core/Configurable.html#API_BUILTIN_ENABLED_KEY_CAMEL_CASE">API_BUILTIN_ENABLED_KEY_CAMEL_CASE</a>, <a href="../../freemarker/core/Configurable.html#API_BUILTIN_ENABLED_KEY_SNAKE_CASE">API_BUILTIN_ENABLED_KEY_SNAKE_CASE</a>, <a href="../../freemarker/core/Configurable.html#ARITHMETIC_ENGINE_KEY">ARITHMETIC_ENGINE_KEY</a>, <a href="../../freemarker/core/Configurable.html#ARITHMETIC_ENGINE_KEY_CAMEL_CASE">ARITHMETIC_ENGINE_KEY_CAMEL_CASE</a>, <a href="../../freemarker/core/Configurable.html#ARITHMETIC_ENGINE_KEY_SNAKE_CASE">ARITHMETIC_ENGINE_KEY_SNAKE_CASE</a>, <a href="../../freemarker/core/Configurable.html#ATTEMPT_EXCEPTION_REPORTER_KEY">ATTEMPT_EXCEPTION_REPORTER_KEY</a>, <a href="../../freemarker/core/Configurable.html#ATTEMPT_EXCEPTION_REPORTER_KEY_CAMEL_CASE">ATTEMPT_EXCEPTION_REPORTER_KEY_CAMEL_CASE</a>, <a href="../../freemarker/core/Configurable.html#ATTEMPT_EXCEPTION_REPORTER_KEY_SNAKE_CASE">ATTEMPT_EXCEPTION_REPORTER_KEY_SNAKE_CASE</a>, <a href="../../freemarker/core/Configurable.html#AUTO_FLUSH_KEY">AUTO_FLUSH_KEY</a>, <a href="../../freemarker/core/Configurable.html#AUTO_FLUSH_KEY_CAMEL_CASE">AUTO_FLUSH_KEY_CAMEL_CASE</a>, <a href="../../freemarker/core/Configurable.html#AUTO_FLUSH_KEY_SNAKE_CASE">AUTO_FLUSH_KEY_SNAKE_CASE</a>, <a href="../../freemarker/core/Configurable.html#AUTO_IMPORT_KEY">AUTO_IMPORT_KEY</a>, <a href="../../freemarker/core/Configurable.html#AUTO_IMPORT_KEY_CAMEL_CASE">AUTO_IMPORT_KEY_CAMEL_CASE</a>, <a href="../../freemarker/core/Configurable.html#AUTO_IMPORT_KEY_SNAKE_CASE">AUTO_IMPORT_KEY_SNAKE_CASE</a>, <a href="../../freemarker/core/Configurable.html#AUTO_INCLUDE_KEY">AUTO_INCLUDE_KEY</a>, <a href="../../freemarker/core/Configurable.html#AUTO_INCLUDE_KEY_CAMEL_CASE">AUTO_INCLUDE_KEY_CAMEL_CASE</a>, <a href="../../freemarker/core/Configurable.html#AUTO_INCLUDE_KEY_SNAKE_CASE">AUTO_INCLUDE_KEY_SNAKE_CASE</a>, <a href="../../freemarker/core/Configurable.html#BOOLEAN_FORMAT_KEY">BOOLEAN_FORMAT_KEY</a>, <a href="../../freemarker/core/Configurable.html#BOOLEAN_FORMAT_KEY_CAMEL_CASE">BOOLEAN_FORMAT_KEY_CAMEL_CASE</a>, <a href="../../freemarker/core/Configurable.html#BOOLEAN_FORMAT_KEY_SNAKE_CASE">BOOLEAN_FORMAT_KEY_SNAKE_CASE</a>, <a href="../../freemarker/core/Configurable.html#C_FORMAT_KEY">C_FORMAT_KEY</a>, <a href="../../freemarker/core/Configurable.html#C_FORMAT_KEY_CAMEL_CASE">C_FORMAT_KEY_CAMEL_CASE</a>, <a href="../../freemarker/core/Configurable.html#C_FORMAT_KEY_SNAKE_CASE">C_FORMAT_KEY_SNAKE_CASE</a>, <a href="../../freemarker/core/Configurable.html#CLASSIC_COMPATIBLE_KEY">CLASSIC_COMPATIBLE_KEY</a>, <a href="../../freemarker/core/Configurable.html#CLASSIC_COMPATIBLE_KEY_CAMEL_CASE">CLASSIC_COMPATIBLE_KEY_CAMEL_CASE</a>, <a href="../../freemarker/core/Configurable.html#CLASSIC_COMPATIBLE_KEY_SNAKE_CASE">CLASSIC_COMPATIBLE_KEY_SNAKE_CASE</a>, <a href="../../freemarker/core/Configurable.html#CUSTOM_DATE_FORMATS_KEY">CUSTOM_DATE_FORMATS_KEY</a>, <a href="../../freemarker/core/Configurable.html#CUSTOM_DATE_FORMATS_KEY_CAMEL_CASE">CUSTOM_DATE_FORMATS_KEY_CAMEL_CASE</a>, <a href="../../freemarker/core/Configurable.html#CUSTOM_DATE_FORMATS_KEY_SNAKE_CASE">CUSTOM_DATE_FORMATS_KEY_SNAKE_CASE</a>, <a href="../../freemarker/core/Configurable.html#CUSTOM_NUMBER_FORMATS_KEY">CUSTOM_NUMBER_FORMATS_KEY</a>, <a href="../../freemarker/core/Configurable.html#CUSTOM_NUMBER_FORMATS_KEY_CAMEL_CASE">CUSTOM_NUMBER_FORMATS_KEY_CAMEL_CASE</a>, <a href="../../freemarker/core/Configurable.html#CUSTOM_NUMBER_FORMATS_KEY_SNAKE_CASE">CUSTOM_NUMBER_FORMATS_KEY_SNAKE_CASE</a>, <a href="../../freemarker/core/Configurable.html#DATE_FORMAT_KEY">DATE_FORMAT_KEY</a>, <a href="../../freemarker/core/Configurable.html#DATE_FORMAT_KEY_CAMEL_CASE">DATE_FORMAT_KEY_CAMEL_CASE</a>, <a href="../../freemarker/core/Configurable.html#DATE_FORMAT_KEY_SNAKE_CASE">DATE_FORMAT_KEY_SNAKE_CASE</a>, <a href="../../freemarker/core/Configurable.html#DATETIME_FORMAT_KEY">DATETIME_FORMAT_KEY</a>, <a href="../../freemarker/core/Configurable.html#DATETIME_FORMAT_KEY_CAMEL_CASE">DATETIME_FORMAT_KEY_CAMEL_CASE</a>, <a href="../../freemarker/core/Configurable.html#DATETIME_FORMAT_KEY_SNAKE_CASE">DATETIME_FORMAT_KEY_SNAKE_CASE</a>, <a href="../../freemarker/core/Configurable.html#LAZY_AUTO_IMPORTS_KEY">LAZY_AUTO_IMPORTS_KEY</a>, <a href="../../freemarker/core/Configurable.html#LAZY_AUTO_IMPORTS_KEY_CAMEL_CASE">LAZY_AUTO_IMPORTS_KEY_CAMEL_CASE</a>, <a href="../../freemarker/core/Configurable.html#LAZY_AUTO_IMPORTS_KEY_SNAKE_CASE">LAZY_AUTO_IMPORTS_KEY_SNAKE_CASE</a>, <a href="../../freemarker/core/Configurable.html#LAZY_IMPORTS_KEY">LAZY_IMPORTS_KEY</a>, <a href="../../freemarker/core/Configurable.html#LAZY_IMPORTS_KEY_CAMEL_CASE">LAZY_IMPORTS_KEY_CAMEL_CASE</a>, <a href="../../freemarker/core/Configurable.html#LAZY_IMPORTS_KEY_SNAKE_CASE">LAZY_IMPORTS_KEY_SNAKE_CASE</a>, <a href="../../freemarker/core/Configurable.html#LOCALE_KEY">LOCALE_KEY</a>, <a href="../../freemarker/core/Configurable.html#LOCALE_KEY_CAMEL_CASE">LOCALE_KEY_CAMEL_CASE</a>, <a href="../../freemarker/core/Configurable.html#LOCALE_KEY_SNAKE_CASE">LOCALE_KEY_SNAKE_CASE</a>, <a href="../../freemarker/core/Configurable.html#LOG_TEMPLATE_EXCEPTIONS_KEY">LOG_TEMPLATE_EXCEPTIONS_KEY</a>, <a href="../../freemarker/core/Configurable.html#LOG_TEMPLATE_EXCEPTIONS_KEY_CAMEL_CASE">LOG_TEMPLATE_EXCEPTIONS_KEY_CAMEL_CASE</a>, <a href="../../freemarker/core/Configurable.html#LOG_TEMPLATE_EXCEPTIONS_KEY_SNAKE_CASE">LOG_TEMPLATE_EXCEPTIONS_KEY_SNAKE_CASE</a>, <a href="../../freemarker/core/Configurable.html#NEW_BUILTIN_CLASS_RESOLVER_KEY">NEW_BUILTIN_CLASS_RESOLVER_KEY</a>, <a href="../../freemarker/core/Configurable.html#NEW_BUILTIN_CLASS_RESOLVER_KEY_CAMEL_CASE">NEW_BUILTIN_CLASS_RESOLVER_KEY_CAMEL_CASE</a>, <a href="../../freemarker/core/Configurable.html#NEW_BUILTIN_CLASS_RESOLVER_KEY_SNAKE_CASE">NEW_BUILTIN_CLASS_RESOLVER_KEY_SNAKE_CASE</a>, <a href="../../freemarker/core/Configurable.html#NUMBER_FORMAT_KEY">NUMBER_FORMAT_KEY</a>, <a href="../../freemarker/core/Configurable.html#NUMBER_FORMAT_KEY_CAMEL_CASE">NUMBER_FORMAT_KEY_CAMEL_CASE</a>, <a href="../../freemarker/core/Configurable.html#NUMBER_FORMAT_KEY_SNAKE_CASE">NUMBER_FORMAT_KEY_SNAKE_CASE</a>, <a href="../../freemarker/core/Configurable.html#OBJECT_WRAPPER_KEY">OBJECT_WRAPPER_KEY</a>, <a href="../../freemarker/core/Configurable.html#OBJECT_WRAPPER_KEY_CAMEL_CASE">OBJECT_WRAPPER_KEY_CAMEL_CASE</a>, <a href="../../freemarker/core/Configurable.html#OBJECT_WRAPPER_KEY_SNAKE_CASE">OBJECT_WRAPPER_KEY_SNAKE_CASE</a>, <a href="../../freemarker/core/Configurable.html#OUTPUT_ENCODING_KEY">OUTPUT_ENCODING_KEY</a>, <a href="../../freemarker/core/Configurable.html#OUTPUT_ENCODING_KEY_CAMEL_CASE">OUTPUT_ENCODING_KEY_CAMEL_CASE</a>, <a href="../../freemarker/core/Configurable.html#OUTPUT_ENCODING_KEY_SNAKE_CASE">OUTPUT_ENCODING_KEY_SNAKE_CASE</a>, <a href="../../freemarker/core/Configurable.html#SHOW_ERROR_TIPS_KEY">SHOW_ERROR_TIPS_KEY</a>, <a href="../../freemarker/core/Configurable.html#SHOW_ERROR_TIPS_KEY_CAMEL_CASE">SHOW_ERROR_TIPS_KEY_CAMEL_CASE</a>, <a href="../../freemarker/core/Configurable.html#SHOW_ERROR_TIPS_KEY_SNAKE_CASE">SHOW_ERROR_TIPS_KEY_SNAKE_CASE</a>, <a href="../../freemarker/core/Configurable.html#SQL_DATE_AND_TIME_TIME_ZONE_KEY">SQL_DATE_AND_TIME_TIME_ZONE_KEY</a>, <a href="../../freemarker/core/Configurable.html#SQL_DATE_AND_TIME_TIME_ZONE_KEY_CAMEL_CASE">SQL_DATE_AND_TIME_TIME_ZONE_KEY_CAMEL_CASE</a>, <a href="../../freemarker/core/Configurable.html#SQL_DATE_AND_TIME_TIME_ZONE_KEY_SNAKE_CASE">SQL_DATE_AND_TIME_TIME_ZONE_KEY_SNAKE_CASE</a>, <a href="../../freemarker/core/Configurable.html#STRICT_BEAN_MODELS">STRICT_BEAN_MODELS</a>, <a href="../../freemarker/core/Configurable.html#STRICT_BEAN_MODELS_KEY">STRICT_BEAN_MODELS_KEY</a>, <a href="../../freemarker/core/Configurable.html#STRICT_BEAN_MODELS_KEY_CAMEL_CASE">STRICT_BEAN_MODELS_KEY_CAMEL_CASE</a>, <a href="../../freemarker/core/Configurable.html#STRICT_BEAN_MODELS_KEY_SNAKE_CASE">STRICT_BEAN_MODELS_KEY_SNAKE_CASE</a>, <a href="../../freemarker/core/Configurable.html#TEMPLATE_EXCEPTION_HANDLER_KEY">TEMPLATE_EXCEPTION_HANDLER_KEY</a>, <a href="../../freemarker/core/Configurable.html#TEMPLATE_EXCEPTION_HANDLER_KEY_CAMEL_CASE">TEMPLATE_EXCEPTION_HANDLER_KEY_CAMEL_CASE</a>, <a href="../../freemarker/core/Configurable.html#TEMPLATE_EXCEPTION_HANDLER_KEY_SNAKE_CASE">TEMPLATE_EXCEPTION_HANDLER_KEY_SNAKE_CASE</a>, <a href="../../freemarker/core/Configurable.html#TIME_FORMAT_KEY">TIME_FORMAT_KEY</a>, <a href="../../freemarker/core/Configurable.html#TIME_FORMAT_KEY_CAMEL_CASE">TIME_FORMAT_KEY_CAMEL_CASE</a>, <a href="../../freemarker/core/Configurable.html#TIME_FORMAT_KEY_SNAKE_CASE">TIME_FORMAT_KEY_SNAKE_CASE</a>, <a href="../../freemarker/core/Configurable.html#TIME_ZONE_KEY">TIME_ZONE_KEY</a>, <a href="../../freemarker/core/Configurable.html#TIME_ZONE_KEY_CAMEL_CASE">TIME_ZONE_KEY_CAMEL_CASE</a>, <a href="../../freemarker/core/Configurable.html#TIME_ZONE_KEY_SNAKE_CASE">TIME_ZONE_KEY_SNAKE_CASE</a>, <a href="../../freemarker/core/Configurable.html#TRUNCATE_BUILTIN_ALGORITHM_KEY">TRUNCATE_BUILTIN_ALGORITHM_KEY</a>, <a href="../../freemarker/core/Configurable.html#TRUNCATE_BUILTIN_ALGORITHM_KEY_CAMEL_CASE">TRUNCATE_BUILTIN_ALGORITHM_KEY_CAMEL_CASE</a>, <a href="../../freemarker/core/Configurable.html#TRUNCATE_BUILTIN_ALGORITHM_KEY_SNAKE_CASE">TRUNCATE_BUILTIN_ALGORITHM_KEY_SNAKE_CASE</a>, <a href="../../freemarker/core/Configurable.html#URL_ESCAPING_CHARSET_KEY">URL_ESCAPING_CHARSET_KEY</a>, <a href="../../freemarker/core/Configurable.html#URL_ESCAPING_CHARSET_KEY_CAMEL_CASE">URL_ESCAPING_CHARSET_KEY_CAMEL_CASE</a>, <a href="../../freemarker/core/Configurable.html#URL_ESCAPING_CHARSET_KEY_SNAKE_CASE">URL_ESCAPING_CHARSET_KEY_SNAKE_CASE</a>, <a href="../../freemarker/core/Configurable.html#WRAP_UNCHECKED_EXCEPTIONS_KEY">WRAP_UNCHECKED_EXCEPTIONS_KEY</a>, <a href="../../freemarker/core/Configurable.html#WRAP_UNCHECKED_EXCEPTIONS_KEY_CAMEL_CASE">WRAP_UNCHECKED_EXCEPTIONS_KEY_CAMEL_CASE</a>, <a href="../../freemarker/core/Configurable.html#WRAP_UNCHECKED_EXCEPTIONS_KEY_SNAKE_CASE">WRAP_UNCHECKED_EXCEPTIONS_KEY_SNAKE_CASE</a></code></li> |
| </ul> |
| </li> |
| </ul> |
| <!-- ======== CONSTRUCTOR SUMMARY ======== --> |
| <ul class="blockList"> |
| <li class="blockList"><a name="constructor.summary"> |
| <!-- --> |
| </a> |
| <h3>Constructor Summary</h3> |
| <table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation"> |
| <caption><span>Constructors</span><span class="tabEnd"> </span></caption> |
| <tr> |
| <th class="colOne" scope="col">Constructor and Description</th> |
| </tr> |
| <tr class="altColor"> |
| <td class="colOne"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#Environment-freemarker.template.Template-freemarker.template.TemplateHashModel-java.io.Writer-">Environment</a></span>(<a href="../../freemarker/template/Template.html" title="class in freemarker.template">Template</a> template, |
| <a href="../../freemarker/template/TemplateHashModel.html" title="interface in freemarker.template">TemplateHashModel</a> rootDataModel, |
| java.io.Writer out)</code> </td> |
| </tr> |
| </table> |
| </li> |
| </ul> |
| <!-- ========== METHOD SUMMARY =========== --> |
| <ul class="blockList"> |
| <li class="blockList"><a name="method.summary"> |
| <!-- --> |
| </a> |
| <h3>Method Summary</h3> |
| <table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation"> |
| <caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd"> </span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd"> </span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd"> </span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd"> </span></span><span id="t6" class="tableTab"><span><a href="javascript:show(32);">Deprecated Methods</a></span><span class="tabEnd"> </span></span></caption> |
| <tr> |
| <th class="colFirst" scope="col">Modifier and Type</th> |
| <th class="colLast" scope="col">Method and Description</th> |
| </tr> |
| <tr id="i0" class="altColor"> |
| <td class="colFirst"><code>java.lang.Object</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#Z:Z__getitem__-java.lang.String-">__getitem__</a></span>(java.lang.String key)</code> |
| <div class="block">A hook that Jython uses.</div> |
| </td> |
| </tr> |
| <tr id="i1" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#Z:Z__setitem__-java.lang.String-java.lang.Object-">__setitem__</a></span>(java.lang.String key, |
| java.lang.Object o)</code> |
| <div class="block">A hook that Jython uses.</div> |
| </td> |
| </tr> |
| <tr id="i2" class="altColor"> |
| <td class="colFirst"><code>boolean</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#applyEqualsOperator-freemarker.template.TemplateModel-freemarker.template.TemplateModel-">applyEqualsOperator</a></span>(<a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template">TemplateModel</a> leftValue, |
| <a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template">TemplateModel</a> rightValue)</code> |
| <div class="block">Compares two <a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template"><code>TemplateModel</code></a>-s according the rules of the FTL "==" operator.</div> |
| </td> |
| </tr> |
| <tr id="i3" class="rowColor"> |
| <td class="colFirst"><code>boolean</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#applyEqualsOperatorLenient-freemarker.template.TemplateModel-freemarker.template.TemplateModel-">applyEqualsOperatorLenient</a></span>(<a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template">TemplateModel</a> leftValue, |
| <a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template">TemplateModel</a> rightValue)</code> |
| <div class="block">Compares two <a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template"><code>TemplateModel</code></a>-s according the rules of the FTL "==" operator, except that if the two types |
| are incompatible, they are treated as non-equal instead of throwing an exception.</div> |
| </td> |
| </tr> |
| <tr id="i4" class="altColor"> |
| <td class="colFirst"><code>boolean</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#applyGreaterThanOperator-freemarker.template.TemplateModel-freemarker.template.TemplateModel-">applyGreaterThanOperator</a></span>(<a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template">TemplateModel</a> leftValue, |
| <a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template">TemplateModel</a> rightValue)</code> |
| <div class="block">Compares two <a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template"><code>TemplateModel</code></a>-s according the rules of the FTL ">" operator.</div> |
| </td> |
| </tr> |
| <tr id="i5" class="rowColor"> |
| <td class="colFirst"><code>boolean</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#applyLessThanOperator-freemarker.template.TemplateModel-freemarker.template.TemplateModel-">applyLessThanOperator</a></span>(<a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template">TemplateModel</a> leftValue, |
| <a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template">TemplateModel</a> rightValue)</code> |
| <div class="block">Compares two <a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template"><code>TemplateModel</code></a>-s according the rules of the FTL "<" operator.</div> |
| </td> |
| </tr> |
| <tr id="i6" class="altColor"> |
| <td class="colFirst"><code>boolean</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#applyLessThanOrEqualsOperator-freemarker.template.TemplateModel-freemarker.template.TemplateModel-">applyLessThanOrEqualsOperator</a></span>(<a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template">TemplateModel</a> leftValue, |
| <a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template">TemplateModel</a> rightValue)</code> |
| <div class="block">Compares two <a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template"><code>TemplateModel</code></a>-s according the rules of the FTL "<" operator.</div> |
| </td> |
| </tr> |
| <tr id="i7" class="rowColor"> |
| <td class="colFirst"><code>boolean</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#applyWithGreaterThanOrEqualsOperator-freemarker.template.TemplateModel-freemarker.template.TemplateModel-">applyWithGreaterThanOrEqualsOperator</a></span>(<a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template">TemplateModel</a> leftValue, |
| <a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template">TemplateModel</a> rightValue)</code> |
| <div class="block">Compares two <a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template"><code>TemplateModel</code></a>-s according the rules of the FTL ">=" operator.</div> |
| </td> |
| </tr> |
| <tr id="i8" class="altColor"> |
| <td class="colFirst"><code>java.text.NumberFormat</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#getCNumberFormat--">getCNumberFormat</a></span>()</code> |
| <div class="block"><span class="deprecatedLabel">Deprecated.</span> |
| <div class="block"><span class="deprecationComment">Use <a href="../../freemarker/core/Environment.html#getCTemplateNumberFormat--"><code>getCTemplateNumberFormat()</code></a> instead. This method can't return the format used when |
| <a href="../../freemarker/template/Configuration.html#setIncompatibleImprovements-freemarker.template.Version-">Incompatible Improvements</a> is 2.3.32, |
| or greater, and instead it will fall back to return the format that was used for 2.3.31. Also, as its described |
| earlier, this method was inconsistent with <code>?c</code> between Incompatible Improvements 2.3.21 and 2.3.30, while |
| <a href="../../freemarker/core/Environment.html#getCTemplateNumberFormat--"><code>getCTemplateNumberFormat()</code></a> behaves as <code>?c</code> for all Incompatible Improvements value.</span></div> |
| </div> |
| </td> |
| </tr> |
| <tr id="i9" class="rowColor"> |
| <td class="colFirst"><code><a href="../../freemarker/template/Configuration.html" title="class in freemarker.template">Configuration</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#getConfiguration--">getConfiguration</a></span>()</code> </td> |
| </tr> |
| <tr id="i10" class="altColor"> |
| <td class="colFirst"><code><a href="../../freemarker/core/TemplateNumberFormat.html" title="class in freemarker.core">TemplateNumberFormat</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#getCTemplateNumberFormat--">getCTemplateNumberFormat</a></span>()</code> |
| <div class="block">Returns the <a href="../../freemarker/core/TemplateNumberFormat.html" title="class in freemarker.core"><code>TemplateNumberFormat</code></a> that <code>?c</code>/<code>?cn</code> uses.</div> |
| </td> |
| </tr> |
| <tr id="i11" class="rowColor"> |
| <td class="colFirst"><code><a href="../../freemarker/core/DirectiveCallPlace.html" title="interface in freemarker.core">DirectiveCallPlace</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#getCurrentDirectiveCallPlace--">getCurrentDirectiveCallPlace</a></span>()</code> |
| <div class="block">Gets the currently executing <em>custom</em> directive's call place information, or <code>null</code> if there's no |
| executing custom directive.</div> |
| </td> |
| </tr> |
| <tr id="i12" class="altColor"> |
| <td class="colFirst"><code>static <a href="../../freemarker/core/Environment.html" title="class in freemarker.core">Environment</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#getCurrentEnvironment--">getCurrentEnvironment</a></span>()</code> |
| <div class="block">Retrieves the environment object associated with the current thread, or <code>null</code> if there's no template |
| processing going on in this thread.</div> |
| </td> |
| </tr> |
| <tr id="i13" class="rowColor"> |
| <td class="colFirst"><code><a href="../../freemarker/core/Environment.Namespace.html" title="class in freemarker.core">Environment.Namespace</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#getCurrentNamespace--">getCurrentNamespace</a></span>()</code> |
| <div class="block">Returns the current namespace.</div> |
| </td> |
| </tr> |
| <tr id="i14" class="altColor"> |
| <td class="colFirst"><code><a href="../../freemarker/template/Template.html" title="class in freemarker.template">Template</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#getCurrentTemplate--">getCurrentTemplate</a></span>()</code> |
| <div class="block">Returns the <a href="../../freemarker/template/Template.html" title="class in freemarker.template"><code>Template</code></a> that we are "lexically" inside at the moment.</div> |
| </td> |
| </tr> |
| <tr id="i15" class="rowColor"> |
| <td class="colFirst"><code><a href="../../freemarker/template/TemplateNodeModel.html" title="interface in freemarker.template">TemplateNodeModel</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#getCurrentVisitorNode--">getCurrentVisitorNode</a></span>()</code> </td> |
| </tr> |
| <tr id="i16" class="altColor"> |
| <td class="colFirst"><code>java.lang.Object</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#getCustomState-java.lang.Object-">getCustomState</a></span>(java.lang.Object identityKey)</code> |
| <div class="block">Returns the value of a custom state variable, or <code>null</code> if it's missing; see |
| <a href="../../freemarker/core/Environment.html#setCustomState-java.lang.Object-java.lang.Object-"><code>setCustomState(Object, Object)</code></a> for more.</div> |
| </td> |
| </tr> |
| <tr id="i17" class="rowColor"> |
| <td class="colFirst"><code><a href="../../freemarker/template/TemplateHashModel.html" title="interface in freemarker.template">TemplateHashModel</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#getDataModel--">getDataModel</a></span>()</code> |
| <div class="block">Returns a view of the data-model (also known as the template context in some other template engines) |
| that falls back to <a href="../../freemarker/template/Configuration.html#setSharedVariable-java.lang.String-freemarker.template.TemplateModel-">shared variables</a>.</div> |
| </td> |
| </tr> |
| <tr id="i18" class="altColor"> |
| <td class="colFirst"><code><a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template">TemplateModel</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#getDataModelOrSharedVariable-java.lang.String-">getDataModelOrSharedVariable</a></span>(java.lang.String name)</code> |
| <div class="block">Returns the variable from the data-model, or if it's not there, then from the |
| <a href="../../freemarker/template/Configuration.html#setSharedVariables-java.util.Map-">Configuration.setSharedVariables(Map)</a> shared variables}</div> |
| </td> |
| </tr> |
| <tr id="i19" class="rowColor"> |
| <td class="colFirst"><code>java.lang.String</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#getDefaultNS--">getDefaultNS</a></span>()</code> </td> |
| </tr> |
| <tr id="i20" class="altColor"> |
| <td class="colFirst"><code><a href="../../freemarker/core/Environment.Namespace.html" title="class in freemarker.core">Environment.Namespace</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#getGlobalNamespace--">getGlobalNamespace</a></span>()</code> |
| <div class="block">Returns the name-space that contains the globally visible non-data-model variables (usually created with |
| <code>&lt;#global ...&gt;</code>).</div> |
| </td> |
| </tr> |
| <tr id="i21" class="rowColor"> |
| <td class="colFirst"><code><a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template">TemplateModel</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#getGlobalVariable-java.lang.String-">getGlobalVariable</a></span>(java.lang.String name)</code> |
| <div class="block">Returns the globally visible variable of the given name, or <code>null</code>.</div> |
| </td> |
| </tr> |
| <tr id="i22" class="altColor"> |
| <td class="colFirst"><code><a href="../../freemarker/template/TemplateHashModel.html" title="interface in freemarker.template">TemplateHashModel</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#getGlobalVariables--">getGlobalVariables</a></span>()</code> |
| <div class="block">Returns the read-only hash of globally visible variables.</div> |
| </td> |
| </tr> |
| <tr id="i23" class="rowColor"> |
| <td class="colFirst"><code>java.util.Set</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#getKnownVariableNames--">getKnownVariableNames</a></span>()</code> |
| <div class="block">Returns a set of variable names that are known at the time of call.</div> |
| </td> |
| </tr> |
| <tr id="i24" class="altColor"> |
| <td class="colFirst"><code><a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template">TemplateModel</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#getLocalVariable-java.lang.String-">getLocalVariable</a></span>(java.lang.String name)</code> |
| <div class="block">Returns the loop or macro local variable corresponding to this variable name.</div> |
| </td> |
| </tr> |
| <tr id="i25" class="rowColor"> |
| <td class="colFirst"><code><a href="../../freemarker/core/Environment.Namespace.html" title="class in freemarker.core">Environment.Namespace</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#getMainNamespace--">getMainNamespace</a></span>()</code> |
| <div class="block">Returns the main namespace.</div> |
| </td> |
| </tr> |
| <tr id="i26" class="altColor"> |
| <td class="colFirst"><code><a href="../../freemarker/template/Template.html" title="class in freemarker.template">Template</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#getMainTemplate--">getMainTemplate</a></span>()</code> |
| <div class="block">Returns the topmost <a href="../../freemarker/template/Template.html" title="class in freemarker.template"><code>Template</code></a>, with other words, the one for which this <a href="../../freemarker/core/Environment.html" title="class in freemarker.core"><code>Environment</code></a> was created.</div> |
| </td> |
| </tr> |
| <tr id="i27" class="rowColor"> |
| <td class="colFirst"><code><a href="../../freemarker/core/Environment.Namespace.html" title="class in freemarker.core">Environment.Namespace</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#getNamespace-java.lang.String-">getNamespace</a></span>(java.lang.String name)</code> |
| <div class="block">Returns the name-space for the name if exists, or null.</div> |
| </td> |
| </tr> |
| <tr id="i28" class="altColor"> |
| <td class="colFirst"><code>java.lang.String</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#getNamespaceForPrefix-java.lang.String-">getNamespaceForPrefix</a></span>(java.lang.String prefix)</code> </td> |
| </tr> |
| <tr id="i29" class="rowColor"> |
| <td class="colFirst"><code>java.io.Writer</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#getOut--">getOut</a></span>()</code> </td> |
| </tr> |
| <tr id="i30" class="altColor"> |
| <td class="colFirst"><code>java.lang.String</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#getPrefixForNamespace-java.lang.String-">getPrefixForNamespace</a></span>(java.lang.String nsURI)</code> </td> |
| </tr> |
| <tr id="i31" class="rowColor"> |
| <td class="colFirst"><code><a href="../../freemarker/template/Template.html" title="class in freemarker.template">Template</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#getTemplate--">getTemplate</a></span>()</code> |
| <div class="block"><span class="deprecatedLabel">Deprecated.</span> |
| <div class="block"><span class="deprecationComment">Use <a href="../../freemarker/core/Environment.html#getMainTemplate--"><code>getMainTemplate()</code></a> instead (or <a href="../../freemarker/core/Environment.html#getCurrentNamespace--"><code>getCurrentNamespace()</code></a> and then |
| <a href="../../freemarker/core/Environment.Namespace.html#getTemplate--"><code>Environment.Namespace.getTemplate()</code></a>); the value returned by this method is often not what you expect when |
| it comes to macro/function invocations.</span></div> |
| </div> |
| </td> |
| </tr> |
| <tr id="i32" class="altColor"> |
| <td class="colFirst"><code><a href="../../freemarker/core/TemplateDateFormat.html" title="class in freemarker.core">TemplateDateFormat</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#getTemplateDateFormat-int-java.lang.Class-">getTemplateDateFormat</a></span>(int dateType, |
| java.lang.Class<? extends java.util.Date> dateClass)</code> |
| <div class="block">Gets a <a href="../../freemarker/core/TemplateDateFormat.html" title="class in freemarker.core"><code>TemplateDateFormat</code></a> using the date/time/datetime format settings and the current locale and time |
| zone.</div> |
| </td> |
| </tr> |
| <tr id="i33" class="rowColor"> |
| <td class="colFirst"><code><a href="../../freemarker/core/TemplateDateFormat.html" title="class in freemarker.core">TemplateDateFormat</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#getTemplateDateFormat-java.lang.String-int-java.lang.Class-">getTemplateDateFormat</a></span>(java.lang.String formatString, |
| int dateType, |
| java.lang.Class<? extends java.util.Date> dateClass)</code> |
| <div class="block">Gets a <a href="../../freemarker/core/TemplateDateFormat.html" title="class in freemarker.core"><code>TemplateDateFormat</code></a> for the specified format string and the current locale and time zone.</div> |
| </td> |
| </tr> |
| <tr id="i34" class="altColor"> |
| <td class="colFirst"><code><a href="../../freemarker/core/TemplateDateFormat.html" title="class in freemarker.core">TemplateDateFormat</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#getTemplateDateFormat-java.lang.String-int-java.lang.Class-java.util.Locale-">getTemplateDateFormat</a></span>(java.lang.String formatString, |
| int dateType, |
| java.lang.Class<? extends java.util.Date> dateClass, |
| java.util.Locale locale)</code> |
| <div class="block">Like <a href="../../freemarker/core/Environment.html#getTemplateDateFormat-java.lang.String-int-java.lang.Class-"><code>getTemplateDateFormat(String, int, Class)</code></a>, but allows you to use a different locale than the |
| current one.</div> |
| </td> |
| </tr> |
| <tr id="i35" class="rowColor"> |
| <td class="colFirst"><code><a href="../../freemarker/core/TemplateDateFormat.html" title="class in freemarker.core">TemplateDateFormat</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#getTemplateDateFormat-java.lang.String-int-java.lang.Class-java.util.Locale-java.util.TimeZone-java.util.TimeZone-">getTemplateDateFormat</a></span>(java.lang.String formatString, |
| int dateType, |
| java.lang.Class<? extends java.util.Date> dateClass, |
| java.util.Locale locale, |
| java.util.TimeZone timeZone, |
| java.util.TimeZone sqlDateAndTimeTimeZone)</code> |
| <div class="block">Like <a href="../../freemarker/core/Environment.html#getTemplateDateFormat-java.lang.String-int-java.lang.Class-"><code>getTemplateDateFormat(String, int, Class)</code></a>, but allows you to use a different locale and time zone |
| than the current one.</div> |
| </td> |
| </tr> |
| <tr id="i36" class="altColor"> |
| <td class="colFirst"><code><a href="../../freemarker/core/TemplateDateFormat.html" title="class in freemarker.core">TemplateDateFormat</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#getTemplateDateFormat-java.lang.String-int-java.util.Locale-java.util.TimeZone-boolean-">getTemplateDateFormat</a></span>(java.lang.String formatString, |
| int dateType, |
| java.util.Locale locale, |
| java.util.TimeZone timeZone, |
| boolean zonelessInput)</code> |
| <div class="block">Gets a <a href="../../freemarker/core/TemplateDateFormat.html" title="class in freemarker.core"><code>TemplateDateFormat</code></a> for the specified parameters.</div> |
| </td> |
| </tr> |
| <tr id="i37" class="rowColor"> |
| <td class="colFirst"><code><a href="../../freemarker/template/Template.html" title="class in freemarker.template">Template</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#getTemplateForImporting-java.lang.String-">getTemplateForImporting</a></span>(java.lang.String name)</code> |
| <div class="block">Gets a template for importing; used with <a href="../../freemarker/core/Environment.html#importLib-freemarker.template.Template-java.lang.String-"><code>importLib(Template importedTemplate, String namespace)</code></a>.</div> |
| </td> |
| </tr> |
| <tr id="i38" class="altColor"> |
| <td class="colFirst"><code><a href="../../freemarker/template/Template.html" title="class in freemarker.template">Template</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#getTemplateForInclusion-java.lang.String-java.lang.String-boolean-">getTemplateForInclusion</a></span>(java.lang.String name, |
| java.lang.String encoding, |
| boolean parse)</code> |
| <div class="block">Same as <a href="../../freemarker/core/Environment.html#getTemplateForInclusion-java.lang.String-java.lang.String-boolean-boolean-"><code>getTemplateForInclusion(String, String, boolean, boolean)</code></a> with <code>false</code> |
| <code>ignoreMissing</code> argument.</div> |
| </td> |
| </tr> |
| <tr id="i39" class="rowColor"> |
| <td class="colFirst"><code><a href="../../freemarker/template/Template.html" title="class in freemarker.template">Template</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#getTemplateForInclusion-java.lang.String-java.lang.String-boolean-boolean-">getTemplateForInclusion</a></span>(java.lang.String name, |
| java.lang.String encoding, |
| boolean parseAsFTL, |
| boolean ignoreMissing)</code> |
| <div class="block">Gets a template for inclusion; used for implementing <a href="../../freemarker/core/Environment.html#include-freemarker.template.Template-"><code>include(Template includedTemplate)</code></a>.</div> |
| </td> |
| </tr> |
| <tr id="i40" class="altColor"> |
| <td class="colFirst"><code><a href="../../freemarker/core/TemplateNumberFormat.html" title="class in freemarker.core">TemplateNumberFormat</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#getTemplateNumberFormat--">getTemplateNumberFormat</a></span>()</code> |
| <div class="block">Returns the current number format (<a href="../../freemarker/core/Configurable.html#getNumberFormat--"><code>Configurable.getNumberFormat()</code></a>) as <a href="../../freemarker/core/TemplateNumberFormat.html" title="class in freemarker.core"><code>TemplateNumberFormat</code></a>.</div> |
| </td> |
| </tr> |
| <tr id="i41" class="rowColor"> |
| <td class="colFirst"><code><a href="../../freemarker/core/TemplateNumberFormat.html" title="class in freemarker.core">TemplateNumberFormat</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#getTemplateNumberFormat-java.lang.String-">getTemplateNumberFormat</a></span>(java.lang.String formatString)</code> |
| <div class="block">Returns the number format as <a href="../../freemarker/core/TemplateNumberFormat.html" title="class in freemarker.core"><code>TemplateNumberFormat</code></a> for the given format string and the current locale.</div> |
| </td> |
| </tr> |
| <tr id="i42" class="altColor"> |
| <td class="colFirst"><code><a href="../../freemarker/core/TemplateNumberFormat.html" title="class in freemarker.core">TemplateNumberFormat</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#getTemplateNumberFormat-java.lang.String-java.util.Locale-">getTemplateNumberFormat</a></span>(java.lang.String formatString, |
| java.util.Locale locale)</code> |
| <div class="block">Returns the number format as <a href="../../freemarker/core/TemplateNumberFormat.html" title="class in freemarker.core"><code>TemplateNumberFormat</code></a>, for the given format string and locale.</div> |
| </td> |
| </tr> |
| <tr id="i43" class="rowColor"> |
| <td class="colFirst"><code><a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template">TemplateModel</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#getVariable-java.lang.String-">getVariable</a></span>(java.lang.String name)</code> |
| <div class="block">Returns the variable that is visible in this context, or <code>null</code> if the variable is not found.</div> |
| </td> |
| </tr> |
| <tr id="i44" class="altColor"> |
| <td class="colFirst"><code><a href="../../freemarker/core/Environment.Namespace.html" title="class in freemarker.core">Environment.Namespace</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#importLib-java.lang.String-java.lang.String-">importLib</a></span>(java.lang.String templateName, |
| java.lang.String targetNsVarName)</code> |
| <div class="block">Emulates <code>import</code> directive, except that <code>templateName</code> must be template root relative.</div> |
| </td> |
| </tr> |
| <tr id="i45" class="rowColor"> |
| <td class="colFirst"><code><a href="../../freemarker/core/Environment.Namespace.html" title="class in freemarker.core">Environment.Namespace</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#importLib-java.lang.String-java.lang.String-boolean-">importLib</a></span>(java.lang.String templateName, |
| java.lang.String targetNsVarName, |
| boolean lazy)</code> |
| <div class="block">Like <a href="../../freemarker/core/Environment.html#importLib-java.lang.String-java.lang.String-"><code>importLib(String, String)</code></a>, but you can specify if you want a |
| <a href="../../freemarker/core/Configurable.html#setLazyImports-boolean-">lazy import</a> or not.</div> |
| </td> |
| </tr> |
| <tr id="i46" class="altColor"> |
| <td class="colFirst"><code><a href="../../freemarker/core/Environment.Namespace.html" title="class in freemarker.core">Environment.Namespace</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#importLib-freemarker.template.Template-java.lang.String-">importLib</a></span>(<a href="../../freemarker/template/Template.html" title="class in freemarker.template">Template</a> loadedTemplate, |
| java.lang.String targetNsVarName)</code> |
| <div class="block">Does what the <code>#import</code> directive does, but with an already loaded template.</div> |
| </td> |
| </tr> |
| <tr id="i47" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#include-java.lang.String-java.lang.String-boolean-">include</a></span>(java.lang.String name, |
| java.lang.String encoding, |
| boolean parse)</code> |
| <div class="block">Emulates <code>include</code> directive, except that <code>name</code> must be template root relative.</div> |
| </td> |
| </tr> |
| <tr id="i48" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#include-freemarker.template.Template-">include</a></span>(<a href="../../freemarker/template/Template.html" title="class in freemarker.template">Template</a> includedTemplate)</code> |
| <div class="block">Processes a Template in the context of this <code>Environment</code>, including its output in the |
| <code>Environment</code>'s Writer.</div> |
| </td> |
| </tr> |
| <tr id="i49" class="rowColor"> |
| <td class="colFirst"><code>boolean</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#isInAttemptBlock--">isInAttemptBlock</a></span>()</code> |
| <div class="block">Tells if we are inside an <tt>#attempt</tt> block (but before <tt>#recover</tt>).</div> |
| </td> |
| </tr> |
| <tr id="i50" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#outputInstructionStack-java.io.PrintWriter-">outputInstructionStack</a></span>(java.io.PrintWriter pw)</code> |
| <div class="block">Prints the current FTL stack trace.</div> |
| </td> |
| </tr> |
| <tr id="i51" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#process--">process</a></span>()</code> |
| <div class="block">Processes the template to which this environment belongs to.</div> |
| </td> |
| </tr> |
| <tr id="i52" class="altColor"> |
| <td class="colFirst"><code>java.lang.String</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#rootBasedToAbsoluteTemplateName-java.lang.String-">rootBasedToAbsoluteTemplateName</a></span>(java.lang.String rootBasedName)</code> |
| <div class="block">Converts a root based name (a name that's either relative to the root, or is absolute), which are typically used |
| by the API (such as for <a href="../../freemarker/template/Configuration.html#getTemplate-java.lang.String-"><code>Configuration.getTemplate(String)</code></a>), to an absolute name, which can be safely |
| passed to <code><#include path></code> and such, as it won't be misinterpreted to be relative to the directory of the |
| template.</div> |
| </td> |
| </tr> |
| <tr id="i53" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#setBooleanFormat-java.lang.String-">setBooleanFormat</a></span>(java.lang.String booleanFormat)</code> |
| <div class="block">The string value for the boolean <code>true</code> and <code>false</code> values, usually intended for human consumption |
| (not for a computer language), separated with comma.</div> |
| </td> |
| </tr> |
| <tr id="i54" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#setCFormat-freemarker.core.CFormat-">setCFormat</a></span>(<a href="../../freemarker/core/CFormat.html" title="class in freemarker.core">CFormat</a> cFormat)</code> |
| <div class="block">Sets the format (usually a computer language) used for <code>?c</code>, <code>?cn</code>, and for the |
| <code>"c"</code> (<code>"computer"</code> before 2.3.32) <a href="../../freemarker/core/Configurable.html#setNumberFormat-java.lang.String-"><code>number_format</code></a>, and the |
| <code>"c"</code> <a href="../../freemarker/core/Configurable.html#setBooleanFormat-java.lang.String-"><code>boolean_format</code></a>.</div> |
| </td> |
| </tr> |
| <tr id="i55" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#setCurrentVisitorNode-freemarker.template.TemplateNodeModel-">setCurrentVisitorNode</a></span>(<a href="../../freemarker/template/TemplateNodeModel.html" title="interface in freemarker.template">TemplateNodeModel</a> node)</code> |
| <div class="block">sets TemplateNodeModel as the current visitor node.</div> |
| </td> |
| </tr> |
| <tr id="i56" class="altColor"> |
| <td class="colFirst"><code>java.lang.Object</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#setCustomState-java.lang.Object-java.lang.Object-">setCustomState</a></span>(java.lang.Object identityKey, |
| java.lang.Object value)</code> |
| <div class="block">Sets the value of a custom state variable.</div> |
| </td> |
| </tr> |
| <tr id="i57" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#setDateFormat-java.lang.String-">setDateFormat</a></span>(java.lang.String dateFormat)</code> |
| <div class="block">Sets the format used to convert <code>Date</code>-s that are date-only (no time part) values to string-s, |
| also the format that <code>someString?date</code> will use to parse strings.</div> |
| </td> |
| </tr> |
| <tr id="i58" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#setDateTimeFormat-java.lang.String-">setDateTimeFormat</a></span>(java.lang.String dateTimeFormat)</code> |
| <div class="block">Sets the format used to convert <code>Date</code>-s that are date-time (timestamp) values to string-s, |
| also the format that <code>someString?datetime</code> will use to parse strings.</div> |
| </td> |
| </tr> |
| <tr id="i59" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#setGlobalVariable-java.lang.String-freemarker.template.TemplateModel-">setGlobalVariable</a></span>(java.lang.String name, |
| <a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template">TemplateModel</a> value)</code> |
| <div class="block">Sets a variable in the global namespace, like <code><#global name=value></code>.</div> |
| </td> |
| </tr> |
| <tr id="i60" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#setLocale-java.util.Locale-">setLocale</a></span>(java.util.Locale locale)</code> |
| <div class="block">Sets the locale used for number and date formatting (among others), also the locale used for searching |
| localized template variations when no locale was explicitly requested.</div> |
| </td> |
| </tr> |
| <tr id="i61" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#setLocalVariable-java.lang.String-freemarker.template.TemplateModel-">setLocalVariable</a></span>(java.lang.String name, |
| <a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template">TemplateModel</a> value)</code> |
| <div class="block">Sets a local variable that's on the top-level inside a macro or function invocation, like |
| <code><#local name=value></code>.</div> |
| </td> |
| </tr> |
| <tr id="i62" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#setNumberFormat-java.lang.String-">setNumberFormat</a></span>(java.lang.String formatName)</code> |
| <div class="block">Sets the number format used to convert numbers to strings.</div> |
| </td> |
| </tr> |
| <tr id="i63" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#setOut-java.io.Writer-">setOut</a></span>(java.io.Writer out)</code> </td> |
| </tr> |
| <tr id="i64" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#setOutputEncoding-java.lang.String-">setOutputEncoding</a></span>(java.lang.String outputEncoding)</code> |
| <div class="block">Informs FreeMarker about the charset used for the output.</div> |
| </td> |
| </tr> |
| <tr id="i65" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#setSQLDateAndTimeTimeZone-java.util.TimeZone-">setSQLDateAndTimeTimeZone</a></span>(java.util.TimeZone timeZone)</code> |
| <div class="block">Sets the time zone used when dealing with <code>java.sql.Date</code> and |
| <code>java.sql.Time</code> values.</div> |
| </td> |
| </tr> |
| <tr id="i66" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#setTemplateExceptionHandler-freemarker.template.TemplateExceptionHandler-">setTemplateExceptionHandler</a></span>(<a href="../../freemarker/template/TemplateExceptionHandler.html" title="interface in freemarker.template">TemplateExceptionHandler</a> templateExceptionHandler)</code> |
| <div class="block">Sets the exception handler used to handle exceptions occurring inside templates.</div> |
| </td> |
| </tr> |
| <tr id="i67" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#setTimeFormat-java.lang.String-">setTimeFormat</a></span>(java.lang.String timeFormat)</code> |
| <div class="block">Sets the format used to convert <code>Date</code>-s that are time (no date part) values to string-s, also |
| the format that <code>someString?time</code> will use to parse strings.</div> |
| </td> |
| </tr> |
| <tr id="i68" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#setTimeZone-java.util.TimeZone-">setTimeZone</a></span>(java.util.TimeZone timeZone)</code> |
| <div class="block">Sets the time zone to use when formatting date/time values.</div> |
| </td> |
| </tr> |
| <tr id="i69" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#setURLEscapingCharset-java.lang.String-">setURLEscapingCharset</a></span>(java.lang.String urlEscapingCharset)</code> |
| <div class="block">Sets the URL escaping (URL encoding, percentage encoding) charset.</div> |
| </td> |
| </tr> |
| <tr id="i70" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#setVariable-java.lang.String-freemarker.template.TemplateModel-">setVariable</a></span>(java.lang.String name, |
| <a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template">TemplateModel</a> value)</code> |
| <div class="block">Sets a variable in the current namespace, like <code><#assign name=value></code>.</div> |
| </td> |
| </tr> |
| <tr id="i71" class="rowColor"> |
| <td class="colFirst"><code>java.lang.String</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#toFullTemplateName-java.lang.String-java.lang.String-">toFullTemplateName</a></span>(java.lang.String baseName, |
| java.lang.String targetName)</code> |
| <div class="block">Resolves a reference to a template (like the one used in <code>#include</code> or <code>#import</code>), assuming a base |
| name.</div> |
| </td> |
| </tr> |
| <tr id="i72" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../freemarker/core/Environment.html#visit-freemarker.core.TemplateElement-freemarker.template.TemplateDirectiveModel-java.util.Map-java.util.List-">visit</a></span>(freemarker.core.TemplateElement element, |
| <a href="../../freemarker/template/TemplateDirectiveModel.html" title="interface in freemarker.template">TemplateDirectiveModel</a> directiveModel, |
| java.util.Map args, |
| java.util.List bodyParameterNames)</code> |
| <div class="block"><span class="deprecatedLabel">Deprecated.</span> |
| <div class="block"><span class="deprecationComment">Should be internal API</span></div> |
| </div> |
| </td> |
| </tr> |
| </table> |
| <ul class="blockList"> |
| <li class="blockList"><a name="methods.inherited.from.class.freemarker.core.Configurable"> |
| <!-- --> |
| </a> |
| <h3>Methods inherited from class freemarker.core.<a href="../../freemarker/core/Configurable.html" title="class in freemarker.core">Configurable</a></h3> |
| <code><a href="../../freemarker/core/Configurable.html#addAutoImport-java.lang.String-java.lang.String-">addAutoImport</a>, <a href="../../freemarker/core/Configurable.html#addAutoInclude-java.lang.String-">addAutoInclude</a>, <a href="../../freemarker/core/Configurable.html#clone--">clone</a>, <a href="../../freemarker/core/Configurable.html#doAutoImportsAndIncludes-freemarker.core.Environment-">doAutoImportsAndIncludes</a>, <a href="../../freemarker/core/Configurable.html#getArithmeticEngine--">getArithmeticEngine</a>, <a href="../../freemarker/core/Configurable.html#getAttemptExceptionReporter--">getAttemptExceptionReporter</a>, <a href="../../freemarker/core/Configurable.html#getAutoFlush--">getAutoFlush</a>, <a href="../../freemarker/core/Configurable.html#getAutoImports--">getAutoImports</a>, <a href="../../freemarker/core/Configurable.html#getAutoImportsWithoutFallback--">getAutoImportsWithoutFallback</a>, <a href="../../freemarker/core/Configurable.html#getAutoIncludes--">getAutoIncludes</a>, <a href="../../freemarker/core/Configurable.html#getAutoIncludesWithoutFallback--">getAutoIncludesWithoutFallback</a>, <a href="../../freemarker/core/Configurable.html#getBooleanFormat--">getBooleanFormat</a>, <a href="../../freemarker/core/Configurable.html#getCFormat--">getCFormat</a>, <a href="../../freemarker/core/Configurable.html#getClassicCompatibleAsInt--">getClassicCompatibleAsInt</a>, <a href="../../freemarker/core/Configurable.html#getCorrectedNameForUnknownSetting-java.lang.String-">getCorrectedNameForUnknownSetting</a>, <a href="../../freemarker/core/Configurable.html#getCustomAttribute-java.lang.String-">getCustomAttribute</a>, <a href="../../freemarker/core/Configurable.html#getCustomAttributeNames--">getCustomAttributeNames</a>, <a href="../../freemarker/core/Configurable.html#getCustomDateFormat-java.lang.String-">getCustomDateFormat</a>, <a href="../../freemarker/core/Configurable.html#getCustomDateFormats--">getCustomDateFormats</a>, <a href="../../freemarker/core/Configurable.html#getCustomDateFormatsWithoutFallback--">getCustomDateFormatsWithoutFallback</a>, <a href="../../freemarker/core/Configurable.html#getCustomNumberFormat-java.lang.String-">getCustomNumberFormat</a>, <a href="../../freemarker/core/Configurable.html#getCustomNumberFormats--">getCustomNumberFormats</a>, <a href="../../freemarker/core/Configurable.html#getCustomNumberFormatsWithoutFallback--">getCustomNumberFormatsWithoutFallback</a>, <a href="../../freemarker/core/Configurable.html#getDateFormat--">getDateFormat</a>, <a href="../../freemarker/core/Configurable.html#getDateTimeFormat--">getDateTimeFormat</a>, <a href="../../freemarker/core/Configurable.html#getEnvironment--">getEnvironment</a>, <a href="../../freemarker/core/Configurable.html#getLazyAutoImports--">getLazyAutoImports</a>, <a href="../../freemarker/core/Configurable.html#getLazyImports--">getLazyImports</a>, <a href="../../freemarker/core/Configurable.html#getLocale--">getLocale</a>, <a href="../../freemarker/core/Configurable.html#getLogTemplateExceptions--">getLogTemplateExceptions</a>, <a href="../../freemarker/core/Configurable.html#getNewBuiltinClassResolver--">getNewBuiltinClassResolver</a>, <a href="../../freemarker/core/Configurable.html#getNumberFormat--">getNumberFormat</a>, <a href="../../freemarker/core/Configurable.html#getObjectWrapper--">getObjectWrapper</a>, <a href="../../freemarker/core/Configurable.html#getOutputEncoding--">getOutputEncoding</a>, <a href="../../freemarker/core/Configurable.html#getParent--">getParent</a>, <a href="../../freemarker/core/Configurable.html#getSetting-java.lang.String-">getSetting</a>, <a href="../../freemarker/core/Configurable.html#getSettingNames-boolean-">getSettingNames</a>, <a href="../../freemarker/core/Configurable.html#getSettings--">getSettings</a>, <a href="../../freemarker/core/Configurable.html#getShowErrorTips--">getShowErrorTips</a>, <a href="../../freemarker/core/Configurable.html#getSQLDateAndTimeTimeZone--">getSQLDateAndTimeTimeZone</a>, <a href="../../freemarker/core/Configurable.html#getTemplateExceptionHandler--">getTemplateExceptionHandler</a>, <a href="../../freemarker/core/Configurable.html#getTimeFormat--">getTimeFormat</a>, <a href="../../freemarker/core/Configurable.html#getTimeZone--">getTimeZone</a>, <a href="../../freemarker/core/Configurable.html#getTruncateBuiltinAlgorithm--">getTruncateBuiltinAlgorithm</a>, <a href="../../freemarker/core/Configurable.html#getURLEscapingCharset--">getURLEscapingCharset</a>, <a href="../../freemarker/core/Configurable.html#getWrapUncheckedExceptions--">getWrapUncheckedExceptions</a>, <a href="../../freemarker/core/Configurable.html#hasCustomFormats--">hasCustomFormats</a>, <a href="../../freemarker/core/Configurable.html#invalidSettingValueException-java.lang.String-java.lang.String-">invalidSettingValueException</a>, <a href="../../freemarker/core/Configurable.html#isAPIBuiltinEnabled--">isAPIBuiltinEnabled</a>, <a href="../../freemarker/core/Configurable.html#isAPIBuiltinEnabledSet--">isAPIBuiltinEnabledSet</a>, <a href="../../freemarker/core/Configurable.html#isArithmeticEngineSet--">isArithmeticEngineSet</a>, <a href="../../freemarker/core/Configurable.html#isAttemptExceptionReporterSet--">isAttemptExceptionReporterSet</a>, <a href="../../freemarker/core/Configurable.html#isAutoFlushSet--">isAutoFlushSet</a>, <a href="../../freemarker/core/Configurable.html#isAutoImportsSet--">isAutoImportsSet</a>, <a href="../../freemarker/core/Configurable.html#isAutoIncludesSet--">isAutoIncludesSet</a>, <a href="../../freemarker/core/Configurable.html#isBooleanFormatSet--">isBooleanFormatSet</a>, <a href="../../freemarker/core/Configurable.html#isCFormatSet--">isCFormatSet</a>, <a href="../../freemarker/core/Configurable.html#isClassicCompatible--">isClassicCompatible</a>, <a href="../../freemarker/core/Configurable.html#isClassicCompatibleSet--">isClassicCompatibleSet</a>, <a href="../../freemarker/core/Configurable.html#isCustomDateFormatsSet--">isCustomDateFormatsSet</a>, <a href="../../freemarker/core/Configurable.html#isCustomNumberFormatsSet--">isCustomNumberFormatsSet</a>, <a href="../../freemarker/core/Configurable.html#isDateFormatSet--">isDateFormatSet</a>, <a href="../../freemarker/core/Configurable.html#isDateTimeFormatSet--">isDateTimeFormatSet</a>, <a href="../../freemarker/core/Configurable.html#isLazyAutoImportsSet--">isLazyAutoImportsSet</a>, <a href="../../freemarker/core/Configurable.html#isLazyImportsSet--">isLazyImportsSet</a>, <a href="../../freemarker/core/Configurable.html#isLocaleSet--">isLocaleSet</a>, <a href="../../freemarker/core/Configurable.html#isLogTemplateExceptionsSet--">isLogTemplateExceptionsSet</a>, <a href="../../freemarker/core/Configurable.html#isNewBuiltinClassResolverSet--">isNewBuiltinClassResolverSet</a>, <a href="../../freemarker/core/Configurable.html#isNumberFormatSet--">isNumberFormatSet</a>, <a href="../../freemarker/core/Configurable.html#isObjectWrapperSet--">isObjectWrapperSet</a>, <a href="../../freemarker/core/Configurable.html#isOutputEncodingSet--">isOutputEncodingSet</a>, <a href="../../freemarker/core/Configurable.html#isShowErrorTipsSet--">isShowErrorTipsSet</a>, <a href="../../freemarker/core/Configurable.html#isSQLDateAndTimeTimeZoneSet--">isSQLDateAndTimeTimeZoneSet</a>, <a href="../../freemarker/core/Configurable.html#isTemplateExceptionHandlerSet--">isTemplateExceptionHandlerSet</a>, <a href="../../freemarker/core/Configurable.html#isTimeFormatSet--">isTimeFormatSet</a>, <a href="../../freemarker/core/Configurable.html#isTimeZoneSet--">isTimeZoneSet</a>, <a href="../../freemarker/core/Configurable.html#isTruncateBuiltinAlgorithmSet--">isTruncateBuiltinAlgorithmSet</a>, <a href="../../freemarker/core/Configurable.html#isURLEscapingCharsetSet--">isURLEscapingCharsetSet</a>, <a href="../../freemarker/core/Configurable.html#isWrapUncheckedExceptionsSet--">isWrapUncheckedExceptionsSet</a>, <a href="../../freemarker/core/Configurable.html#parseAsImportList-java.lang.String-">parseAsImportList</a>, <a href="../../freemarker/core/Configurable.html#parseAsList-java.lang.String-">parseAsList</a>, <a href="../../freemarker/core/Configurable.html#parseAsSegmentedList-java.lang.String-">parseAsSegmentedList</a>, <a href="../../freemarker/core/Configurable.html#removeAutoImport-java.lang.String-">removeAutoImport</a>, <a href="../../freemarker/core/Configurable.html#removeAutoInclude-java.lang.String-">removeAutoInclude</a>, <a href="../../freemarker/core/Configurable.html#removeCustomAttribute-java.lang.String-">removeCustomAttribute</a>, <a href="../../freemarker/core/Configurable.html#setAPIBuiltinEnabled-boolean-">setAPIBuiltinEnabled</a>, <a href="../../freemarker/core/Configurable.html#setArithmeticEngine-freemarker.core.ArithmeticEngine-">setArithmeticEngine</a>, <a href="../../freemarker/core/Configurable.html#setAttemptExceptionReporter-freemarker.template.AttemptExceptionReporter-">setAttemptExceptionReporter</a>, <a href="../../freemarker/core/Configurable.html#setAutoFlush-boolean-">setAutoFlush</a>, <a href="../../freemarker/core/Configurable.html#setAutoImports-java.util.Map-">setAutoImports</a>, <a href="../../freemarker/core/Configurable.html#setAutoIncludes-java.util.List-">setAutoIncludes</a>, <a href="../../freemarker/core/Configurable.html#setClassicCompatible-boolean-">setClassicCompatible</a>, <a href="../../freemarker/core/Configurable.html#setClassicCompatibleAsInt-int-">setClassicCompatibleAsInt</a>, <a href="../../freemarker/core/Configurable.html#setCustomAttribute-java.lang.String-java.lang.Object-">setCustomAttribute</a>, <a href="../../freemarker/core/Configurable.html#setCustomDateFormats-java.util.Map-">setCustomDateFormats</a>, <a href="../../freemarker/core/Configurable.html#setCustomNumberFormats-java.util.Map-">setCustomNumberFormats</a>, <a href="../../freemarker/core/Configurable.html#setLazyAutoImports-java.lang.Boolean-">setLazyAutoImports</a>, <a href="../../freemarker/core/Configurable.html#setLazyImports-boolean-">setLazyImports</a>, <a href="../../freemarker/core/Configurable.html#setLogTemplateExceptions-boolean-">setLogTemplateExceptions</a>, <a href="../../freemarker/core/Configurable.html#setNewBuiltinClassResolver-freemarker.core.TemplateClassResolver-">setNewBuiltinClassResolver</a>, <a href="../../freemarker/core/Configurable.html#setObjectWrapper-freemarker.template.ObjectWrapper-">setObjectWrapper</a>, <a href="../../freemarker/core/Configurable.html#setSetting-java.lang.String-java.lang.String-">setSetting</a>, <a href="../../freemarker/core/Configurable.html#setSettings-java.io.InputStream-">setSettings</a>, <a href="../../freemarker/core/Configurable.html#setSettings-java.util.Properties-">setSettings</a>, <a href="../../freemarker/core/Configurable.html#setShowErrorTips-boolean-">setShowErrorTips</a>, <a href="../../freemarker/core/Configurable.html#setStrictBeanModels-boolean-">setStrictBeanModels</a>, <a href="../../freemarker/core/Configurable.html#settingValueAssignmentException-java.lang.String-java.lang.String-java.lang.Throwable-">settingValueAssignmentException</a>, <a href="../../freemarker/core/Configurable.html#setTruncateBuiltinAlgorithm-freemarker.core.TruncateBuiltinAlgorithm-">setTruncateBuiltinAlgorithm</a>, <a href="../../freemarker/core/Configurable.html#setWrapUncheckedExceptions-boolean-">setWrapUncheckedExceptions</a>, <a href="../../freemarker/core/Configurable.html#unknownSettingException-java.lang.String-">unknownSettingException</a></code></li> |
| </ul> |
| <ul class="blockList"> |
| <li class="blockList"><a name="methods.inherited.from.class.java.lang.Object"> |
| <!-- --> |
| </a> |
| <h3>Methods inherited from class java.lang.Object</h3> |
| <code>equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</code></li> |
| </ul> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| </div> |
| <div class="details"> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <!-- ========= CONSTRUCTOR DETAIL ======== --> |
| <ul class="blockList"> |
| <li class="blockList"><a name="constructor.detail"> |
| <!-- --> |
| </a> |
| <h3>Constructor Detail</h3> |
| <a name="Environment-freemarker.template.Template-freemarker.template.TemplateHashModel-java.io.Writer-"> |
| <!-- --> |
| </a> |
| <ul class="blockListLast"> |
| <li class="blockList"> |
| <h4>Environment</h4> |
| <pre>public Environment(<a href="../../freemarker/template/Template.html" title="class in freemarker.template">Template</a> template, |
| <a href="../../freemarker/template/TemplateHashModel.html" title="interface in freemarker.template">TemplateHashModel</a> rootDataModel, |
| java.io.Writer out)</pre> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| <!-- ============ METHOD DETAIL ========== --> |
| <ul class="blockList"> |
| <li class="blockList"><a name="method.detail"> |
| <!-- --> |
| </a> |
| <h3>Method Detail</h3> |
| <a name="getCurrentEnvironment--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getCurrentEnvironment</h4> |
| <pre>public static <a href="../../freemarker/core/Environment.html" title="class in freemarker.core">Environment</a> getCurrentEnvironment()</pre> |
| <div class="block">Retrieves the environment object associated with the current thread, or <code>null</code> if there's no template |
| processing going on in this thread. Data model implementations that need access to the environment can call this |
| method to obtain the environment object that represents the template processing that is currently running on the |
| current thread.</div> |
| </li> |
| </ul> |
| <a name="getTemplate--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getTemplate</h4> |
| <pre>@Deprecated |
| public <a href="../../freemarker/template/Template.html" title="class in freemarker.template">Template</a> getTemplate()</pre> |
| <div class="block"><span class="deprecatedLabel">Deprecated.</span> <span class="deprecationComment">Use <a href="../../freemarker/core/Environment.html#getMainTemplate--"><code>getMainTemplate()</code></a> instead (or <a href="../../freemarker/core/Environment.html#getCurrentNamespace--"><code>getCurrentNamespace()</code></a> and then |
| <a href="../../freemarker/core/Environment.Namespace.html#getTemplate--"><code>Environment.Namespace.getTemplate()</code></a>); the value returned by this method is often not what you expect when |
| it comes to macro/function invocations.</span></div> |
| <div class="block">Despite its name it just returns <a href="../../freemarker/core/Configurable.html#getParent--"><code>Configurable.getParent()</code></a>. If <a href="../../freemarker/template/Configuration.html#getIncompatibleImprovements--"><code>Configuration.getIncompatibleImprovements()</code></a> is |
| at least 2.3.22, then that will be the same as <a href="../../freemarker/core/Environment.html#getMainTemplate--"><code>getMainTemplate()</code></a>. Otherwise the returned value follows |
| the <a href="../../freemarker/core/Environment.html" title="class in freemarker.core"><code>Environment</code></a> parent switchings that occur at <code>#include</code>/<code>#import</code> and <code>#nested</code> |
| directive calls, that is, it's not very meaningful outside FreeMarker internals.</div> |
| </li> |
| </ul> |
| <a name="getMainTemplate--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getMainTemplate</h4> |
| <pre>public <a href="../../freemarker/template/Template.html" title="class in freemarker.template">Template</a> getMainTemplate()</pre> |
| <div class="block">Returns the topmost <a href="../../freemarker/template/Template.html" title="class in freemarker.template"><code>Template</code></a>, with other words, the one for which this <a href="../../freemarker/core/Environment.html" title="class in freemarker.core"><code>Environment</code></a> was created. |
| That template will never change, like <code>#include</code> or macro calls don't change it. This method never returns |
| <code>null</code>.</div> |
| <dl> |
| <dt><span class="simpleTagLabel">Since:</span></dt> |
| <dd>2.3.22</dd> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="../../freemarker/core/Environment.html#getCurrentNamespace--"><code>getCurrentNamespace()</code></a></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getCurrentTemplate--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getCurrentTemplate</h4> |
| <pre>public <a href="../../freemarker/template/Template.html" title="class in freemarker.template">Template</a> getCurrentTemplate()</pre> |
| <div class="block">Returns the <a href="../../freemarker/template/Template.html" title="class in freemarker.template"><code>Template</code></a> that we are "lexically" inside at the moment. This template will change when |
| entering an <code>#include</code> or calling a macro or function in another template, or returning to yet another |
| template with <code>#nested</code>. When you are calling a directive that's implemented in Java or a Java method |
| from a template, the current template will be the last current template, not <code>null</code>. This method never |
| returns <code>null</code>.</div> |
| <dl> |
| <dt><span class="simpleTagLabel">Since:</span></dt> |
| <dd>2.3.23</dd> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="../../freemarker/core/Environment.html#getMainTemplate--"><code>getMainTemplate()</code></a>, |
| <a href="../../freemarker/core/Environment.html#getCurrentNamespace--"><code>getCurrentNamespace()</code></a></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getCurrentDirectiveCallPlace--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getCurrentDirectiveCallPlace</h4> |
| <pre>public <a href="../../freemarker/core/DirectiveCallPlace.html" title="interface in freemarker.core">DirectiveCallPlace</a> getCurrentDirectiveCallPlace()</pre> |
| <div class="block">Gets the currently executing <em>custom</em> directive's call place information, or <code>null</code> if there's no |
| executing custom directive. This currently only works for calls made from templates with the <code><@...></code> |
| syntax. This should only be called from the <a href="../../freemarker/template/TemplateDirectiveModel.html" title="interface in freemarker.template"><code>TemplateDirectiveModel</code></a> that was invoked with <code><@...></code>, |
| otherwise its return value is not defined by this API (it's usually <code>null</code>).</div> |
| <dl> |
| <dt><span class="simpleTagLabel">Since:</span></dt> |
| <dd>2.3.22</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="process--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>process</h4> |
| <pre>public void process() |
| throws <a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template">TemplateException</a>, |
| java.io.IOException</pre> |
| <div class="block">Processes the template to which this environment belongs to.</div> |
| <dl> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template">TemplateException</a></code></dd> |
| <dd><code>java.io.IOException</code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="visit-freemarker.core.TemplateElement-freemarker.template.TemplateDirectiveModel-java.util.Map-java.util.List-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>visit</h4> |
| <pre>@Deprecated |
| public void visit(freemarker.core.TemplateElement element, |
| <a href="../../freemarker/template/TemplateDirectiveModel.html" title="interface in freemarker.template">TemplateDirectiveModel</a> directiveModel, |
| java.util.Map args, |
| java.util.List bodyParameterNames) |
| throws <a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template">TemplateException</a>, |
| java.io.IOException</pre> |
| <div class="block"><span class="deprecatedLabel">Deprecated.</span> <span class="deprecationComment">Should be internal API</span></div> |
| <dl> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template">TemplateException</a></code></dd> |
| <dd><code>java.io.IOException</code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="isInAttemptBlock--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>isInAttemptBlock</h4> |
| <pre>public boolean isInAttemptBlock()</pre> |
| <div class="block">Tells if we are inside an <tt>#attempt</tt> block (but before <tt>#recover</tt>). This can be useful for |
| <a href="../../freemarker/template/TemplateExceptionHandler.html" title="interface in freemarker.template"><code>TemplateExceptionHandler</code></a>-s, as then they may don't want to print the error to the output, as |
| <tt>#attempt</tt> will roll it back anyway.</div> |
| <dl> |
| <dt><span class="simpleTagLabel">Since:</span></dt> |
| <dd>2.3.20</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="setTemplateExceptionHandler-freemarker.template.TemplateExceptionHandler-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>setTemplateExceptionHandler</h4> |
| <pre>public void setTemplateExceptionHandler(<a href="../../freemarker/template/TemplateExceptionHandler.html" title="interface in freemarker.template">TemplateExceptionHandler</a> templateExceptionHandler)</pre> |
| <div class="block"><span class="descfrmTypeLabel">Description copied from class: <code><a href="../../freemarker/core/Configurable.html#setTemplateExceptionHandler-freemarker.template.TemplateExceptionHandler-">Configurable</a></code></span></div> |
| <div class="block">Sets the exception handler used to handle exceptions occurring inside templates. |
| The default is <a href="../../freemarker/template/TemplateExceptionHandler.html#DEBUG_HANDLER"><code>TemplateExceptionHandler.DEBUG_HANDLER</code></a>. The recommended values are: |
| |
| <ul> |
| <li>In production systems: <a href="../../freemarker/template/TemplateExceptionHandler.html#RETHROW_HANDLER"><code>TemplateExceptionHandler.RETHROW_HANDLER</code></a> |
| <li>During development of HTML templates: <a href="../../freemarker/template/TemplateExceptionHandler.html#HTML_DEBUG_HANDLER"><code>TemplateExceptionHandler.HTML_DEBUG_HANDLER</code></a> |
| <li>During development of non-HTML templates: <a href="../../freemarker/template/TemplateExceptionHandler.html#DEBUG_HANDLER"><code>TemplateExceptionHandler.DEBUG_HANDLER</code></a> |
| </ul> |
| |
| <p>All of these will let the exception propagate further, so that you can catch it around |
| <a href="../../freemarker/template/Template.html#process-java.lang.Object-java.io.Writer-"><code>Template.process(Object, Writer)</code></a> for example. The difference is in what they print on the output before |
| they do that. |
| |
| <p>Note that the <a href="../../freemarker/template/TemplateExceptionHandler.html" title="interface in freemarker.template"><code>TemplateExceptionHandler</code></a> is not meant to be used for generating HTTP error pages. |
| Neither is it meant to be used to roll back the printed output. These should be solved outside template |
| processing when the exception raises from <a href="../../freemarker/template/Template.html#process-java.lang.Object-java.io.Writer-"><code>Template.process</code></a>. |
| <a href="../../freemarker/template/TemplateExceptionHandler.html" title="interface in freemarker.template"><code>TemplateExceptionHandler</code></a> meant to be used if you want to include special content <em>in</em> the template |
| output, or if you want to suppress certain exceptions. If you suppress an exception, and the |
| <a href="../../freemarker/core/Configurable.html#getLogTemplateExceptions--"><code>Configurable.getLogTemplateExceptions()</code></a> returns <code>false</code>, then it's the responsibility of the |
| <a href="../../freemarker/template/TemplateExceptionHandler.html" title="interface in freemarker.template"><code>TemplateExceptionHandler</code></a> to log the exception (if you want it to be logged).</div> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Overrides:</span></dt> |
| <dd><code><a href="../../freemarker/core/Configurable.html#setTemplateExceptionHandler-freemarker.template.TemplateExceptionHandler-">setTemplateExceptionHandler</a></code> in class <code><a href="../../freemarker/core/Configurable.html" title="class in freemarker.core">Configurable</a></code></dd> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="../../freemarker/core/Configurable.html#setLogTemplateExceptions-boolean-"><code>Configurable.setLogTemplateExceptions(boolean)</code></a>, |
| <a href="../../freemarker/core/Configurable.html#setAttemptExceptionReporter-freemarker.template.AttemptExceptionReporter-"><code>Configurable.setAttemptExceptionReporter(AttemptExceptionReporter)</code></a></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="setLocale-java.util.Locale-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>setLocale</h4> |
| <pre>public void setLocale(java.util.Locale locale)</pre> |
| <div class="block"><span class="descfrmTypeLabel">Description copied from class: <code><a href="../../freemarker/core/Configurable.html#setLocale-java.util.Locale-">Configurable</a></code></span></div> |
| <div class="block">Sets the locale used for number and date formatting (among others), also the locale used for searching |
| localized template variations when no locale was explicitly requested. On the <a href="../../freemarker/template/Configuration.html" title="class in freemarker.template"><code>Configuration</code></a> level it |
| defaults to the default locale of system (of the JVM), for server-side application usually you should set it |
| explicitly in the <a href="../../freemarker/template/Configuration.html" title="class in freemarker.template"><code>Configuration</code></a> to use the preferred locale of your application instead.</div> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Overrides:</span></dt> |
| <dd><code><a href="../../freemarker/core/Configurable.html#setLocale-java.util.Locale-">setLocale</a></code> in class <code><a href="../../freemarker/core/Configurable.html" title="class in freemarker.core">Configurable</a></code></dd> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="../../freemarker/template/Configuration.html#getTemplate-java.lang.String-java.util.Locale-"><code>Configuration.getTemplate(String, Locale)</code></a></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="setTimeZone-java.util.TimeZone-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>setTimeZone</h4> |
| <pre>public void setTimeZone(java.util.TimeZone timeZone)</pre> |
| <div class="block"><span class="descfrmTypeLabel">Description copied from class: <code><a href="../../freemarker/core/Configurable.html#setTimeZone-java.util.TimeZone-">Configurable</a></code></span></div> |
| <div class="block">Sets the time zone to use when formatting date/time values. |
| Defaults to the system time zone (<code>TimeZone.getDefault()</code>), regardless of the "locale" FreeMarker setting, |
| so in a server application you probably want to set it explicitly in the <a href="../../freemarker/core/Environment.html" title="class in freemarker.core"><code>Environment</code></a> to match the |
| preferred time zone of target audience (like the Web page visitor). |
| |
| <p>If you or the templates set the time zone, you should probably also set |
| <a href="../../freemarker/core/Configurable.html#setSQLDateAndTimeTimeZone-java.util.TimeZone-"><code>Configurable.setSQLDateAndTimeTimeZone(TimeZone)</code></a>!</div> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Overrides:</span></dt> |
| <dd><code><a href="../../freemarker/core/Configurable.html#setTimeZone-java.util.TimeZone-">setTimeZone</a></code> in class <code><a href="../../freemarker/core/Configurable.html" title="class in freemarker.core">Configurable</a></code></dd> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="../../freemarker/core/Configurable.html#setSQLDateAndTimeTimeZone-java.util.TimeZone-"><code>Configurable.setSQLDateAndTimeTimeZone(TimeZone)</code></a></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="setSQLDateAndTimeTimeZone-java.util.TimeZone-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>setSQLDateAndTimeTimeZone</h4> |
| <pre>public void setSQLDateAndTimeTimeZone(java.util.TimeZone timeZone)</pre> |
| <div class="block"><span class="descfrmTypeLabel">Description copied from class: <code><a href="../../freemarker/core/Configurable.html#setSQLDateAndTimeTimeZone-java.util.TimeZone-">Configurable</a></code></span></div> |
| <div class="block">Sets the time zone used when dealing with <code>java.sql.Date</code> and |
| <code>java.sql.Time</code> values. It defaults to <code>null</code> for backward compatibility, but in most |
| applications this should be set to the JVM default time zone (server default time zone), because that's what |
| most JDBC drivers will use when constructing the <code>java.sql.Date</code> and |
| <code>java.sql.Time</code> values. If this setting is <code>null</code>, FreeMarker will use the value of |
| (<a href="../../freemarker/core/Configurable.html#getTimeZone--"><code>Configurable.getTimeZone()</code></a>) for <code>java.sql.Date</code> and <code>java.sql.Time</code> values, |
| which often gives bad results. |
| |
| <p>This setting doesn't influence the formatting of other kind of values (like of |
| <code>java.sql.Timestamp</code> or plain <code>java.util.Date</code> values). |
| |
| <p>To decide what value you need, a few things has to be understood: |
| <ul> |
| <li>Date-only and time-only values in SQL-oriented databases usually store calendar and clock field |
| values directly (year, month, day, or hour, minute, seconds (with decimals)), as opposed to a set of points |
| on the physical time line. Thus, unlike SQL timestamps, these values usually aren't meant to be shown |
| differently depending on the time zone of the audience. |
| |
| <li>When a JDBC query has to return a date-only or time-only value, it has to convert it to a point on the |
| physical time line, because that's what <code>Date</code> and its subclasses store (milliseconds since |
| the epoch). Obviously, this is impossible to do. So JDBC just chooses a physical time which, when rendered |
| <em>with the JVM default time zone</em>, will give the same field values as those stored |
| in the database. (Actually, you can give JDBC a calendar, and so it can use other time zones too, but most |
| application won't care using those overloads.) For example, assume that the system time zone is GMT+02:00. |
| Then, 2014-07-12 in the database will be translated to physical time 2014-07-11 22:00:00 UTC, because that |
| rendered in GMT+02:00 gives 2014-07-12 00:00:00. Similarly, 11:57:00 in the database will be translated to |
| physical time 1970-01-01 09:57:00 UTC. Thus, the physical time stored in the returned value depends on the |
| default system time zone of the JDBC client, not just on the content of the database. (This used to be the |
| default behavior of ORM-s, like Hibernate, too.) |
| |
| <li>The value of the <code>time_zone</code> FreeMarker configuration setting sets the time zone used for the |
| template output. For example, when a web page visitor has a preferred time zone, the web application framework |
| may calls <a href="../../freemarker/core/Environment.html#setTimeZone-java.util.TimeZone-"><code>setTimeZone(TimeZone)</code></a> with that time zone. Thus, the visitor will |
| see <code>java.sql.Timestamp</code> and plain <code>java.util.Date</code> values as |
| they look in his own time zone. While |
| this is desirable for those types, as they meant to represent physical points on the time line, this is not |
| necessarily desirable for date-only and time-only values. When <code>sql_date_and_time_time_zone</code> is |
| <code>null</code>, <code>time_zone</code> is used for rendering all kind of date/time/dateTime values, including |
| <code>java.sql.Date</code> and <code>java.sql.Time</code>, and then if, for example, |
| <code>time_zone</code> is GMT+00:00, the |
| values from the earlier examples will be shown as 2014-07-11 (one day off) and 09:57:00 (2 hours off). While |
| those are the time zone correct renderings, those values are probably meant to be shown "as is". |
| |
| <li>You may wonder why this setting isn't simply "SQL time zone", that is, why's this time zone not applied to |
| <code>java.sql.Timestamp</code> values as well. Timestamps in databases refer to a point on |
| the physical time line, and thus doesn't have the inherent problem of date-only and time-only values. |
| FreeMarker assumes that the JDBC driver converts time stamps coming from the database so that they store |
| the distance from the epoch (1970-01-01 00:00:00 UTC), as requested by the <code>Date</code> API. |
| Then time stamps can be safely rendered in different time zones, and thus need no special treatment. |
| </ul></div> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Overrides:</span></dt> |
| <dd><code><a href="../../freemarker/core/Configurable.html#setSQLDateAndTimeTimeZone-java.util.TimeZone-">setSQLDateAndTimeTimeZone</a></code> in class <code><a href="../../freemarker/core/Configurable.html" title="class in freemarker.core">Configurable</a></code></dd> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>timeZone</code> - Maybe <code>null</code>, in which case <code>java.sql.Date</code> and |
| <code>java.sql.Time</code> values will be formatted in the time zone returned by |
| <a href="../../freemarker/core/Configurable.html#getTimeZone--"><code>Configurable.getTimeZone()</code></a>. |
| (Note that since <code>null</code> is an allowed value for this setting, it will not cause |
| <a href="../../freemarker/core/Configurable.html#getSQLDateAndTimeTimeZone--"><code>Configurable.getSQLDateAndTimeTimeZone()</code></a> to fall back to the parent configuration.)</dd> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="../../freemarker/core/Configurable.html#setTimeZone-java.util.TimeZone-"><code>Configurable.setTimeZone(TimeZone)</code></a></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="setURLEscapingCharset-java.lang.String-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>setURLEscapingCharset</h4> |
| <pre>public void setURLEscapingCharset(java.lang.String urlEscapingCharset)</pre> |
| <div class="block"><span class="descfrmTypeLabel">Description copied from class: <code><a href="../../freemarker/core/Configurable.html#setURLEscapingCharset-java.lang.String-">Configurable</a></code></span></div> |
| <div class="block">Sets the URL escaping (URL encoding, percentage encoding) charset. If <code>null</code>, the output encoding |
| (<a href="../../freemarker/core/Configurable.html#setOutputEncoding-java.lang.String-"><code>Configurable.setOutputEncoding(String)</code></a>) will be used for URL escaping. |
| |
| Defaults to <code>null</code>.</div> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Overrides:</span></dt> |
| <dd><code><a href="../../freemarker/core/Configurable.html#setURLEscapingCharset-java.lang.String-">setURLEscapingCharset</a></code> in class <code><a href="../../freemarker/core/Configurable.html" title="class in freemarker.core">Configurable</a></code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="setOutputEncoding-java.lang.String-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>setOutputEncoding</h4> |
| <pre>public void setOutputEncoding(java.lang.String outputEncoding)</pre> |
| <div class="block"><span class="descfrmTypeLabel">Description copied from class: <code><a href="../../freemarker/core/Configurable.html#setOutputEncoding-java.lang.String-">Configurable</a></code></span></div> |
| <div class="block">Informs FreeMarker about the charset used for the output. As FreeMarker outputs character stream (not |
| byte stream), it's not aware of the output charset unless the software that encloses it tells it |
| with this setting. Some templates may use FreeMarker features that require this information. |
| Setting this to <code>null</code> means that the output encoding is not known. |
| |
| <p>Defaults to <code>null</code> (unknown).</div> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Overrides:</span></dt> |
| <dd><code><a href="../../freemarker/core/Configurable.html#setOutputEncoding-java.lang.String-">setOutputEncoding</a></code> in class <code><a href="../../freemarker/core/Configurable.html" title="class in freemarker.core">Configurable</a></code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="applyEqualsOperator-freemarker.template.TemplateModel-freemarker.template.TemplateModel-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>applyEqualsOperator</h4> |
| <pre>public boolean applyEqualsOperator(<a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template">TemplateModel</a> leftValue, |
| <a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template">TemplateModel</a> rightValue) |
| throws <a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template">TemplateException</a></pre> |
| <div class="block">Compares two <a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template"><code>TemplateModel</code></a>-s according the rules of the FTL "==" operator.</div> |
| <dl> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template">TemplateException</a></code></dd> |
| <dt><span class="simpleTagLabel">Since:</span></dt> |
| <dd>2.3.20</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="applyEqualsOperatorLenient-freemarker.template.TemplateModel-freemarker.template.TemplateModel-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>applyEqualsOperatorLenient</h4> |
| <pre>public boolean applyEqualsOperatorLenient(<a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template">TemplateModel</a> leftValue, |
| <a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template">TemplateModel</a> rightValue) |
| throws <a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template">TemplateException</a></pre> |
| <div class="block">Compares two <a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template"><code>TemplateModel</code></a>-s according the rules of the FTL "==" operator, except that if the two types |
| are incompatible, they are treated as non-equal instead of throwing an exception. Comparing dates of different |
| types (date-only VS time-only VS date-time) will still throw an exception, however.</div> |
| <dl> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template">TemplateException</a></code></dd> |
| <dt><span class="simpleTagLabel">Since:</span></dt> |
| <dd>2.3.20</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="applyLessThanOperator-freemarker.template.TemplateModel-freemarker.template.TemplateModel-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>applyLessThanOperator</h4> |
| <pre>public boolean applyLessThanOperator(<a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template">TemplateModel</a> leftValue, |
| <a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template">TemplateModel</a> rightValue) |
| throws <a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template">TemplateException</a></pre> |
| <div class="block">Compares two <a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template"><code>TemplateModel</code></a>-s according the rules of the FTL "<" operator.</div> |
| <dl> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template">TemplateException</a></code></dd> |
| <dt><span class="simpleTagLabel">Since:</span></dt> |
| <dd>2.3.20</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="applyLessThanOrEqualsOperator-freemarker.template.TemplateModel-freemarker.template.TemplateModel-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>applyLessThanOrEqualsOperator</h4> |
| <pre>public boolean applyLessThanOrEqualsOperator(<a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template">TemplateModel</a> leftValue, |
| <a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template">TemplateModel</a> rightValue) |
| throws <a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template">TemplateException</a></pre> |
| <div class="block">Compares two <a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template"><code>TemplateModel</code></a>-s according the rules of the FTL "<" operator.</div> |
| <dl> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template">TemplateException</a></code></dd> |
| <dt><span class="simpleTagLabel">Since:</span></dt> |
| <dd>2.3.20</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="applyGreaterThanOperator-freemarker.template.TemplateModel-freemarker.template.TemplateModel-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>applyGreaterThanOperator</h4> |
| <pre>public boolean applyGreaterThanOperator(<a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template">TemplateModel</a> leftValue, |
| <a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template">TemplateModel</a> rightValue) |
| throws <a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template">TemplateException</a></pre> |
| <div class="block">Compares two <a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template"><code>TemplateModel</code></a>-s according the rules of the FTL ">" operator.</div> |
| <dl> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template">TemplateException</a></code></dd> |
| <dt><span class="simpleTagLabel">Since:</span></dt> |
| <dd>2.3.20</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="applyWithGreaterThanOrEqualsOperator-freemarker.template.TemplateModel-freemarker.template.TemplateModel-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>applyWithGreaterThanOrEqualsOperator</h4> |
| <pre>public boolean applyWithGreaterThanOrEqualsOperator(<a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template">TemplateModel</a> leftValue, |
| <a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template">TemplateModel</a> rightValue) |
| throws <a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template">TemplateException</a></pre> |
| <div class="block">Compares two <a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template"><code>TemplateModel</code></a>-s according the rules of the FTL ">=" operator.</div> |
| <dl> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template">TemplateException</a></code></dd> |
| <dt><span class="simpleTagLabel">Since:</span></dt> |
| <dd>2.3.20</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="setOut-java.io.Writer-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>setOut</h4> |
| <pre>public void setOut(java.io.Writer out)</pre> |
| </li> |
| </ul> |
| <a name="getOut--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getOut</h4> |
| <pre>public java.io.Writer getOut()</pre> |
| </li> |
| </ul> |
| <a name="setNumberFormat-java.lang.String-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>setNumberFormat</h4> |
| <pre>public void setNumberFormat(java.lang.String formatName)</pre> |
| <div class="block"><span class="descfrmTypeLabel">Description copied from class: <code><a href="../../freemarker/core/Configurable.html#setNumberFormat-java.lang.String-">Configurable</a></code></span></div> |
| <div class="block">Sets the number format used to convert numbers to strings. Currently, this is one of these: |
| <ul> |
| <li><code>"number"</code>: The number format returned by <code>NumberFormat.getNumberInstance(Locale)</code>. This is the |
| default.</li> |
| <li><code>"c"</code> (recognized since 2.3.32): The number format used by FTL's <code>c</code> built-in (like in |
| <code>someNumber?c</code>). So with this <code>${someNumber}</code> will output the same as |
| <code>${someNumber?c}</code>. This should only be used if the template solely generates source code, |
| configuration file, or other content that's not read by normal users. If the template contains parts that's |
| read by normal users (like typical a web page), you are not supposed to use this.</li> |
| <li><code>"computer"</code>: The old (deprecated) name for <code>"c"</code>. Recognized by all FreeMarker versions.</li> |
| <li><code>"currency"</code>: The number format returned by <code>NumberFormat.getCurrencyInstance(Locale)</code></li> |
| <li><code>"percent"</code>: The number format returned by <code>NumberFormat.getPercentInstance(Locale)</code></li> |
| <li><code>DecimalFormat</code> pattern (like <code>"0.##"</code>). This syntax is extended by FreeMarker |
| so that you can specify options like the rounding mode and the symbols used after a 2nd semicolon. For |
| example, <code>",000;; roundingMode=halfUp groupingSeparator=_"</code> will format numbers like <code>",000"</code> |
| would, but with half-up rounding mode, and <code>_</code> as the group separator. See more about "extended Java |
| decimal format" in the FreeMarker Manual. |
| </li> |
| <li>If the string starts with <code>@</code> character followed by a letter then it's interpreted as a custom number |
| format, but only if either <a href="../../freemarker/template/Configuration.html#getIncompatibleImprovements--"><code>Configuration.getIncompatibleImprovements()</code></a> is at least 2.3.24, or |
| there's any custom formats defined (even if custom date/time/dateTime format). The format of a such string |
| is <code>"@<i>name</i>"</code> or <code>"@<i>name</i> <i>parameters</i>"</code>, where |
| <code><i>name</i></code> is the key in the <code>Map</code> set by <a href="../../freemarker/core/Configurable.html#setCustomNumberFormats-java.util.Map-"><code>Configurable.setCustomNumberFormats(Map)</code></a>, and |
| <code><i>parameters</i></code> is parsed by the custom <a href="../../freemarker/core/TemplateNumberFormat.html" title="class in freemarker.core"><code>TemplateNumberFormat</code></a>. |
| </li> |
| </ul> |
| |
| <p>Defaults to <tt>"number"</tt>.</div> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Overrides:</span></dt> |
| <dd><code><a href="../../freemarker/core/Configurable.html#setNumberFormat-java.lang.String-">setNumberFormat</a></code> in class <code><a href="../../freemarker/core/Configurable.html" title="class in freemarker.core">Configurable</a></code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getTemplateNumberFormat--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getTemplateNumberFormat</h4> |
| <pre>public <a href="../../freemarker/core/TemplateNumberFormat.html" title="class in freemarker.core">TemplateNumberFormat</a> getTemplateNumberFormat() |
| throws <a href="../../freemarker/core/TemplateValueFormatException.html" title="class in freemarker.core">TemplateValueFormatException</a></pre> |
| <div class="block">Returns the current number format (<a href="../../freemarker/core/Configurable.html#getNumberFormat--"><code>Configurable.getNumberFormat()</code></a>) as <a href="../../freemarker/core/TemplateNumberFormat.html" title="class in freemarker.core"><code>TemplateNumberFormat</code></a>. |
| |
| <p> |
| Performance notes: The result is stored for reuse, so calling this method frequently is usually not a problem. |
| However, at least as of this writing (2.3.24), changing the current locale <a href="../../freemarker/core/Environment.html#setLocale-java.util.Locale-"><code>setLocale(Locale)</code></a> or changing |
| the current number format (<a href="../../freemarker/core/Environment.html#setNumberFormat-java.lang.String-"><code>setNumberFormat(String)</code></a>) will drop the stored value, so it will have to be |
| recalculated.</div> |
| <dl> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="../../freemarker/core/TemplateValueFormatException.html" title="class in freemarker.core">TemplateValueFormatException</a></code></dd> |
| <dt><span class="simpleTagLabel">Since:</span></dt> |
| <dd>2.3.24</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getTemplateNumberFormat-java.lang.String-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getTemplateNumberFormat</h4> |
| <pre>public <a href="../../freemarker/core/TemplateNumberFormat.html" title="class in freemarker.core">TemplateNumberFormat</a> getTemplateNumberFormat(java.lang.String formatString) |
| throws <a href="../../freemarker/core/TemplateValueFormatException.html" title="class in freemarker.core">TemplateValueFormatException</a></pre> |
| <div class="block">Returns the number format as <a href="../../freemarker/core/TemplateNumberFormat.html" title="class in freemarker.core"><code>TemplateNumberFormat</code></a> for the given format string and the current locale. |
| (The current locale is the locale returned by <a href="../../freemarker/core/Configurable.html#getLocale--"><code>Configurable.getLocale()</code></a>.) Note that the result will be cached in the |
| <a href="../../freemarker/core/Environment.html" title="class in freemarker.core"><code>Environment</code></a> instance (though at least in 2.3.24 the cache will be flushed if the current locale of the |
| <a href="../../freemarker/core/Environment.html" title="class in freemarker.core"><code>Environment</code></a> is changed).</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>formatString</code> - A string that you could also use as the value of the <code>numberFormat</code> configuration setting. Can't |
| be <code>null</code>.</dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="../../freemarker/core/TemplateValueFormatException.html" title="class in freemarker.core">TemplateValueFormatException</a></code></dd> |
| <dt><span class="simpleTagLabel">Since:</span></dt> |
| <dd>2.3.24</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getTemplateNumberFormat-java.lang.String-java.util.Locale-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getTemplateNumberFormat</h4> |
| <pre>public <a href="../../freemarker/core/TemplateNumberFormat.html" title="class in freemarker.core">TemplateNumberFormat</a> getTemplateNumberFormat(java.lang.String formatString, |
| java.util.Locale locale) |
| throws <a href="../../freemarker/core/TemplateValueFormatException.html" title="class in freemarker.core">TemplateValueFormatException</a></pre> |
| <div class="block">Returns the number format as <a href="../../freemarker/core/TemplateNumberFormat.html" title="class in freemarker.core"><code>TemplateNumberFormat</code></a>, for the given format string and locale. To get a |
| number format for the current locale, use <a href="../../freemarker/core/Environment.html#getTemplateNumberFormat-java.lang.String-"><code>getTemplateNumberFormat(String)</code></a> instead. |
| |
| <p> |
| Note on performance (which was true at least for 2.3.24): Unless the locale happens to be equal to the current |
| locale, the <a href="../../freemarker/core/Environment.html" title="class in freemarker.core"><code>Environment</code></a>-level format cache can't be used, so the format string has to be parsed and the |
| matching factory has to be get an invoked, which is much more expensive than getting the format from the cache. |
| Thus the returned format should be stored by the caller for later reuse (but only within the current thread and |
| in relation to the current <a href="../../freemarker/core/Environment.html" title="class in freemarker.core"><code>Environment</code></a>), if it will be needed frequently.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>formatString</code> - A string that you could also use as the value of the <code>numberFormat</code> configuration setting.</dd> |
| <dd><code>locale</code> - The locale of the number format; not <code>null</code>.</dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="../../freemarker/core/TemplateValueFormatException.html" title="class in freemarker.core">TemplateValueFormatException</a></code></dd> |
| <dt><span class="simpleTagLabel">Since:</span></dt> |
| <dd>2.3.24</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getCNumberFormat--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getCNumberFormat</h4> |
| <pre>@Deprecated |
| public java.text.NumberFormat getCNumberFormat()</pre> |
| <div class="block"><span class="deprecatedLabel">Deprecated.</span> <span class="deprecationComment">Use <a href="../../freemarker/core/Environment.html#getCTemplateNumberFormat--"><code>getCTemplateNumberFormat()</code></a> instead. This method can't return the format used when |
| <a href="../../freemarker/template/Configuration.html#setIncompatibleImprovements-freemarker.template.Version-">Incompatible Improvements</a> is 2.3.32, |
| or greater, and instead it will fall back to return the format that was used for 2.3.31. Also, as its described |
| earlier, this method was inconsistent with <code>?c</code> between Incompatible Improvements 2.3.21 and 2.3.30, while |
| <a href="../../freemarker/core/Environment.html#getCTemplateNumberFormat--"><code>getCTemplateNumberFormat()</code></a> behaves as <code>?c</code> for all Incompatible Improvements value.</span></div> |
| <div class="block">Returns the <code>NumberFormat</code> used for the <tt>c</tt> built-in, except, if |
| <a href="../../freemarker/template/Configuration.html#setIncompatibleImprovements-freemarker.template.Version-">Incompatible Improvements</a> is less than 2.3.31, |
| this will wrongly give the format that the <tt>c</tt> built-in used before Incompatible Improvements 2.3.21. |
| See more at <a href="../../freemarker/template/Configuration.html#Configuration-freemarker.template.Version-"><code>Configuration.Configuration(Version)</code></a>.</div> |
| </li> |
| </ul> |
| <a name="getCTemplateNumberFormat--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getCTemplateNumberFormat</h4> |
| <pre>public <a href="../../freemarker/core/TemplateNumberFormat.html" title="class in freemarker.core">TemplateNumberFormat</a> getCTemplateNumberFormat()</pre> |
| <div class="block">Returns the <a href="../../freemarker/core/TemplateNumberFormat.html" title="class in freemarker.core"><code>TemplateNumberFormat</code></a> that <code>?c</code>/<code>?cn</code> uses. |
| Calling this method for many times is fine, as it internally caches the result object. |
| Remember that <a href="../../freemarker/core/TemplateNumberFormat.html" title="class in freemarker.core"><code>TemplateNumberFormat</code></a>-s aren't thread-safe objects, so the resulting object should only |
| be used in the same thread where this <a href="../../freemarker/core/Environment.html" title="class in freemarker.core"><code>Environment</code></a> runs.</div> |
| <dl> |
| <dt><span class="simpleTagLabel">Since:</span></dt> |
| <dd>2.3.32</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="setCFormat-freemarker.core.CFormat-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>setCFormat</h4> |
| <pre>public void setCFormat(<a href="../../freemarker/core/CFormat.html" title="class in freemarker.core">CFormat</a> cFormat)</pre> |
| <div class="block"><span class="descfrmTypeLabel">Description copied from class: <code><a href="../../freemarker/core/Configurable.html#setCFormat-freemarker.core.CFormat-">Configurable</a></code></span></div> |
| <div class="block">Sets the format (usually a computer language) used for <code>?c</code>, <code>?cn</code>, and for the |
| <code>"c"</code> (<code>"computer"</code> before 2.3.32) <a href="../../freemarker/core/Configurable.html#setNumberFormat-java.lang.String-"><code>number_format</code></a>, and the |
| <code>"c"</code> <a href="../../freemarker/core/Configurable.html#setBooleanFormat-java.lang.String-"><code>boolean_format</code></a>. |
| |
| <p>The default value depends on <a href="../../freemarker/template/Configuration.html#Configuration-freemarker.template.Version-"><code>incompatible_improvements</code></a>. |
| If that's 2.3.32 or higher, then it's <a href="../../freemarker/core/JavaScriptOrJSONCFormat.html#INSTANCE"><code>"JavaScript or JSON"</code></a>, |
| otherwise it's <a href="../../freemarker/core/LegacyCFormat.html#INSTANCE"><code>"legacy"</code></a>.</div> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Overrides:</span></dt> |
| <dd><code><a href="../../freemarker/core/Configurable.html#setCFormat-freemarker.core.CFormat-">setCFormat</a></code> in class <code><a href="../../freemarker/core/Configurable.html" title="class in freemarker.core">Configurable</a></code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="setTimeFormat-java.lang.String-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>setTimeFormat</h4> |
| <pre>public void setTimeFormat(java.lang.String timeFormat)</pre> |
| <div class="block"><span class="descfrmTypeLabel">Description copied from class: <code><a href="../../freemarker/core/Configurable.html#setTimeFormat-java.lang.String-">Configurable</a></code></span></div> |
| <div class="block">Sets the format used to convert <code>Date</code>-s that are time (no date part) values to string-s, also |
| the format that <code>someString?time</code> will use to parse strings. |
| |
| <p>For the possible values see <a href="../../freemarker/core/Configurable.html#setDateTimeFormat-java.lang.String-"><code>Configurable.setDateTimeFormat(String)</code></a>. |
| |
| <p>Defaults to <code>""</code>, which is equivalent to <code>"medium"</code>.</div> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Overrides:</span></dt> |
| <dd><code><a href="../../freemarker/core/Configurable.html#setTimeFormat-java.lang.String-">setTimeFormat</a></code> in class <code><a href="../../freemarker/core/Configurable.html" title="class in freemarker.core">Configurable</a></code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="setDateFormat-java.lang.String-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>setDateFormat</h4> |
| <pre>public void setDateFormat(java.lang.String dateFormat)</pre> |
| <div class="block"><span class="descfrmTypeLabel">Description copied from class: <code><a href="../../freemarker/core/Configurable.html#setDateFormat-java.lang.String-">Configurable</a></code></span></div> |
| <div class="block">Sets the format used to convert <code>Date</code>-s that are date-only (no time part) values to string-s, |
| also the format that <code>someString?date</code> will use to parse strings. |
| |
| <p>For the possible values see <a href="../../freemarker/core/Configurable.html#setDateTimeFormat-java.lang.String-"><code>Configurable.setDateTimeFormat(String)</code></a>. |
| |
| <p>Defaults to <code>""</code> which is equivalent to <code>"medium"</code>.</div> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Overrides:</span></dt> |
| <dd><code><a href="../../freemarker/core/Configurable.html#setDateFormat-java.lang.String-">setDateFormat</a></code> in class <code><a href="../../freemarker/core/Configurable.html" title="class in freemarker.core">Configurable</a></code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="setDateTimeFormat-java.lang.String-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>setDateTimeFormat</h4> |
| <pre>public void setDateTimeFormat(java.lang.String dateTimeFormat)</pre> |
| <div class="block"><span class="descfrmTypeLabel">Description copied from class: <code><a href="../../freemarker/core/Configurable.html#setDateTimeFormat-java.lang.String-">Configurable</a></code></span></div> |
| <div class="block">Sets the format used to convert <code>Date</code>-s that are date-time (timestamp) values to string-s, |
| also the format that <code>someString?datetime</code> will use to parse strings. |
| |
| <p>The possible setting values are (the quotation marks aren't part of the value itself): |
| |
| <ul> |
| <li><p>Patterns accepted by Java's <code>SimpleDateFormat</code>, for example <code>"dd.MM.yyyy HH:mm:ss"</code> (where |
| <code>HH</code> means 24 hours format) or <code>"MM/dd/yyyy hh:mm:ss a"</code> (where <code>a</code> prints AM or PM, if |
| the current language is English). |
| |
| <li><p><code>"xs"</code> for XML Schema format, or <code>"iso"</code> for ISO 8601:2004 format. |
| These formats allow various additional options, separated with space, like in |
| <code>"iso m nz"</code> (or with <code>_</code>, like in <code>"iso_m_nz"</code>; this is useful in a case like |
| <code>lastModified?string.iso_m_nz</code>). The options and their meanings are: |
| |
| <ul> |
| <li><p>Accuracy options:<br> |
| <code>ms</code> = Milliseconds, always shown with all 3 digits, even if it's all 0-s. |
| Example: <code>13:45:05.800</code><br> |
| <code>s</code> = Seconds (fraction seconds are dropped even if non-0), like <code>13:45:05</code><br> |
| <code>m</code> = Minutes, like <code>13:45</code>. This isn't allowed for "xs".<br> |
| <code>h</code> = Hours, like <code>13</code>. This isn't allowed for "xs".<br> |
| Neither = Up to millisecond accuracy, but trailing millisecond 0-s are removed, also the whole |
| milliseconds part if it would be 0 otherwise. Example: <code>13:45:05.8</code> |
| |
| <li><p>Time zone offset visibility options:<br> |
| <code>fz</code> = "Force Zone", always show time zone offset (even for for |
| <code>java.sql.Date</code> and <code>java.sql.Time</code> values). |
| But, because ISO 8601 doesn't allow for dates (means date without time of the day) to |
| show the zone offset, this option will have no effect in the case of <code>"iso"</code> with |
| dates.<br> |
| <code>nz</code> = "No Zone", never show time zone offset<br> |
| Neither = always show time zone offset, except for <code>java.sql.Date</code> |
| and <code>java.sql.Time</code>, and for <code>"iso"</code> date values. |
| |
| <li><p>Time zone options:<br> |
| <code>u</code> = Use UTC instead of what the <code>time_zone</code> setting suggests. However, |
| <code>java.sql.Date</code> and <code>java.sql.Time</code> aren't affected |
| by this (see <a href="../../freemarker/core/Configurable.html#setSQLDateAndTimeTimeZone-java.util.TimeZone-"><code>Configurable.setSQLDateAndTimeTimeZone(TimeZone)</code></a> to understand why)<br> |
| <code>fu</code> = "Force UTC", that is, use UTC instead of what the <code>time_zone</code> or the |
| <code>sql_date_and_time_time_zone</code> setting suggests. This also effects |
| <code>java.sql.Date</code> and <code>java.sql.Time</code> values<br> |
| Neither = Use the time zone suggested by the <code>time_zone</code> or the |
| <code>sql_date_and_time_time_zone</code> configuration setting (<a href="../../freemarker/core/Configurable.html#setTimeZone-java.util.TimeZone-"><code>Configurable.setTimeZone(TimeZone)</code></a> and |
| <a href="../../freemarker/core/Configurable.html#setSQLDateAndTimeTimeZone-java.util.TimeZone-"><code>Configurable.setSQLDateAndTimeTimeZone(TimeZone)</code></a>). |
| </ul> |
| |
| <p>The options can be specified in any order.</p> |
| |
| <p>Options from the same category are mutually exclusive, like using <code>m</code> and <code>s</code> |
| together is an error. |
| |
| <p>The accuracy and time zone offset visibility options don't influence parsing, only formatting. |
| For example, even if you use "iso m nz", "2012-01-01T15:30:05.125+01" will be parsed successfully and with |
| milliseconds accuracy. |
| The time zone options (like "u") influence what time zone is chosen only when parsing a string that doesn't |
| contain time zone offset. |
| |
| <p>Parsing with <code>"iso"</code> understands both extend format and basic format, like |
| <code>20141225T235018</code>. It doesn't, however, support the parsing of all kind of ISO 8601 strings: if |
| there's a date part, it must use year, month and day of the month values (not week of the year), and the |
| day can't be omitted. |
| |
| <p>The output of <code>"iso"</code> is deliberately so that it's also a good representation of the value with |
| XML Schema format, except for 0 and negative years, where it's impossible. Also note that the time zone |
| offset is omitted for date values in the <code>"iso"</code> format, while it's preserved for the <code>"xs"</code> |
| format. |
| |
| <li><p><code>"short"</code>, <code>"medium"</code>, <code>"long"</code>, or <code>"full"</code>, which that has locale-dependent |
| meaning defined by the Java platform (see in the documentation of <code>DateFormat</code>). |
| For date-time values, you can specify the length of the date and time part independently, be separating |
| them with <code>_</code>, like <code>"short_medium"</code>. (<code>"medium"</code> means |
| <code>"medium_medium"</code> for date-time values.) |
| |
| <li><p>Anything that starts with <code>"@"</code> followed by a letter is interpreted as a custom |
| date/time/dateTime format, but only if either <a href="../../freemarker/template/Configuration.html#getIncompatibleImprovements--"><code>Configuration.getIncompatibleImprovements()</code></a> |
| is at least 2.3.24, or there's any custom formats defined (even if custom number format). The format of |
| such string is <code>"@<i>name</i>"</code> or <code>"@<i>name</i> <i>parameters</i>"</code>, where |
| <code><i>name</i></code> is the key in the <code>Map</code> set by <a href="../../freemarker/core/Configurable.html#setCustomDateFormats-java.util.Map-"><code>Configurable.setCustomDateFormats(Map)</code></a>, and |
| <code><i>parameters</i></code> is parsed by the custom number format. |
| |
| </ul> |
| |
| <p>Defaults to <code>""</code>, which is equivalent to <code>"medium_medium"</code>.</div> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Overrides:</span></dt> |
| <dd><code><a href="../../freemarker/core/Configurable.html#setDateTimeFormat-java.lang.String-">setDateTimeFormat</a></code> in class <code><a href="../../freemarker/core/Configurable.html" title="class in freemarker.core">Configurable</a></code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="setBooleanFormat-java.lang.String-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>setBooleanFormat</h4> |
| <pre>public void setBooleanFormat(java.lang.String booleanFormat)</pre> |
| <div class="block"><span class="descfrmTypeLabel">Description copied from class: <code><a href="../../freemarker/core/Configurable.html#setBooleanFormat-java.lang.String-">Configurable</a></code></span></div> |
| <div class="block">The string value for the boolean <code>true</code> and <code>false</code> values, usually intended for human consumption |
| (not for a computer language), separated with comma. For example, <code>"yes,no"</code>. Note that white-space is |
| significant, so <code>"yes, no"</code> is WRONG (unless you want that leading space before "no"). Because the proper |
| way of formatting booleans depends on the context too much, it's probably the best to leave this setting on its |
| default, which will enforce explicit formatting, like <code>${aBoolean?string('on', 'off')}</code>. |
| |
| <p>For backward compatibility the default is <code>"true,false"</code>, but using that value is denied for automatic |
| boolean-to-string conversion, like <code>${myBoolean}</code> will fail with it. If you generate the piece of |
| output for "computer audience" as opposed to "human audience", then you should write |
| <code>${myBoolean?c}</code>, which will print <code>true</code> or <code>false</code>. If you really want to always |
| format for computer audience, then it's might be reasonable to set this setting to <code>c</code>. |
| |
| <p>Note that automatic boolean-to-string conversion only exists since FreeMarker 2.3.20. Earlier this setting |
| only influenced the result of <code>myBool?string</code>.</div> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Overrides:</span></dt> |
| <dd><code><a href="../../freemarker/core/Configurable.html#setBooleanFormat-java.lang.String-">setBooleanFormat</a></code> in class <code><a href="../../freemarker/core/Configurable.html" title="class in freemarker.core">Configurable</a></code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getConfiguration--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getConfiguration</h4> |
| <pre>public <a href="../../freemarker/template/Configuration.html" title="class in freemarker.template">Configuration</a> getConfiguration()</pre> |
| </li> |
| </ul> |
| <a name="getTemplateDateFormat-int-java.lang.Class-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getTemplateDateFormat</h4> |
| <pre>public <a href="../../freemarker/core/TemplateDateFormat.html" title="class in freemarker.core">TemplateDateFormat</a> getTemplateDateFormat(int dateType, |
| java.lang.Class<? extends java.util.Date> dateClass) |
| throws <a href="../../freemarker/core/TemplateValueFormatException.html" title="class in freemarker.core">TemplateValueFormatException</a></pre> |
| <div class="block">Gets a <a href="../../freemarker/core/TemplateDateFormat.html" title="class in freemarker.core"><code>TemplateDateFormat</code></a> using the date/time/datetime format settings and the current locale and time |
| zone. (The current locale is the locale returned by <a href="../../freemarker/core/Configurable.html#getLocale--"><code>Configurable.getLocale()</code></a>. The current time zone is |
| <a href="../../freemarker/core/Configurable.html#getTimeZone--"><code>Configurable.getTimeZone()</code></a> or <a href="../../freemarker/core/Configurable.html#getSQLDateAndTimeTimeZone--"><code>Configurable.getSQLDateAndTimeTimeZone()</code></a>).</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>dateType</code> - The FTL date type; see the similar parameter of |
| <a href="../../freemarker/core/TemplateDateFormatFactory.html#get-java.lang.String-int-java.util.Locale-java.util.TimeZone-boolean-freemarker.core.Environment-"><code>TemplateDateFormatFactory.get(String, int, Locale, TimeZone, boolean, Environment)</code></a></dd> |
| <dd><code>dateClass</code> - The exact <code>Date</code> class, like <code>Date</code> or <code>Time</code>; this can influences |
| time zone selection. See also: <a href="../../freemarker/core/Environment.html#setSQLDateAndTimeTimeZone-java.util.TimeZone-"><code>setSQLDateAndTimeTimeZone(TimeZone)</code></a></dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="../../freemarker/core/TemplateValueFormatException.html" title="class in freemarker.core">TemplateValueFormatException</a></code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getTemplateDateFormat-java.lang.String-int-java.lang.Class-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getTemplateDateFormat</h4> |
| <pre>public <a href="../../freemarker/core/TemplateDateFormat.html" title="class in freemarker.core">TemplateDateFormat</a> getTemplateDateFormat(java.lang.String formatString, |
| int dateType, |
| java.lang.Class<? extends java.util.Date> dateClass) |
| throws <a href="../../freemarker/core/TemplateValueFormatException.html" title="class in freemarker.core">TemplateValueFormatException</a></pre> |
| <div class="block">Gets a <a href="../../freemarker/core/TemplateDateFormat.html" title="class in freemarker.core"><code>TemplateDateFormat</code></a> for the specified format string and the current locale and time zone. (The |
| current locale is the locale returned by <a href="../../freemarker/core/Configurable.html#getLocale--"><code>Configurable.getLocale()</code></a>. The current time zone is <a href="../../freemarker/core/Configurable.html#getTimeZone--"><code>Configurable.getTimeZone()</code></a> or |
| <a href="../../freemarker/core/Configurable.html#getSQLDateAndTimeTimeZone--"><code>Configurable.getSQLDateAndTimeTimeZone()</code></a>). |
| |
| <p> |
| Note on performance: The result will be cached in the <a href="../../freemarker/core/Environment.html" title="class in freemarker.core"><code>Environment</code></a> instance. However, at least in 2.3.24 |
| the cached entries that depend on the current locale or the current time zone or the current date/time/datetime |
| format of the <a href="../../freemarker/core/Environment.html" title="class in freemarker.core"><code>Environment</code></a> will be lost when those settings are changed.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>formatString</code> - Like <code>"iso m"</code> or <code>"dd.MM.yyyy HH:mm"</code> or <code>"@somethingCustom"</code> or |
| <code>"@somethingCustom params"</code></dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="../../freemarker/core/TemplateValueFormatException.html" title="class in freemarker.core">TemplateValueFormatException</a></code></dd> |
| <dt><span class="simpleTagLabel">Since:</span></dt> |
| <dd>2.3.24</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getTemplateDateFormat-java.lang.String-int-java.lang.Class-java.util.Locale-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getTemplateDateFormat</h4> |
| <pre>public <a href="../../freemarker/core/TemplateDateFormat.html" title="class in freemarker.core">TemplateDateFormat</a> getTemplateDateFormat(java.lang.String formatString, |
| int dateType, |
| java.lang.Class<? extends java.util.Date> dateClass, |
| java.util.Locale locale) |
| throws <a href="../../freemarker/core/TemplateValueFormatException.html" title="class in freemarker.core">TemplateValueFormatException</a></pre> |
| <div class="block">Like <a href="../../freemarker/core/Environment.html#getTemplateDateFormat-java.lang.String-int-java.lang.Class-"><code>getTemplateDateFormat(String, int, Class)</code></a>, but allows you to use a different locale than the |
| current one. If you want to use the current locale, use <a href="../../freemarker/core/Environment.html#getTemplateDateFormat-java.lang.String-int-java.lang.Class-"><code>getTemplateDateFormat(String, int, Class)</code></a> |
| instead. |
| |
| <p> |
| Performance notes regarding the locale and time zone parameters of |
| <a href="../../freemarker/core/Environment.html#getTemplateDateFormat-java.lang.String-int-java.util.Locale-java.util.TimeZone-boolean-"><code>getTemplateDateFormat(String, int, Locale, TimeZone, boolean)</code></a> apply.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>locale</code> - Can't be <code>null</code>; See the similar parameter of |
| <a href="../../freemarker/core/TemplateDateFormatFactory.html#get-java.lang.String-int-java.util.Locale-java.util.TimeZone-boolean-freemarker.core.Environment-"><code>TemplateDateFormatFactory.get(String, int, Locale, TimeZone, boolean, Environment)</code></a></dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="../../freemarker/core/TemplateValueFormatException.html" title="class in freemarker.core">TemplateValueFormatException</a></code></dd> |
| <dt><span class="simpleTagLabel">Since:</span></dt> |
| <dd>2.4</dd> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="../../freemarker/core/Environment.html#getTemplateDateFormat-java.lang.String-int-java.lang.Class-"><code>getTemplateDateFormat(String, int, Class)</code></a></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getTemplateDateFormat-java.lang.String-int-java.lang.Class-java.util.Locale-java.util.TimeZone-java.util.TimeZone-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getTemplateDateFormat</h4> |
| <pre>public <a href="../../freemarker/core/TemplateDateFormat.html" title="class in freemarker.core">TemplateDateFormat</a> getTemplateDateFormat(java.lang.String formatString, |
| int dateType, |
| java.lang.Class<? extends java.util.Date> dateClass, |
| java.util.Locale locale, |
| java.util.TimeZone timeZone, |
| java.util.TimeZone sqlDateAndTimeTimeZone) |
| throws <a href="../../freemarker/core/TemplateValueFormatException.html" title="class in freemarker.core">TemplateValueFormatException</a></pre> |
| <div class="block">Like <a href="../../freemarker/core/Environment.html#getTemplateDateFormat-java.lang.String-int-java.lang.Class-"><code>getTemplateDateFormat(String, int, Class)</code></a>, but allows you to use a different locale and time zone |
| than the current one. If you want to use the current locale and time zone, use |
| <a href="../../freemarker/core/Environment.html#getTemplateDateFormat-java.lang.String-int-java.lang.Class-"><code>getTemplateDateFormat(String, int, Class)</code></a> instead. |
| |
| <p> |
| Performance notes regarding the locale and time zone parameters of |
| <a href="../../freemarker/core/Environment.html#getTemplateDateFormat-java.lang.String-int-java.util.Locale-java.util.TimeZone-boolean-"><code>getTemplateDateFormat(String, int, Locale, TimeZone, boolean)</code></a> apply.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>timeZone</code> - The <code>TimeZone</code> used if <code>dateClass</code> is not an SQL date-only or time-only type. Can't be |
| <code>null</code>.</dd> |
| <dd><code>sqlDateAndTimeTimeZone</code> - The <code>TimeZone</code> used if <code>dateClass</code> is an SQL date-only or time-only type. Can't be |
| <code>null</code>.</dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="../../freemarker/core/TemplateValueFormatException.html" title="class in freemarker.core">TemplateValueFormatException</a></code></dd> |
| <dt><span class="simpleTagLabel">Since:</span></dt> |
| <dd>2.4</dd> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="../../freemarker/core/Environment.html#getTemplateDateFormat-java.lang.String-int-java.lang.Class-"><code>getTemplateDateFormat(String, int, Class)</code></a></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getTemplateDateFormat-java.lang.String-int-java.util.Locale-java.util.TimeZone-boolean-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getTemplateDateFormat</h4> |
| <pre>public <a href="../../freemarker/core/TemplateDateFormat.html" title="class in freemarker.core">TemplateDateFormat</a> getTemplateDateFormat(java.lang.String formatString, |
| int dateType, |
| java.util.Locale locale, |
| java.util.TimeZone timeZone, |
| boolean zonelessInput) |
| throws <a href="../../freemarker/core/TemplateValueFormatException.html" title="class in freemarker.core">TemplateValueFormatException</a></pre> |
| <div class="block">Gets a <a href="../../freemarker/core/TemplateDateFormat.html" title="class in freemarker.core"><code>TemplateDateFormat</code></a> for the specified parameters. This is mostly meant to be used by |
| <a href="../../freemarker/core/TemplateDateFormatFactory.html" title="class in freemarker.core"><code>TemplateDateFormatFactory</code></a> implementations to delegate to a format based on a specific format string. It |
| works well for that, as its parameters are the same low level values as the parameters of |
| <a href="../../freemarker/core/TemplateDateFormatFactory.html#get-java.lang.String-int-java.util.Locale-java.util.TimeZone-boolean-freemarker.core.Environment-"><code>TemplateDateFormatFactory.get(String, int, Locale, TimeZone, boolean, Environment)</code></a>. For other tasks |
| consider the other overloads of this method. |
| |
| <p> |
| Note on performance (which was true at least for 2.3.24): Unless the locale happens to be equal to the current |
| locale and the time zone with one of the current time zones (<a href="../../freemarker/core/Configurable.html#getTimeZone--"><code>Configurable.getTimeZone()</code></a> or |
| <a href="../../freemarker/core/Configurable.html#getSQLDateAndTimeTimeZone--"><code>Configurable.getSQLDateAndTimeTimeZone()</code></a>), the <a href="../../freemarker/core/Environment.html" title="class in freemarker.core"><code>Environment</code></a>-level format cache can't be used, so the format |
| string has to be parsed and the matching factory has to be get an invoked, which is much more expensive than |
| getting the format from the cache. Thus the returned format should be stored by the caller for later reuse (but |
| only within the current thread and in relation to the current <a href="../../freemarker/core/Environment.html" title="class in freemarker.core"><code>Environment</code></a>), if it will be needed |
| frequently.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>formatString</code> - Like <code>"iso m"</code> or <code>"dd.MM.yyyy HH:mm"</code> or <code>"@somethingCustom"</code> or |
| <code>"@somethingCustom params"</code></dd> |
| <dd><code>dateType</code> - The FTL date type; see the similar parameter of |
| <a href="../../freemarker/core/TemplateDateFormatFactory.html#get-java.lang.String-int-java.util.Locale-java.util.TimeZone-boolean-freemarker.core.Environment-"><code>TemplateDateFormatFactory.get(String, int, Locale, TimeZone, boolean, Environment)</code></a></dd> |
| <dd><code>timeZone</code> - Not <code>null</code>; See the similar parameter of |
| <a href="../../freemarker/core/TemplateDateFormatFactory.html#get-java.lang.String-int-java.util.Locale-java.util.TimeZone-boolean-freemarker.core.Environment-"><code>TemplateDateFormatFactory.get(String, int, Locale, TimeZone, boolean, Environment)</code></a></dd> |
| <dd><code>locale</code> - Not <code>null</code>; See the similar parameter of |
| <a href="../../freemarker/core/TemplateDateFormatFactory.html#get-java.lang.String-int-java.util.Locale-java.util.TimeZone-boolean-freemarker.core.Environment-"><code>TemplateDateFormatFactory.get(String, int, Locale, TimeZone, boolean, Environment)</code></a></dd> |
| <dd><code>zonelessInput</code> - See the similar parameter of |
| <a href="../../freemarker/core/TemplateDateFormatFactory.html#get-java.lang.String-int-java.util.Locale-java.util.TimeZone-boolean-freemarker.core.Environment-"><code>TemplateDateFormatFactory.get(String, int, Locale, TimeZone, boolean, Environment)</code></a></dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="../../freemarker/core/TemplateValueFormatException.html" title="class in freemarker.core">TemplateValueFormatException</a></code></dd> |
| <dt><span class="simpleTagLabel">Since:</span></dt> |
| <dd>2.3.24</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getLocalVariable-java.lang.String-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getLocalVariable</h4> |
| <pre>public <a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template">TemplateModel</a> getLocalVariable(java.lang.String name) |
| throws <a href="../../freemarker/template/TemplateModelException.html" title="class in freemarker.template">TemplateModelException</a></pre> |
| <div class="block">Returns the loop or macro local variable corresponding to this variable name. |
| Returns <code>null</code> if no such variable exists with the given name, or the variable was set to |
| <code>null</code>. Doesn't read namespace or global variables.</div> |
| <dl> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="../../freemarker/template/TemplateModelException.html" title="class in freemarker.template">TemplateModelException</a></code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getVariable-java.lang.String-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getVariable</h4> |
| <pre>public <a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template">TemplateModel</a> getVariable(java.lang.String name) |
| throws <a href="../../freemarker/template/TemplateModelException.html" title="class in freemarker.template">TemplateModelException</a></pre> |
| <div class="block">Returns the variable that is visible in this context, or <code>null</code> if the variable is not found. This is the |
| correspondent to an FTL top-level variable reading expression. That is, it tries to find the the variable in this |
| order: |
| <ol> |
| <li>An loop variable (if we're in a loop or user defined directive body) such as foo_has_next |
| <li>A local variable (if we're in a macro) |
| <li>A variable defined in the current namespace (say, via <#assign ...>) |
| <li>A variable defined globally (say, via <#global ....>) |
| <li>Variable in the data model: |
| <ol> |
| <li>A variable in the root hash that was exposed to this rendering environment in the Template.process(...) call |
| <li>A shared variable set in the configuration via a call to Configuration.setSharedVariable(...) |
| </ol> |
| </li> |
| </ol></div> |
| <dl> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="../../freemarker/template/TemplateModelException.html" title="class in freemarker.template">TemplateModelException</a></code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getGlobalVariable-java.lang.String-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getGlobalVariable</h4> |
| <pre>public <a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template">TemplateModel</a> getGlobalVariable(java.lang.String name) |
| throws <a href="../../freemarker/template/TemplateModelException.html" title="class in freemarker.template">TemplateModelException</a></pre> |
| <div class="block">Returns the globally visible variable of the given name, or <code>null</code>. This corresponds to FTL |
| <code>.globals.<i>name</i></code>. This will first look at variables that were assigned globally via: |
| <code><#global ...></code> and then at the data model exposed to the template, and then at the |
| <a href="../../freemarker/template/Configuration.html#setSharedVariables-java.util.Map-">Configuration.setSharedVariables(Map)</a> shared variables} in the <a href="../../freemarker/template/Configuration.html" title="class in freemarker.template"><code>Configuration</code></a>.</div> |
| <dl> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="../../freemarker/template/TemplateModelException.html" title="class in freemarker.template">TemplateModelException</a></code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getDataModelOrSharedVariable-java.lang.String-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getDataModelOrSharedVariable</h4> |
| <pre>public <a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template">TemplateModel</a> getDataModelOrSharedVariable(java.lang.String name) |
| throws <a href="../../freemarker/template/TemplateModelException.html" title="class in freemarker.template">TemplateModelException</a></pre> |
| <div class="block">Returns the variable from the data-model, or if it's not there, then from the |
| <a href="../../freemarker/template/Configuration.html#setSharedVariables-java.util.Map-">Configuration.setSharedVariables(Map)</a> shared variables}</div> |
| <dl> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="../../freemarker/template/TemplateModelException.html" title="class in freemarker.template">TemplateModelException</a></code></dd> |
| <dt><span class="simpleTagLabel">Since:</span></dt> |
| <dd>2.3.30</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="setGlobalVariable-java.lang.String-freemarker.template.TemplateModel-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>setGlobalVariable</h4> |
| <pre>public void setGlobalVariable(java.lang.String name, |
| <a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template">TemplateModel</a> value)</pre> |
| <div class="block">Sets a variable in the global namespace, like <code><#global name=value></code>. |
| This can be considered a convenient shorthand for <code>getGlobalNamespace().put(name, model)</code>. |
| |
| <p>Note that this is not an exact pair of <a href="../../freemarker/core/Environment.html#getGlobalVariable-java.lang.String-"><code>getGlobalVariable(String)</code></a>, as that falls back to higher scopes |
| if the variable is not in the global namespace.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>name</code> - The name of the variable.</dd> |
| <dd><code>value</code> - The new value of the variable. <code>null</code> in effect removes the local variable (reading it will fall |
| back to higher scope).</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="setVariable-java.lang.String-freemarker.template.TemplateModel-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>setVariable</h4> |
| <pre>public void setVariable(java.lang.String name, |
| <a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template">TemplateModel</a> value)</pre> |
| <div class="block">Sets a variable in the current namespace, like <code><#assign name=value></code>. |
| This can be considered a convenient shorthand for: <code>getCurrentNamespace().put(name, model)</code>.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>name</code> - The name of the variable.</dd> |
| <dd><code>value</code> - The new value of the variable. <code>null</code> in effect removes the local variable (reading it will fall |
| back to higher scope).</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="setLocalVariable-java.lang.String-freemarker.template.TemplateModel-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>setLocalVariable</h4> |
| <pre>public void setLocalVariable(java.lang.String name, |
| <a href="../../freemarker/template/TemplateModel.html" title="interface in freemarker.template">TemplateModel</a> value)</pre> |
| <div class="block">Sets a local variable that's on the top-level inside a macro or function invocation, like |
| <code><#local name=value></code>. |
| Note that just like <code><#local name=value></code>, this will not set loop variables; it will totally ignore |
| them, and might sets a local variable that a loop variable currently "shadows". As such, it's not exactly the |
| pair of <a href="../../freemarker/core/Environment.html#getLocalVariable-java.lang.String-"><code>getLocalVariable(String)</code></a>, which also reads loop variables.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>name</code> - The name of the variable.</dd> |
| <dd><code>value</code> - The new value of the variable. <code>null</code> in effect removes the local variable (reading it will fall |
| back to higher scope).</dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code>java.lang.IllegalStateException</code> - if the environment is not executing a macro body.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getKnownVariableNames--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getKnownVariableNames</h4> |
| <pre>public java.util.Set getKnownVariableNames() |
| throws <a href="../../freemarker/template/TemplateModelException.html" title="class in freemarker.template">TemplateModelException</a></pre> |
| <div class="block">Returns a set of variable names that are known at the time of call. This includes names of all shared variables |
| in the <a href="../../freemarker/template/Configuration.html" title="class in freemarker.template"><code>Configuration</code></a>, names of all global variables that were assigned during the template processing, |
| names of all variables in the current name-space, names of all local variables and loop variables. If the passed |
| root data model implements the <a href="../../freemarker/template/TemplateHashModelEx.html" title="interface in freemarker.template"><code>TemplateHashModelEx</code></a> interface, then all names it retrieves through a call |
| to <a href="../../freemarker/template/TemplateHashModelEx.html#keys--"><code>TemplateHashModelEx.keys()</code></a> method are returned as well. The method returns a new Set object on each |
| call that is completely disconnected from the Environment. That is, modifying the set will have no effect on the |
| Environment object.</div> |
| <dl> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="../../freemarker/template/TemplateModelException.html" title="class in freemarker.template">TemplateModelException</a></code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="outputInstructionStack-java.io.PrintWriter-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>outputInstructionStack</h4> |
| <pre>public void outputInstructionStack(java.io.PrintWriter pw)</pre> |
| <div class="block">Prints the current FTL stack trace. Useful for debugging. <a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template"><code>TemplateException</code></a>s incorporate this information |
| in their stack traces.</div> |
| </li> |
| </ul> |
| <a name="getNamespace-java.lang.String-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getNamespace</h4> |
| <pre>public <a href="../../freemarker/core/Environment.Namespace.html" title="class in freemarker.core">Environment.Namespace</a> getNamespace(java.lang.String name)</pre> |
| <div class="block">Returns the name-space for the name if exists, or null.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>name</code> - the template path that you have used with the <code>import</code> directive or |
| <a href="../../freemarker/core/Environment.html#importLib-java.lang.String-java.lang.String-"><code>importLib(String, String)</code></a> call, in normalized form. That is, the path must be an absolute |
| path, and it must not contain "/../" or "/./". The leading "/" is optional.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getMainNamespace--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getMainNamespace</h4> |
| <pre>public <a href="../../freemarker/core/Environment.Namespace.html" title="class in freemarker.core">Environment.Namespace</a> getMainNamespace()</pre> |
| <div class="block">Returns the main namespace. This corresponds to the FTL <code>.main</code> hash.</div> |
| </li> |
| </ul> |
| <a name="getCurrentNamespace--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getCurrentNamespace</h4> |
| <pre>public <a href="../../freemarker/core/Environment.Namespace.html" title="class in freemarker.core">Environment.Namespace</a> getCurrentNamespace()</pre> |
| <div class="block">Returns the current namespace. This corresponds to the FTL <code>.namespace</code> hash. Initially, the current name |
| space is the main namespace, but when inside an <code>#import</code>-ed template, it will change to the namespace of |
| that import. Note that <code>#include</code> doesn't affect the namespace, so if you are in an <code>#import</code>-ed |
| template and then from there do an <code>#include</code>, the current namespace will remain the namespace of the |
| <code>#import</code>.</div> |
| </li> |
| </ul> |
| <a name="getGlobalNamespace--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getGlobalNamespace</h4> |
| <pre>public <a href="../../freemarker/core/Environment.Namespace.html" title="class in freemarker.core">Environment.Namespace</a> getGlobalNamespace()</pre> |
| <div class="block">Returns the name-space that contains the globally visible non-data-model variables (usually created with |
| <code>&lt;#global ...&gt;</code>).</div> |
| </li> |
| </ul> |
| <a name="getDataModel--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getDataModel</h4> |
| <pre>public <a href="../../freemarker/template/TemplateHashModel.html" title="interface in freemarker.template">TemplateHashModel</a> getDataModel()</pre> |
| <div class="block">Returns a view of the data-model (also known as the template context in some other template engines) |
| that falls back to <a href="../../freemarker/template/Configuration.html#setSharedVariable-java.lang.String-freemarker.template.TemplateModel-">shared variables</a>.</div> |
| </li> |
| </ul> |
| <a name="getGlobalVariables--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getGlobalVariables</h4> |
| <pre>public <a href="../../freemarker/template/TemplateHashModel.html" title="interface in freemarker.template">TemplateHashModel</a> getGlobalVariables()</pre> |
| <div class="block">Returns the read-only hash of globally visible variables. This is the correspondent of FTL <code>.globals</code> |
| hash. That is, you see the variables created with <code><#global ...></code>, and the variables of the |
| data-model. To create new global variables, use <a href="../../freemarker/core/Environment.html#setGlobalVariable-java.lang.String-freemarker.template.TemplateModel-"><code>setGlobalVariable</code></a>.</div> |
| </li> |
| </ul> |
| <a name="getCurrentVisitorNode--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getCurrentVisitorNode</h4> |
| <pre>public <a href="../../freemarker/template/TemplateNodeModel.html" title="interface in freemarker.template">TemplateNodeModel</a> getCurrentVisitorNode()</pre> |
| </li> |
| </ul> |
| <a name="setCurrentVisitorNode-freemarker.template.TemplateNodeModel-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>setCurrentVisitorNode</h4> |
| <pre>public void setCurrentVisitorNode(<a href="../../freemarker/template/TemplateNodeModel.html" title="interface in freemarker.template">TemplateNodeModel</a> node)</pre> |
| <div class="block">sets TemplateNodeModel as the current visitor node. <tt>.current_node</tt></div> |
| </li> |
| </ul> |
| <a name="include-java.lang.String-java.lang.String-boolean-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>include</h4> |
| <pre>public void include(java.lang.String name, |
| java.lang.String encoding, |
| boolean parse) |
| throws java.io.IOException, |
| <a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template">TemplateException</a></pre> |
| <div class="block">Emulates <code>include</code> directive, except that <code>name</code> must be template root relative. |
| |
| <p> |
| It's the same as <code>include(getTemplateForInclusion(name, encoding, parse))</code>. But, you may want to |
| separately call these two methods, so you can determine the source of exceptions more precisely, and thus achieve |
| more intelligent error handling.</div> |
| <dl> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code>java.io.IOException</code></dd> |
| <dd><code><a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template">TemplateException</a></code></dd> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="../../freemarker/core/Environment.html#getTemplateForInclusion-java.lang.String-java.lang.String-boolean-"><code>getTemplateForInclusion(String name, String encoding, boolean parse)</code></a>, |
| <a href="../../freemarker/core/Environment.html#include-freemarker.template.Template-"><code>include(Template includedTemplate)</code></a></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getTemplateForInclusion-java.lang.String-java.lang.String-boolean-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getTemplateForInclusion</h4> |
| <pre>public <a href="../../freemarker/template/Template.html" title="class in freemarker.template">Template</a> getTemplateForInclusion(java.lang.String name, |
| java.lang.String encoding, |
| boolean parse) |
| throws java.io.IOException</pre> |
| <div class="block">Same as <a href="../../freemarker/core/Environment.html#getTemplateForInclusion-java.lang.String-java.lang.String-boolean-boolean-"><code>getTemplateForInclusion(String, String, boolean, boolean)</code></a> with <code>false</code> |
| <code>ignoreMissing</code> argument.</div> |
| <dl> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code>java.io.IOException</code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getTemplateForInclusion-java.lang.String-java.lang.String-boolean-boolean-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getTemplateForInclusion</h4> |
| <pre>public <a href="../../freemarker/template/Template.html" title="class in freemarker.template">Template</a> getTemplateForInclusion(java.lang.String name, |
| java.lang.String encoding, |
| boolean parseAsFTL, |
| boolean ignoreMissing) |
| throws java.io.IOException</pre> |
| <div class="block">Gets a template for inclusion; used for implementing <a href="../../freemarker/core/Environment.html#include-freemarker.template.Template-"><code>include(Template includedTemplate)</code></a>. The advantage |
| over simply using <code>config.getTemplate(...)</code> is that it chooses the default encoding exactly as the |
| <code>include</code> directive does, although that encoding selection mechanism is a historical baggage and |
| considered to be harmful.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>name</code> - the name of the template, relatively to the template root directory (not the to the directory of the |
| currently executing template file). (Note that you can use |
| <a href="../../freemarker/cache/TemplateCache.html#getFullTemplatePath-freemarker.core.Environment-java.lang.String-java.lang.String-"><code>TemplateCache.getFullTemplatePath(freemarker.core.Environment, java.lang.String, java.lang.String)</code></a> to convert paths to template root relative |
| paths.) For more details see the identical parameter of |
| <a href="../../freemarker/template/Configuration.html#getTemplate-java.lang.String-java.util.Locale-java.lang.String-boolean-boolean-"><code>Configuration.getTemplate(String, Locale, String, boolean, boolean)</code></a></dd> |
| <dd><code>encoding</code> - the charset of the obtained template. If <code>null</code>, the encoding of the top template that is |
| currently being processed in this <a href="../../freemarker/core/Environment.html" title="class in freemarker.core"><code>Environment</code></a> is used, which can lead to odd situations, so |
| using <code>null</code> is not recommended. In most applications, the value of |
| <a href="../../freemarker/template/Configuration.html#getEncoding-java.util.Locale-"><code>Configuration.getEncoding(Locale)</code></a> (or <a href="../../freemarker/template/Configuration.html#getDefaultEncoding--"><code>Configuration.getDefaultEncoding()</code></a>) should be |
| used here.</dd> |
| <dd><code>parseAsFTL</code> - See identical parameter of <a href="../../freemarker/template/Configuration.html#getTemplate-java.lang.String-java.util.Locale-java.lang.String-boolean-boolean-"><code>Configuration.getTemplate(String, Locale, String, boolean, boolean)</code></a></dd> |
| <dd><code>ignoreMissing</code> - See identical parameter of <a href="../../freemarker/template/Configuration.html#getTemplate-java.lang.String-java.util.Locale-java.lang.String-boolean-boolean-"><code>Configuration.getTemplate(String, Locale, String, boolean, boolean)</code></a></dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>Same as <a href="../../freemarker/template/Configuration.html#getTemplate-java.lang.String-java.util.Locale-java.lang.String-boolean-boolean-"><code>Configuration.getTemplate(String, Locale, String, boolean, boolean)</code></a></dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code>java.io.IOException</code> - Same as exceptions thrown by |
| <a href="../../freemarker/template/Configuration.html#getTemplate-java.lang.String-java.util.Locale-java.lang.String-boolean-boolean-"><code>Configuration.getTemplate(String, Locale, String, boolean, boolean)</code></a></dd> |
| <dt><span class="simpleTagLabel">Since:</span></dt> |
| <dd>2.3.21</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="include-freemarker.template.Template-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>include</h4> |
| <pre>public void include(<a href="../../freemarker/template/Template.html" title="class in freemarker.template">Template</a> includedTemplate) |
| throws <a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template">TemplateException</a>, |
| java.io.IOException</pre> |
| <div class="block">Processes a Template in the context of this <code>Environment</code>, including its output in the |
| <code>Environment</code>'s Writer.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>includedTemplate</code> - the template to process. Note that it does <em>not</em> need to be a template returned by |
| <a href="../../freemarker/core/Environment.html#getTemplateForInclusion-java.lang.String-java.lang.String-boolean-"><code>getTemplateForInclusion(String name, String encoding, boolean parse)</code></a>.</dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template">TemplateException</a></code></dd> |
| <dd><code>java.io.IOException</code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="importLib-java.lang.String-java.lang.String-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>importLib</h4> |
| <pre>public <a href="../../freemarker/core/Environment.Namespace.html" title="class in freemarker.core">Environment.Namespace</a> importLib(java.lang.String templateName, |
| java.lang.String targetNsVarName) |
| throws java.io.IOException, |
| <a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template">TemplateException</a></pre> |
| <div class="block">Emulates <code>import</code> directive, except that <code>templateName</code> must be template root relative. |
| |
| <p> |
| It's the same as <code>importLib(getTemplateForImporting(templateName), namespace)</code>. But, you may want to |
| separately call these two methods, so you can determine the source of exceptions more precisely, and thus achieve |
| more intelligent error handling. |
| |
| <p> |
| If it will be a lazy or an eager import is decided by the value of <a href="../../freemarker/core/Configurable.html#getLazyImports--"><code>Configurable.getLazyImports()</code></a>. You |
| can also directly control that aspect by using <a href="../../freemarker/core/Environment.html#importLib-java.lang.String-java.lang.String-boolean-"><code>importLib(String, String, boolean)</code></a> instead.</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>Not <code>null</code>. This is possibly a lazily self-initializing namespace, which means that it will only |
| try to get and process the imported template when you access its content.</dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code>java.io.IOException</code></dd> |
| <dd><code><a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template">TemplateException</a></code></dd> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="../../freemarker/core/Environment.html#getTemplateForImporting-java.lang.String-"><code>getTemplateForImporting(String templateName)</code></a>, |
| <a href="../../freemarker/core/Environment.html#importLib-freemarker.template.Template-java.lang.String-"><code>importLib(Template includedTemplate, String namespaceVarName)</code></a>, |
| <a href="../../freemarker/core/Environment.html#importLib-java.lang.String-java.lang.String-boolean-"><code>importLib(String, String, boolean)</code></a></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="importLib-freemarker.template.Template-java.lang.String-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>importLib</h4> |
| <pre>public <a href="../../freemarker/core/Environment.Namespace.html" title="class in freemarker.core">Environment.Namespace</a> importLib(<a href="../../freemarker/template/Template.html" title="class in freemarker.template">Template</a> loadedTemplate, |
| java.lang.String targetNsVarName) |
| throws java.io.IOException, |
| <a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template">TemplateException</a></pre> |
| <div class="block">Does what the <code>#import</code> directive does, but with an already loaded template.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>loadedTemplate</code> - The template to import. Note that it does <em>not</em> need to be a template returned by |
| <a href="../../freemarker/core/Environment.html#getTemplateForImporting-java.lang.String-"><code>getTemplateForImporting(String name)</code></a>. Not <code>null</code>.</dd> |
| <dd><code>targetNsVarName</code> - The name of the FTL variable that will store the namespace. If <code>null</code>, the namespace |
| won't be stored in a variable (but it's still returned).</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>The namespace of the imported template, already initialized.</dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code>java.io.IOException</code></dd> |
| <dd><code><a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template">TemplateException</a></code></dd> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="../../freemarker/core/Environment.html#getTemplateForImporting-java.lang.String-"><code>getTemplateForImporting(String name)</code></a>, |
| <a href="../../freemarker/core/Environment.html#importLib-freemarker.template.Template-java.lang.String-"><code>importLib(Template includedTemplate, String namespaceVarName)</code></a></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="importLib-java.lang.String-java.lang.String-boolean-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>importLib</h4> |
| <pre>public <a href="../../freemarker/core/Environment.Namespace.html" title="class in freemarker.core">Environment.Namespace</a> importLib(java.lang.String templateName, |
| java.lang.String targetNsVarName, |
| boolean lazy) |
| throws java.io.IOException, |
| <a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template">TemplateException</a></pre> |
| <div class="block">Like <a href="../../freemarker/core/Environment.html#importLib-java.lang.String-java.lang.String-"><code>importLib(String, String)</code></a>, but you can specify if you want a |
| <a href="../../freemarker/core/Configurable.html#setLazyImports-boolean-">lazy import</a> or not.</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>Not <code>null</code>. This is possibly a lazily self-initializing namespace, which mean that it will only try |
| to get and process the imported template when you access its content.</dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code>java.io.IOException</code></dd> |
| <dd><code><a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template">TemplateException</a></code></dd> |
| <dt><span class="simpleTagLabel">Since:</span></dt> |
| <dd>2.3.25</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getTemplateForImporting-java.lang.String-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getTemplateForImporting</h4> |
| <pre>public <a href="../../freemarker/template/Template.html" title="class in freemarker.template">Template</a> getTemplateForImporting(java.lang.String name) |
| throws java.io.IOException</pre> |
| <div class="block">Gets a template for importing; used with <a href="../../freemarker/core/Environment.html#importLib-freemarker.template.Template-java.lang.String-"><code>importLib(Template importedTemplate, String namespace)</code></a>. The |
| advantage over simply using <code>config.getTemplate(...)</code> is that it chooses the encoding as the |
| <code>import</code> directive does.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>name</code> - the name of the template, relatively to the template root directory (not the to the directory of the |
| currently executing template file!). (Note that you can use |
| <a href="../../freemarker/cache/TemplateCache.html#getFullTemplatePath-freemarker.core.Environment-java.lang.String-java.lang.String-"><code>TemplateCache.getFullTemplatePath(freemarker.core.Environment, java.lang.String, java.lang.String)</code></a> to convert paths to template root relative |
| paths.)</dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code>java.io.IOException</code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="toFullTemplateName-java.lang.String-java.lang.String-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>toFullTemplateName</h4> |
| <pre>public java.lang.String toFullTemplateName(java.lang.String baseName, |
| java.lang.String targetName) |
| throws <a href="../../freemarker/template/MalformedTemplateNameException.html" title="class in freemarker.template">MalformedTemplateNameException</a></pre> |
| <div class="block">Resolves a reference to a template (like the one used in <code>#include</code> or <code>#import</code>), assuming a base |
| name. This gives a root based, even if non-normalized and possibly non-absolute (but then relative to the root) |
| template name, that could be used for <a href="../../freemarker/template/Configuration.html#getTemplate-java.lang.String-"><code>Configuration.getTemplate(String)</code></a>. This is mostly used when a |
| template refers to another template. |
| <p> |
| If you need to guarantee that the result is also an absolute path, then apply |
| <a href="../../freemarker/core/Environment.html#rootBasedToAbsoluteTemplateName-java.lang.String-"><code>rootBasedToAbsoluteTemplateName(String)</code></a> on it.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>baseName</code> - The name to which relative <code>targetName</code>-s are relative to. Maybe <code>null</code> (happens when |
| resolving names in nameless templates), which means that the base is the root "directory", and so the |
| <code>targetName</code> is returned without change. Assuming <a href="../../freemarker/cache/TemplateNameFormat.html#DEFAULT_2_3_0"><code>TemplateNameFormat.DEFAULT_2_3_0</code></a> or |
| <a href="../../freemarker/cache/TemplateNameFormat.html#DEFAULT_2_4_0"><code>TemplateNameFormat.DEFAULT_2_4_0</code></a>, the rules are as follows. If you want to specify a base |
| directory here, it must end with <code>"/"</code>. If it doesn't end with <code>"/"</code>, it's parent |
| directory will be used as the base path. Might starts with a scheme part (like <code>"foo://"</code>, or |
| with <a href="../../freemarker/cache/TemplateNameFormat.html#DEFAULT_2_4_0"><code>TemplateNameFormat.DEFAULT_2_4_0</code></a> even just with <code>"foo:"</code>).</dd> |
| <dd><code>targetName</code> - The name of the template, which is either a relative or absolute name. Assuming |
| <a href="../../freemarker/cache/TemplateNameFormat.html#DEFAULT_2_3_0"><code>TemplateNameFormat.DEFAULT_2_3_0</code></a> or <a href="../../freemarker/cache/TemplateNameFormat.html#DEFAULT_2_4_0"><code>TemplateNameFormat.DEFAULT_2_4_0</code></a>, the rules are as |
| follows. If it starts with <code>"/"</code> or contains a scheme part separator (<code>"://"</code>, also, with |
| <a href="../../freemarker/cache/TemplateNameFormat.html#DEFAULT_2_4_0"><code>TemplateNameFormat.DEFAULT_2_4_0</code></a> a <code>":"</code> with no <code>"/"</code> anywhere before it) then |
| it's an absolute name, otherwise it's a relative path. Relative paths are interpreted relatively to |
| the <code>baseName</code>. Absolute names are simply returned as is, ignoring the <code>baseName</code>, except, |
| when the <code>baseName</code> has scheme part while the <code>targetName</code> doesn't have, then the schema |
| of the <code>baseName</code> is prepended to the <code>targetName</code>.</dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="../../freemarker/template/MalformedTemplateNameException.html" title="class in freemarker.template">MalformedTemplateNameException</a></code></dd> |
| <dt><span class="simpleTagLabel">Since:</span></dt> |
| <dd>2.3.22</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="rootBasedToAbsoluteTemplateName-java.lang.String-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>rootBasedToAbsoluteTemplateName</h4> |
| <pre>public java.lang.String rootBasedToAbsoluteTemplateName(java.lang.String rootBasedName) |
| throws <a href="../../freemarker/template/MalformedTemplateNameException.html" title="class in freemarker.template">MalformedTemplateNameException</a></pre> |
| <div class="block">Converts a root based name (a name that's either relative to the root, or is absolute), which are typically used |
| by the API (such as for <a href="../../freemarker/template/Configuration.html#getTemplate-java.lang.String-"><code>Configuration.getTemplate(String)</code></a>), to an absolute name, which can be safely |
| passed to <code><#include path></code> and such, as it won't be misinterpreted to be relative to the directory of the |
| template. For example, <code>"foo/bar.ftl"</code> is converted to <code>"/foo/bar.ftl"</code>, while <code>"/foo/bar"</code> or |
| <code>"foo://bar/baz"</code> remains as is, as they are already absolute names (see <a href="../../freemarker/cache/TemplateNameFormat.html" title="class in freemarker.cache"><code>TemplateNameFormat</code></a> for |
| more about the format of names). |
| |
| <p> |
| You only need this if the template name will be passed to <code><#include name></code>, <code><#import name></code>, |
| <code>.get_optional_template(name)</code> or a similar construct in a template, otherwise using non-absolute root |
| based names is fine.</div> |
| <dl> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="../../freemarker/template/MalformedTemplateNameException.html" title="class in freemarker.template">MalformedTemplateNameException</a></code></dd> |
| <dt><span class="simpleTagLabel">Since:</span></dt> |
| <dd>2.3.28</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getNamespaceForPrefix-java.lang.String-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getNamespaceForPrefix</h4> |
| <pre>public java.lang.String getNamespaceForPrefix(java.lang.String prefix)</pre> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>the namespace URI registered for this prefix, or null. This is based on the mappings registered in the |
| current namespace.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getPrefixForNamespace-java.lang.String-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getPrefixForNamespace</h4> |
| <pre>public java.lang.String getPrefixForNamespace(java.lang.String nsURI)</pre> |
| </li> |
| </ul> |
| <a name="getDefaultNS--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getDefaultNS</h4> |
| <pre>public java.lang.String getDefaultNS()</pre> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>the default node namespace for the current FTL namespace</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="Z:Z__getitem__-java.lang.String-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>__getitem__</h4> |
| <pre>public java.lang.Object __getitem__(java.lang.String key) |
| throws <a href="../../freemarker/template/TemplateModelException.html" title="class in freemarker.template">TemplateModelException</a></pre> |
| <div class="block">A hook that Jython uses.</div> |
| <dl> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="../../freemarker/template/TemplateModelException.html" title="class in freemarker.template">TemplateModelException</a></code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="Z:Z__setitem__-java.lang.String-java.lang.Object-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>__setitem__</h4> |
| <pre>public void __setitem__(java.lang.String key, |
| java.lang.Object o) |
| throws <a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template">TemplateException</a></pre> |
| <div class="block">A hook that Jython uses.</div> |
| <dl> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="../../freemarker/template/TemplateException.html" title="class in freemarker.template">TemplateException</a></code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getCustomState-java.lang.Object-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getCustomState</h4> |
| <pre>public java.lang.Object getCustomState(java.lang.Object identityKey)</pre> |
| <div class="block">Returns the value of a custom state variable, or <code>null</code> if it's missing; see |
| <a href="../../freemarker/core/Environment.html#setCustomState-java.lang.Object-java.lang.Object-"><code>setCustomState(Object, Object)</code></a> for more.</div> |
| <dl> |
| <dt><span class="simpleTagLabel">Since:</span></dt> |
| <dd>2.3.24</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="setCustomState-java.lang.Object-java.lang.Object-"> |
| <!-- --> |
| </a> |
| <ul class="blockListLast"> |
| <li class="blockList"> |
| <h4>setCustomState</h4> |
| <pre>public java.lang.Object setCustomState(java.lang.Object identityKey, |
| java.lang.Object value)</pre> |
| <div class="block">Sets the value of a custom state variable. Custom state variables meant to be used by |
| <a href="../../freemarker/core/TemplateNumberFormatFactory.html" title="class in freemarker.core"><code>TemplateNumberFormatFactory</code></a>-es, <a href="../../freemarker/core/TemplateDateFormatFactory.html" title="class in freemarker.core"><code>TemplateDateFormatFactory</code></a>-es, and similar user-implementable, |
| pluggable objects, which want to maintain an <a href="../../freemarker/core/Environment.html" title="class in freemarker.core"><code>Environment</code></a>-scoped state (such as a cache).</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>identityKey</code> - The key that identifies the variable, by its object identity (not by <code>Object.equals(Object)</code>). |
| This should be something like a <code>private static final Object CUSTOM_STATE_KEY = new Object();</code> |
| in the class that needs this state variable.</dd> |
| <dd><code>value</code> - The value of the variable. Can be anything, even <code>null</code>.</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>The previous value of the variable, or <code>null</code> if the variable didn't exist.</dd> |
| <dt><span class="simpleTagLabel">Since:</span></dt> |
| <dd>2.3.24</dd> |
| </dl> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| </div> |
| </div> |
| <!-- ========= END OF CLASS DATA ========= --> |
| <!-- ======= START OF BOTTOM NAVBAR ====== --> |
| <div class="bottomNav"><a name="navbar.bottom"> |
| <!-- --> |
| </a> |
| <div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div> |
| <a name="navbar.bottom.firstrow"> |
| <!-- --> |
| </a> |
| <ul class="navList" title="Navigation"> |
| <li><a href="../../overview-summary.html">Overview</a></li> |
| <li><a href="package-summary.html">Package</a></li> |
| <li class="navBarCell1Rev">Class</li> |
| <li><a href="class-use/Environment.html">Use</a></li> |
| <li><a href="package-tree.html">Tree</a></li> |
| <li><a href="../../deprecated-list.html">Deprecated</a></li> |
| <li><a href="../../index-all.html">Index</a></li> |
| <li><a href="../../help-doc.html">Help</a></li> |
| </ul> |
| </div> |
| <div class="subNav"> |
| <ul class="navList"> |
| <li><a href="../../freemarker/core/DirectiveCallPlace.html" title="interface in freemarker.core"><span class="typeNameLink">Prev Class</span></a></li> |
| <li><a href="../../freemarker/core/Environment.Namespace.html" title="class in freemarker.core"><span class="typeNameLink">Next Class</span></a></li> |
| </ul> |
| <ul class="navList"> |
| <li><a href="../../index.html?freemarker/core/Environment.html" target="_top">Frames</a></li> |
| <li><a href="Environment.html" target="_top">No Frames</a></li> |
| </ul> |
| <ul class="navList" id="allclasses_navbar_bottom"> |
| <li><a href="../../allclasses-noframe.html">All Classes</a></li> |
| </ul> |
| <div> |
| <script type="text/javascript"><!-- |
| allClassesLink = document.getElementById("allclasses_navbar_bottom"); |
| if(window==top) { |
| allClassesLink.style.display = "block"; |
| } |
| else { |
| allClassesLink.style.display = "none"; |
| } |
| //--> |
| </script> |
| </div> |
| <div> |
| <ul class="subNavList"> |
| <li>Summary: </li> |
| <li><a href="#nested.class.summary">Nested</a> | </li> |
| <li><a href="#fields.inherited.from.class.freemarker.core.Configurable">Field</a> | </li> |
| <li><a href="#constructor.summary">Constr</a> | </li> |
| <li><a href="#method.summary">Method</a></li> |
| </ul> |
| <ul class="subNavList"> |
| <li>Detail: </li> |
| <li>Field | </li> |
| <li><a href="#constructor.detail">Constr</a> | </li> |
| <li><a href="#method.detail">Method</a></li> |
| </ul> |
| </div> |
| <a name="skip.navbar.bottom"> |
| <!-- --> |
| </a></div> |
| <!-- ======== END OF BOTTOM NAVBAR ======= --> |
| </body> |
| </html> |