| 
 | ||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.apache.wiki.modules.ModuleManager
org.apache.wiki.ui.TemplateManager
public class TemplateManager

This class takes care of managing JSPWiki templates. This class also provides the ResourceRequest mechanism.
| Field Summary | |
|---|---|
| static String | DEFAULT_TEMPLATEThe name of the default template. | 
| static String | DIRECTORYThe default directory for the properties. | 
| static String | I18NDEFAULT_LOCALEI18N string to mark the default locale | 
| static String | I18NRESOURCE_ENThe default (en) RESOURCE name and id. | 
| static String | I18NRESOURCE_EN_ID | 
| static String | I18NRESOURCE_PREFIXLocation of I18N Resource bundles, and path prefix and suffixes | 
| static String | I18NRESOURCE_SUFFIX | 
| static String | I18NSERVER_TIMEZONEI18N string to mark the server timezone | 
| protected static org.apache.log4j.Logger | log | 
| static String | PROPERTYFILEName of the file that contains the properties. | 
| static String | RESOURCE_HTTPHEADERRequests a HTTP header. | 
| static String | RESOURCE_INCLUDESThe name under which the resource includes map is stored in the WikiContext. | 
| static String | RESOURCE_INLINECSSRequests inlined CSS. | 
| static String | RESOURCE_JSFUNCTIONRequests a JavaScript function to be called during window.onload. | 
| static String | RESOURCE_JSLOCALIZEDSTRINGSRequests a JavaScript associative array with all localized strings. | 
| static String | RESOURCE_SCRIPTRequests a script to be loaded. | 
| static String | RESOURCE_STYLESHEETRequests a stylesheet to be inserted. | 
| static String | TIMEFORMATPROPERTIESPrefix of the default timeformat properties. | 
| Fields inherited from class org.apache.wiki.modules.ModuleManager | 
|---|
| m_engine, PLUGIN_RESOURCE_LOCATION | 
| Constructor Summary | |
|---|---|
| TemplateManager(WikiEngine engine,
                               Properties properties)Creates a new TemplateManager. | |
| Method Summary | |
|---|---|
| static void | addResourceRequest(WikiContext ctx,
                                     String type,
                                     String resource)Adds a resource request to the current request context. | 
|  String | findJSP(javax.servlet.jsp.PageContext pageContext,
               String name)An utility method for finding a JSP page. | 
|  String | findJSP(javax.servlet.jsp.PageContext pageContext,
               String template,
               String name)Attempts to locate a resource under the given template. | 
|  String | findResource(WikiContext ctx,
                         String template,
                         String name)Attempts to locate a resource under the given template. | 
| static String | getMarker(WikiContext context,
                   String type)Returns the include resources marker for a given type. | 
| static String[] | getResourceRequests(WikiContext ctx,
                                       String type)Returns resource requests for a particular type. | 
| static String[] | getResourceTypes(WikiContext ctx)Returns all those types that have been requested so far. | 
|  Map | listLanguages(javax.servlet.jsp.PageContext pageContext)List all installed i18n language properties by classpath searching for files like : templates/default_*.properties templates/default.properties | 
|  Set | listSkins(javax.servlet.jsp.PageContext pageContext,
                   String template)Lists the skins available under this template. | 
|  Map | listTimeFormats(javax.servlet.jsp.PageContext pageContext)List all available timeformats, read from the jspwiki.properties | 
|  Map | listTimeZones(javax.servlet.jsp.PageContext pageContext)List all timezones, with special marker for server timezone | 
|  Collection | modules()Returns an empty collection, since at the moment the TemplateManager does not manage any modules. | 
|  boolean | templateExists(String templateName)Check the existence of a template. | 
| Methods inherited from class org.apache.wiki.modules.ModuleManager | 
|---|
| checkCompatibility | 
| Methods inherited from class java.lang.Object | 
|---|
| clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | 
| Field Detail | 
|---|
public static final String RESOURCE_JSFUNCTION
public static final String RESOURCE_JSLOCALIZEDSTRINGS
public static final String RESOURCE_STYLESHEET
public static final String RESOURCE_SCRIPT
public static final String RESOURCE_INLINECSS
public static final String DIRECTORY
public static final String DEFAULT_TEMPLATE
public static final String PROPERTYFILE
public static final String I18NRESOURCE_PREFIX
public static final String I18NRESOURCE_SUFFIX
public static final String I18NRESOURCE_EN
public static final String I18NRESOURCE_EN_ID
public static final String I18NDEFAULT_LOCALE
public static final String I18NSERVER_TIMEZONE
public static final String TIMEFORMATPROPERTIES
public static final String RESOURCE_INCLUDES
protected static final org.apache.log4j.Logger log
public static final String RESOURCE_HTTPHEADER
| Constructor Detail | 
|---|
public TemplateManager(WikiEngine engine,
                       Properties properties)
engine - The owning engine.properties - The property list used to initialize this.| Method Detail | 
|---|
public boolean templateExists(String templateName)
public String findJSP(javax.servlet.jsp.PageContext pageContext,
                      String name)
pageContext - the JSP PageContextname - The name of the JSP page to look for (e.g "Wiki.jsp")
public String findJSP(javax.servlet.jsp.PageContext pageContext,
                      String template,
                      String name)
Even though the name suggests only JSP files can be located, but in fact this method can find also other resources than JSP files.
pageContext - The JSP PageContexttemplate - From which template we should seek initially?name - Which resource are we looking for (e.g. "ViewTemplate.jsp")
public String findResource(WikiContext ctx,
                           String template,
                           String name)
This method is typically used to locate any resource, including JSP pages, images, scripts, etc.
ctx - the wiki contexttemplate - the name of the template to usename - the name of the resource to fine
public Set listSkins(javax.servlet.jsp.PageContext pageContext,
                     String template)
pageContext - the JSP PageContexttemplate - The template to search
public Map listLanguages(javax.servlet.jsp.PageContext pageContext)
pageContext - 
public Map listTimeFormats(javax.servlet.jsp.PageContext pageContext)
pageContext - 
public Map listTimeZones(javax.servlet.jsp.PageContext pageContext)
pageContext - 
public static String getMarker(WikiContext context,
                               String type)
context - the wiki contexttype - the marker
public static void addResourceRequest(WikiContext ctx,
                                      String type,
                                      String resource)
The resources can be of different types. For RESOURCE_SCRIPT and RESOURCE_STYLESHEET this is an URI path to the resource (a script file or an external stylesheet) that needs to be included. For RESOURCE_INLINECSS the resource should be something that can be added between <style></style> in the header file (commonheader.jsp). For RESOURCE_JSFUNCTION it is the name of the Javascript function that should be run at page load.
The IncludeResourceTag inserts code in the template files, which is then filled by the WikiFilter after the request has been rendered but not yet sent to the recipient.
Note that ALL resource requests get rendered, so this method does not check if the request already exists in the resources. Therefore, if you have a plugin which makes a new resource request every time, you'll end up with multiple resource requests rendered. It's thus a good idea to make this request only once during the page life cycle.
ctx - The current wiki contexttype - What kind of a request should be added?resource - The resource to add.
public static String[] getResourceRequests(WikiContext ctx,
                                           String type)
ctx - WikiContexttype - The resource request type
public static String[] getResourceTypes(WikiContext ctx)
ctx - the wiki context
public Collection modules()
modules in class ModuleManager| 
 | ||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||