org.openmobileis.embedded.webserver.templates
Class Freemarkerv1TemplateDelegate

java.lang.Object
  extended byorg.openmobileis.embedded.webserver.templates.Freemarkerv1TemplateDelegate
All Implemented Interfaces:
TemplateManagerDelegate, TemplateRetrieverManagerService

public class Freemarkerv1TemplateDelegate
extends java.lang.Object
implements TemplateManagerDelegate, TemplateRetrieverManagerService

Title: OpenMobileIS project source
Description: Manage pattern (templates) for HTML forms used by the PDA web server

It is based on singleton model. The path gives the location of the patterns (should terminate by a file separator). The API getHTMLFile (patternName, variables) allow to get the HTML file from a pattern and a list of variables. The default implementation use the freemarker template manager. See freemarker for more information. Inside the pattern, the variables are tagged by ${}.

Since:
JDK 1.1
Version:
1.0.
Author:
Philippe Delrieu

Constructor Summary
Freemarkerv1TemplateDelegate()
           
 
Method Summary
 void cacheUnavailable(CacheEvent e)
           
 void elementRemoved(CacheEvent e)
           
 void elementUpdated(CacheEvent e)
           
 void elementUpdateFailed(CacheEvent e)
           
 java.lang.String getDefaultTemplateContentType()
          return the default Content-Type of the template HTTP response
 Template getTemplate(java.lang.String relatifPath)
          return the template with specified relative name.
 TemplateModelRoot getTemplateModelRoot()
          initialize template structure for this request.
 void init()
          init template and cache management.
 void registerTemplateRetriever(TemplateRetrieverService retriever)
           
 void sendResponse(java.lang.String templateName, TemplateModelRoot modelRoot, HttpServletResponse res)
           
 void setDefaultTemplateContentType(java.lang.String defaultTemplateContentType)
          Default content type of the response.
 void updateTemplateWithNavigationBarData(java.lang.Object modelRoot, java.lang.String data)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Freemarkerv1TemplateDelegate

public Freemarkerv1TemplateDelegate()
Method Detail

init

public void init()
init template and cache management. cache template is use to detect cache update during synchronization

Specified by:
init in interface TemplateManagerDelegate

updateTemplateWithNavigationBarData

public void updateTemplateWithNavigationBarData(java.lang.Object modelRoot,
                                                java.lang.String data)
Specified by:
updateTemplateWithNavigationBarData in interface TemplateManagerDelegate

cacheUnavailable

public void cacheUnavailable(CacheEvent e)

elementUpdated

public void elementUpdated(CacheEvent e)

elementUpdateFailed

public void elementUpdateFailed(CacheEvent e)

elementRemoved

public void elementRemoved(CacheEvent e)

getTemplateModelRoot

public TemplateModelRoot getTemplateModelRoot()
initialize template structure for this request.

Specified by:
getTemplateModelRoot in interface TemplateManagerDelegate

getTemplate

public Template getTemplate(java.lang.String relatifPath)
return the template with specified relative name. The path to find the temlpate is template install directory(intalpath/cn/openmischannel/template/"+relatifName. The relatid name must not begin with file separator. The relative name must is plate-forme specific file separators. Return null if not found.


sendResponse

public void sendResponse(java.lang.String templateName,
                         TemplateModelRoot modelRoot,
                         HttpServletResponse res)
                  throws java.io.IOException,
                         TemplateNotFoundException
Specified by:
sendResponse in interface TemplateManagerDelegate
Throws:
java.io.IOException
TemplateNotFoundException

registerTemplateRetriever

public void registerTemplateRetriever(TemplateRetrieverService retriever)
Specified by:
registerTemplateRetriever in interface TemplateRetrieverManagerService

getDefaultTemplateContentType

public java.lang.String getDefaultTemplateContentType()
Description copied from interface: TemplateManagerDelegate
return the default Content-Type of the template HTTP response

Specified by:
getDefaultTemplateContentType in interface TemplateManagerDelegate
Returns:

setDefaultTemplateContentType

public void setDefaultTemplateContentType(java.lang.String defaultTemplateContentType)
Description copied from interface: TemplateManagerDelegate
Default content type of the response. If not set it's html/text. Use to force the default Content-Type header of template HTTP response. "text/html; charset=ISO-8859-1" for example.

Specified by:
setDefaultTemplateContentType in interface TemplateManagerDelegate


Copyright 2006 OpenMobileIS. All Rights Reserved.