org.infoglue.cms.controllers.delivery.kernel.impl.simple
Class BasicTemplateController

java.lang.Object
  |
  +--org.infoglue.cms.controllers.delivery.kernel.impl.simple.BasicTemplateController
All Implemented Interfaces:
TemplateController
Direct Known Subclasses:
EditOnSiteBasicTemplateController

public class BasicTemplateController
extends java.lang.Object
implements TemplateController

This is the most basic template controller supplying the templates using it with methods to fetch contents, structure and other suff needed for a site. Mostly this class just acts as a delegator to other more specialized classes.


Constructor Summary
BasicTemplateController()
          The constructor for the templateController.
 
Method Summary
 java.lang.String getArchiveBaseUrl(java.lang.Integer contentId, java.lang.String assetKey)
          This method deliveres a String with the URL to the base path of the directory resulting from an unpacking of a uploaded zip-digitalAsset.
 java.lang.String getArchiveBaseUrl(java.lang.String contentBindningName, int index, java.lang.String assetKey)
          This method deliveres a String with the URL to the base path of the directory resulting from an unpacking of a uploaded zip-digitalAsset.
 java.lang.String getArchiveBaseUrl(java.lang.String contentBindningName, java.lang.String assetKey)
          This method deliveres a String with the URL to the base path of the directory resulting from an unpacking of a uploaded zip-digitalAsset.
 java.util.Vector getArchiveEntries(java.lang.Integer contentId, java.lang.String assetKey)
           
 java.lang.Integer getAssetFileSize(java.lang.Integer contentId)
           
 java.lang.Integer getAssetFileSize(java.lang.Integer contentId, java.lang.String assetKey)
           
 java.lang.Integer getAssetFileSize(java.lang.String contentBindningName, int index)
           
 java.lang.Integer getAssetFileSize(java.lang.String contentBindningName, java.lang.String assetKey)
           
 java.util.Collection getAssetKeys(java.lang.String contentBindningName)
          This method deliveres a list of strings which represents all assetKeys for a content.
 java.lang.String getAssetUrl(java.lang.Integer contentId)
          This method deliveres a String with the URL to the digital asset asked for.
 java.lang.String getAssetUrl(java.lang.Integer contentId, java.lang.String assetKey)
          This method deliveres a String with the URL to the digital asset asked for.
 java.lang.String getAssetUrl(java.lang.String contentBindningName)
          This method deliveres a String with the URL to the digital asset asked for.
 java.lang.String getAssetUrl(java.lang.String contentBindningName, int index)
          This method deliveres a String with the URL to the digital asset asked for.
 java.lang.String getAssetUrl(java.lang.String contentBindningName, java.lang.String assetKey)
          This method deliveres a String with the URL to the digital asset asked for.
 java.util.List getAvailableLanguages()
          This method returns a list of all languages available on the current site/repository.
 org.infoglue.cms.entities.content.ContentVO getBoundContent(java.lang.String structureBindningName)
          The method returns a single ContentVO-objects that is the bound content of named binding.
 java.util.List getBoundContents(java.lang.String structureBindningName)
          The method returns a list of ContentVO-objects that is the bound content of named binding.
 java.util.List getBoundFolderContents(java.lang.Integer siteNodeId, java.lang.String structureBindningName, boolean searchRecursive, java.lang.String sortAttribute, java.lang.String sortOrder)
          The method returns a list of ContentVO-objects that is children to the bound content of named binding on the siteNode sent in.
 java.util.List getBoundFolderContents(java.lang.String structureBindningName, boolean searchRecursive, java.lang.String sortAttribute, java.lang.String sortOrder)
          The method returns a list of ContentVO-objects that is children to the bound content of named binding.
 WebPage getBoundPage(java.lang.String structureBindningName, int position)
          The method returns a list of WebPage-objects that is the bound sitenodes of named binding.
 java.util.List getBoundPages(java.lang.Integer siteNodeId, java.lang.String structureBindningName)
          This methods get a list of bound pages with the structureBindningName sent in which resides on the siteNodeId sent in.
 java.util.List getBoundPages(java.lang.String structureBindningName)
           
 BrowserBean getBrowserBean()
          Getter for the browserBean which supplies information about the users browser, OS and other stuff.
 java.util.Collection getChildContents(java.lang.Integer contentId, boolean includeFolders)
          This method gets the children of a content.
 java.util.List getChildPages()
          The method returns a list of WebPage-objects that is the children of the current siteNode.
 java.util.List getChildPages(java.lang.Integer siteNodeId)
          The method returns a list of WebPage-objects that is the children of the given siteNode.
 java.util.List getChildPages(java.lang.String structureBindingName)
          The method returns a list of WebPage-objects that is the children of the given siteNode.
 ColorHelper getColorHelper()
          This method gets the color utility.
 ComponentLogic getComponentLogic()
          This method gets a component logic helper object.
 org.infoglue.cms.entities.content.ContentVO getContent()
          Getter for the current content
 java.lang.String getContentAttribute(java.lang.Integer contentId, java.lang.String attributeName)
          This method deliveres a String with the content-attribute asked for.
 java.lang.String getContentAttribute(java.lang.Integer contentId, java.lang.String attributeName, boolean clean)
          This method is just a dummy method used to ensure that we can ensure to not get a decorated attribute value if OnSiteEdit is on.
 java.lang.String getContentAttribute(java.lang.String attributeName)
          This method deliveres a String with the content-attribute asked for if it exists in the content defined in the url-parameter contentId.
 java.lang.String getContentAttribute(java.lang.String attributeName, boolean clean)
          This method is just a dummy method used to ensure that we can ensure to not get a decorated attribute value if OnSiteEdit is on.
 java.lang.String getContentAttribute(java.lang.String contentBindningName, java.lang.String attributeName)
          This method deliveres a String with the content-attribute asked for.
 java.lang.String getContentAttribute(java.lang.String contentBindningName, java.lang.String attributeName, boolean clean)
          This method is just a dummy method used to ensure that we can ensure to not get a decorated attribute value if OnSiteEdit is on.
 java.lang.String getContentAttributeAsImageUrl(java.lang.Integer contentId, java.lang.String attributeName, int canvasWidth, int canvasHeight, int textStartPosX, int textStartPosY, int textWidth, int textHeight, java.lang.String fontName, int fontStyle, int fontSize, java.awt.Color foregroundColor, java.awt.Color backgroundColor)
           
 java.lang.String getContentAttributeAsImageUrl(java.lang.Integer contentId, java.lang.String attributeName, int canvasWidth, int canvasHeight, int textStartPosX, int textStartPosY, int textWidth, int textHeight, java.lang.String fontName, int fontStyle, int fontSize, java.lang.String foregroundColor, java.lang.String backgroundColor)
           
 java.lang.String getContentAttributeAsImageUrl(java.lang.String contentBindningName, java.lang.String attributeName, int canvasWidth, int canvasHeight)
          This method deliveres a String with the content-attribute asked for generated as a gif-file.
 java.lang.String getContentAttributeAsImageUrl(java.lang.String contentBindningName, java.lang.String attributeName, int canvasWidth, int canvasHeight, int textStartPosX, int textStartPosY, int textWidth, int textHeight, java.lang.String fontName, int fontStyle, int fontSize, java.awt.Color foregroundColor, java.awt.Color backgroundColor)
           
 java.lang.String getContentAttributeAsImageUrl(java.lang.String contentBindningName, java.lang.String attributeName, int canvasWidth, int canvasHeight, int textStartPosX, int textStartPosY, int textWidth, int textHeight, java.lang.String fontName, int fontStyle, int fontSize, java.lang.String foregroundColor, java.lang.String backgroundColor)
           
 java.lang.Integer getContentId()
          Getter for the contentId
 java.lang.Integer getContentId(java.lang.Integer siteNodeId, java.lang.String contentBindningName)
          Getter for bound contentId for a binding on a special siteNode
 java.lang.Integer getContentId(java.lang.String contentBindningName)
          Getter for bound contentId for a binding
 org.infoglue.cms.entities.management.ContentTypeDefinitionVO getContentTypeDefinitionVO(java.lang.Integer contentId)
          The method returns the ContentTypeVO-objects of the given contentId.
 java.lang.String getCurrentPagePath()
          This method constructs a string representing the path to the page with respect to where in the structure the page is.
 java.lang.String getCurrentPageUrl()
          This method deliveres a new url pointing to the same address as now but in the language corresponding to the code sent in.
 java.lang.String getEncodedUrl(java.lang.String s, java.lang.String enc)
           
 FontHelper getFontHelper()
          This method gets the color utility.
 java.util.List getFormAttributes(java.lang.String contentBindningName, java.lang.String attributeName)
          This method returns a list of form elements/attributes based on the schema sent in.
 boolean getHasLocalizedVersion(java.lang.Integer contentId)
          This method return true if a localized version with the current language exist
 javax.servlet.http.HttpServletRequest getHttpServletRequest()
          Getter for request-object
 java.lang.String getInlineAssetUrl(java.lang.String assetKey)
          This method deliveres a String with the URL to the digital asset asked for.
 boolean getIsPageCacheDisabled()
          This method returns true if the page in question (ie sitenode) has page-caching disabled.
 boolean getIsPageProtected()
          This method returns true if the page in question (ie sitenode) has it's protected property enabled.
 boolean getIsParentToCurrent(java.lang.Integer siteNodeId)
          This method helps us find out if the current site node is the same or a child to the sent in one.
 java.util.Locale getLanguageCode(java.lang.Integer languageId)
          This method supplies a method to get the locale of the language currently in use.
 java.lang.Integer getLanguageId()
          Getter for the languageId
 java.util.List getLocalizedBoundPages(java.lang.String structureBindningName)
          The method returns a list of WebPage-objects that is the bound sitenodes of named binding.
 MathHelper getMathHelper()
          This method gets the math utility.
 java.util.List getNodeAvailableLanguages()
          This method returns a list of all languages available on the current sitenode.
 java.util.List getNodeAvailableLanguages(java.lang.Integer siteNodeId)
           
 java.text.NumberFormat getNumberFormatHelper()
          This method gets the NumberFormat instance with the proper locale.
 ObjectConverter getObjectConverter()
          This method gets the object converter utility.
 java.lang.Object getObjectWithName(java.lang.String classname)
           
 java.lang.String getPageBaseUrl(java.lang.String structureBindningName)
          This method deliveres a String with the URL to the page asked for.
 java.lang.String getPageContentType()
          This method returns the contenttype this page should return.
 java.lang.String getPageNavTitle(java.lang.Integer siteNodeId)
          This method deliveres a String with the Navigation title the page asked for has.
 java.lang.String getPageNavTitle(java.lang.String structureBindningName)
          This method deliveres a String with the Navigation title the page asked for has.
 java.lang.String getPageNavTitle(java.lang.String structureBindningName, int index)
          This method deliveres a String with the Navigation title the page asked for has.
 java.lang.String getPageTitle()
          This method deliveres a String with the Navigation title the page the user are on has.
 java.lang.String getPageUrl(java.lang.Integer siteNodeId, java.lang.Integer languageId, java.lang.Integer contentId)
          This method deliveres a new url pointing to the same address as now but with new parameters.
 java.lang.String getPageUrl(java.lang.String structureBindningName)
          This method deliveres a String with the URL to the page asked for.
 java.lang.String getPageUrl(java.lang.String structureBindningName, java.lang.Integer contentId)
          This method deliveres a String with the URL to the page asked for.
 java.lang.String getPageUrl(java.lang.String structureBindningName, int position, java.lang.Integer contentId)
          This method deliveres a String with the URL to the page asked for.
 java.lang.String getPageUrl(WebPage webpage, java.lang.Integer contentId)
          This method just gets a new URL but with the given contentId in it.
 java.lang.String getPageUrlAfterLanguageChange(java.lang.String languageCode)
          This method deliveres a new url pointing to the same address as now but in the language corresponding to the code sent in.
 java.lang.String getPageUrlOnPosition(java.lang.String structureBindningName, int position)
          This method deliveres a String with the URL to the page asked for.
 java.lang.String getParsedContentAttribute(java.lang.Integer contentId, java.lang.String attributeName)
          This method deliveres a String with the content-attribute asked for after it has been parsed and all special tags have been converted.
 java.lang.String getParsedContentAttribute(java.lang.String attributeName)
          This method deliveres a String with the content-attribute asked for after it has been parsed and all special tags have been converted.
 java.lang.String getParsedContentAttribute(java.lang.String contentBindningName, java.lang.String attributeName)
          This method deliveres a String with the content-attribute asked for after it has been parsed and all special tags have been converted.
 java.util.List getRelatedContents(java.lang.String attributeName)
          This method gets a List of related contents defined in an attribute as an xml-definition.
 java.util.Enumeration getRequestParamenterNames()
          Getter for request-parameters
 java.lang.String getRequestParameter(java.lang.String parameterName)
          Getter for request-parameter
 java.lang.String[] getRequestParameterValues(java.lang.String parameterName)
          Getter for request-parameters
 java.lang.Integer getSiteNodeId()
          Getter for the siteNodeId
 java.lang.Integer getSiteNodeId(java.lang.String structureBindningName)
          Getter for the siteNodeId on a specific bound page
 java.lang.String getStringAsImageUrl(java.lang.String text, int canvasWidth, int canvasHeight, int textStartPosX, int textStartPosY, int textWidth, int textHeight, java.lang.String fontName, int fontStyle, int fontSize, java.awt.Color foregroundColor, java.awt.Color backgroundColor)
          This method deliveres a String with the content-attribute asked for generated as a png-file.
 java.lang.String getTemplateAttributeName()
          Getter for the template attribute name.
 TemplateController getTemplateController(java.lang.Integer siteNodeId, java.lang.Integer languageId, java.lang.Integer contentId)
          This method should be much more sophisticated later and include a check to see if there is a digital asset uploaded which is more specialized and can be used to act as serverside logic to the template.
 TemplateController getTemplateController(java.lang.Integer siteNodeId, java.lang.Integer languageId, java.lang.Integer contentId, javax.servlet.http.HttpServletRequest request)
           
 java.lang.String getUrlContent(java.lang.String url)
          This method fetches a given URL contents.
 java.lang.String getUrlContent(java.lang.String url, boolean includeRequest)
          This method fetches a given URL contents.
 org.infoglue.cms.applications.common.VisualFormatter getVisualFormatter()
          This method gets the formatter object that helps with formatting of data.
 java.lang.String include(java.lang.String contentBindningName, java.lang.String attributeName)
          This method allows the current template to include another template which is also rendered in the current context as if it were a part.
 java.lang.String include(java.lang.String contentBindningName, java.lang.String attributeName, boolean cacheInclude)
           
 java.lang.String include(java.lang.String contentBindningName, java.lang.String attributeName, boolean cacheInclude, java.lang.String cName, java.lang.Object cObject)
          This method allows the current template to include another template which is also rendered in the current context as if it were a part.
 java.lang.String replace(java.lang.String originalString, java.lang.String expressionToReplace, java.lang.String newString)
          This method lets a user substitute a string located in the page by a regular expression with another string.
 java.lang.String replace(java.lang.String originalString, java.lang.String substring, java.lang.String stringToReplace, java.lang.String newString)
          This method lets a user substitute a string located in the page by a regular expression with another string.
 void setBrowserBean(BrowserBean browserBean)
          Setter for the bean which contains information about the users browser.
 void setComponentLogic(ComponentLogic componentLogic)
          This method gets a component logic helper object.
 void setDeliveryControllers(NodeDeliveryController nodeDeliveryController, ContentDeliveryController contentDeliveryController, IntegrationDeliveryController integrationDeliveryController)
          Setting to enable us to set initialized versions of the Node and Content delivery Controllers.
 void setHttpRequest(javax.servlet.http.HttpServletRequest request)
          Setter for the template to get all the parameters from the user.
 void setStandardRequestParameters(java.lang.Integer siteNodeId, java.lang.Integer languageId, java.lang.Integer contentId)
          Setter for the template to get all the parameters from the user.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BasicTemplateController

public BasicTemplateController()
The constructor for the templateController. It should be used to initialize the templateController for efficient use.

Method Detail

setStandardRequestParameters

public void setStandardRequestParameters(java.lang.Integer siteNodeId,
                                         java.lang.Integer languageId,
                                         java.lang.Integer contentId)
Setter for the template to get all the parameters from the user.

Specified by:
setStandardRequestParameters in interface TemplateController

setHttpRequest

public void setHttpRequest(javax.servlet.http.HttpServletRequest request)
Setter for the template to get all the parameters from the user.

Specified by:
setHttpRequest in interface TemplateController

setBrowserBean

public void setBrowserBean(BrowserBean browserBean)
Setter for the bean which contains information about the users browser.

Specified by:
setBrowserBean in interface TemplateController

getTemplateAttributeName

public java.lang.String getTemplateAttributeName()
Getter for the template attribute name.

Specified by:
getTemplateAttributeName in interface TemplateController

getSiteNodeId

public java.lang.Integer getSiteNodeId()
Getter for the siteNodeId

Specified by:
getSiteNodeId in interface TemplateController

getLanguageId

public java.lang.Integer getLanguageId()
Getter for the languageId

Specified by:
getLanguageId in interface TemplateController

getContentId

public java.lang.Integer getContentId()
Getter for the contentId

Specified by:
getContentId in interface TemplateController

getComponentLogic

public ComponentLogic getComponentLogic()
This method gets a component logic helper object.

Specified by:
getComponentLogic in interface TemplateController

setComponentLogic

public void setComponentLogic(ComponentLogic componentLogic)
This method gets a component logic helper object.

Specified by:
setComponentLogic in interface TemplateController

getVisualFormatter

public org.infoglue.cms.applications.common.VisualFormatter getVisualFormatter()
This method gets the formatter object that helps with formatting of data.

Specified by:
getVisualFormatter in interface TemplateController

getColorHelper

public ColorHelper getColorHelper()
This method gets the color utility.

Specified by:
getColorHelper in interface TemplateController

getFontHelper

public FontHelper getFontHelper()
This method gets the color utility.

Specified by:
getFontHelper in interface TemplateController

getMathHelper

public MathHelper getMathHelper()
This method gets the math utility.

Specified by:
getMathHelper in interface TemplateController

getNumberFormatHelper

public java.text.NumberFormat getNumberFormatHelper()
This method gets the NumberFormat instance with the proper locale.

Specified by:
getNumberFormatHelper in interface TemplateController

getObjectConverter

public ObjectConverter getObjectConverter()
This method gets the object converter utility.


getContent

public org.infoglue.cms.entities.content.ContentVO getContent()
Getter for the current content

Specified by:
getContent in interface TemplateController

getHttpServletRequest

public javax.servlet.http.HttpServletRequest getHttpServletRequest()
Getter for request-object


getRequestParamenterNames

public java.util.Enumeration getRequestParamenterNames()
Getter for request-parameters

Specified by:
getRequestParamenterNames in interface TemplateController

getRequestParameter

public java.lang.String getRequestParameter(java.lang.String parameterName)
Getter for request-parameter

Specified by:
getRequestParameter in interface TemplateController

getRequestParameterValues

public java.lang.String[] getRequestParameterValues(java.lang.String parameterName)
Getter for request-parameters

Specified by:
getRequestParameterValues in interface TemplateController

getBrowserBean

public BrowserBean getBrowserBean()
Getter for the browserBean which supplies information about the users browser, OS and other stuff.

Specified by:
getBrowserBean in interface TemplateController

setDeliveryControllers

public void setDeliveryControllers(NodeDeliveryController nodeDeliveryController,
                                   ContentDeliveryController contentDeliveryController,
                                   IntegrationDeliveryController integrationDeliveryController)
Setting to enable us to set initialized versions of the Node and Content delivery Controllers.

Specified by:
setDeliveryControllers in interface TemplateController

getContentAttribute

public java.lang.String getContentAttribute(java.lang.String contentBindningName,
                                            java.lang.String attributeName,
                                            boolean clean)
This method is just a dummy method used to ensure that we can ensure to not get a decorated attribute value if OnSiteEdit is on.


getContentAttribute

public java.lang.String getContentAttribute(java.lang.String attributeName,
                                            boolean clean)
This method is just a dummy method used to ensure that we can ensure to not get a decorated attribute value if OnSiteEdit is on.


getContentAttribute

public java.lang.String getContentAttribute(java.lang.Integer contentId,
                                            java.lang.String attributeName,
                                            boolean clean)
This method is just a dummy method used to ensure that we can ensure to not get a decorated attribute value if OnSiteEdit is on.

Specified by:
getContentAttribute in interface TemplateController

getContentAttribute

public java.lang.String getContentAttribute(java.lang.String attributeName)
This method deliveres a String with the content-attribute asked for if it exists in the content defined in the url-parameter contentId.

Specified by:
getContentAttribute in interface TemplateController

getContentAttribute

public java.lang.String getContentAttribute(java.lang.String contentBindningName,
                                            java.lang.String attributeName)
This method deliveres a String with the content-attribute asked for. As the siteNode can have multiple bindings as well as a content as a parameter this parameter requires a bindingName which refers to the AvailableServiceBinding.name-attribute.

Specified by:
getContentAttribute in interface TemplateController

getContentAttribute

public java.lang.String getContentAttribute(java.lang.Integer contentId,
                                            java.lang.String attributeName)
This method deliveres a String with the content-attribute asked for. As the siteNode can have multiple bindings as well as a content as a parameter this parameter requires a bindingName which refers to the AvailableServiceBinding.name-attribute.

Specified by:
getContentAttribute in interface TemplateController

getParsedContentAttribute

public java.lang.String getParsedContentAttribute(java.lang.String attributeName)
This method deliveres a String with the content-attribute asked for after it has been parsed and all special tags have been converted. As the siteNode can have multiple bindings as well as a content as a parameter this parameter requires a bindingName which refers to the AvailableServiceBinding.name-attribute.

Specified by:
getParsedContentAttribute in interface TemplateController

getParsedContentAttribute

public java.lang.String getParsedContentAttribute(java.lang.String contentBindningName,
                                                  java.lang.String attributeName)
This method deliveres a String with the content-attribute asked for after it has been parsed and all special tags have been converted. As the siteNode can have multiple bindings as well as a content as a parameter this parameter requires a bindingName which refers to the AvailableServiceBinding.name-attribute.

Specified by:
getParsedContentAttribute in interface TemplateController

getParsedContentAttribute

public java.lang.String getParsedContentAttribute(java.lang.Integer contentId,
                                                  java.lang.String attributeName)
This method deliveres a String with the content-attribute asked for after it has been parsed and all special tags have been converted. The attribute is fetched from the specified content.

Specified by:
getParsedContentAttribute in interface TemplateController

getAssetKeys

public java.util.Collection getAssetKeys(java.lang.String contentBindningName)
This method deliveres a list of strings which represents all assetKeys for a content.

Specified by:
getAssetKeys in interface TemplateController

getAssetUrl

public java.lang.String getAssetUrl(java.lang.String contentBindningName)
This method deliveres a String with the URL to the digital asset asked for. As the siteNode can have multiple bindings as well as a content as a parameter this parameter requires a bindingName which refers to the AvailableServiceBinding.name-attribute.

Specified by:
getAssetUrl in interface TemplateController

getEncodedUrl

public java.lang.String getEncodedUrl(java.lang.String s,
                                      java.lang.String enc)
Specified by:
getEncodedUrl in interface TemplateController

getAssetUrl

public java.lang.String getAssetUrl(java.lang.Integer contentId)
This method deliveres a String with the URL to the digital asset asked for.

Specified by:
getAssetUrl in interface TemplateController

getAssetUrl

public java.lang.String getAssetUrl(java.lang.Integer contentId,
                                    java.lang.String assetKey)
This method deliveres a String with the URL to the digital asset asked for.

Specified by:
getAssetUrl in interface TemplateController

getAssetUrl

public java.lang.String getAssetUrl(java.lang.String contentBindningName,
                                    int index)
This method deliveres a String with the URL to the digital asset asked for. As the siteNode can have multiple bindings as well as a content as a parameter this parameter requires a bindingName which refers to the AvailableServiceBinding.name-attribute.

Specified by:
getAssetUrl in interface TemplateController

getAssetUrl

public java.lang.String getAssetUrl(java.lang.String contentBindningName,
                                    java.lang.String assetKey)
This method deliveres a String with the URL to the digital asset asked for. As the siteNode can have multiple bindings as well as a content as a parameter this parameter requires a bindingName which refers to the AvailableServiceBinding.name-attribute.

Specified by:
getAssetUrl in interface TemplateController

getInlineAssetUrl

public java.lang.String getInlineAssetUrl(java.lang.String assetKey)
This method deliveres a String with the URL to the digital asset asked for. In this special case the image is fetched from the article being generated. This means that this method only is of interest if you have attached assets to either a template or to an content and are useing parsedContentAttribute.


getAssetFileSize

public java.lang.Integer getAssetFileSize(java.lang.Integer contentId)
Specified by:
getAssetFileSize in interface TemplateController

getAssetFileSize

public java.lang.Integer getAssetFileSize(java.lang.Integer contentId,
                                          java.lang.String assetKey)
Specified by:
getAssetFileSize in interface TemplateController

getAssetFileSize

public java.lang.Integer getAssetFileSize(java.lang.String contentBindningName,
                                          int index)
Specified by:
getAssetFileSize in interface TemplateController

getAssetFileSize

public java.lang.Integer getAssetFileSize(java.lang.String contentBindningName,
                                          java.lang.String assetKey)
Specified by:
getAssetFileSize in interface TemplateController

getRelatedContents

public java.util.List getRelatedContents(java.lang.String attributeName)
This method gets a List of related contents defined in an attribute as an xml-definition. This is an ugly method right now. Later we should have xmlDefinitions that are fully qualified so it can be used to access other systems than our own.


getArchiveBaseUrl

public java.lang.String getArchiveBaseUrl(java.lang.String contentBindningName,
                                          java.lang.String assetKey)
This method deliveres a String with the URL to the base path of the directory resulting from an unpacking of a uploaded zip-digitalAsset.

Specified by:
getArchiveBaseUrl in interface TemplateController

getArchiveBaseUrl

public java.lang.String getArchiveBaseUrl(java.lang.Integer contentId,
                                          java.lang.String assetKey)
This method deliveres a String with the URL to the base path of the directory resulting from an unpacking of a uploaded zip-digitalAsset.

Specified by:
getArchiveBaseUrl in interface TemplateController

getArchiveEntries

public java.util.Vector getArchiveEntries(java.lang.Integer contentId,
                                          java.lang.String assetKey)
Specified by:
getArchiveEntries in interface TemplateController

getArchiveBaseUrl

public java.lang.String getArchiveBaseUrl(java.lang.String contentBindningName,
                                          int index,
                                          java.lang.String assetKey)
This method deliveres a String with the URL to the base path of the directory resulting from an unpacking of a uploaded zip-digitalAsset.

Specified by:
getArchiveBaseUrl in interface TemplateController

getContentAttributeAsImageUrl

public java.lang.String getContentAttributeAsImageUrl(java.lang.String contentBindningName,
                                                      java.lang.String attributeName,
                                                      int canvasWidth,
                                                      int canvasHeight)
This method deliveres a String with the content-attribute asked for generated as a gif-file. That is - the text is printed as an image. You can specify a number of things to control the generation. Just experiment and the names are pretty much self explainatory. The method checks if a previous file exists that has the same attributes as the wanted one and if so - we don't generate it again. TODO: consider implement a more general getTextAsImageUrl so we dont need a zillion different variants for different ways to access the contentAttribute. (we need to calculate a unique string from the text and all the other stuff.)

Specified by:
getContentAttributeAsImageUrl in interface TemplateController

getContentAttributeAsImageUrl

public java.lang.String getContentAttributeAsImageUrl(java.lang.String contentBindningName,
                                                      java.lang.String attributeName,
                                                      int canvasWidth,
                                                      int canvasHeight,
                                                      int textStartPosX,
                                                      int textStartPosY,
                                                      int textWidth,
                                                      int textHeight,
                                                      java.lang.String fontName,
                                                      int fontStyle,
                                                      int fontSize,
                                                      java.lang.String foregroundColor,
                                                      java.lang.String backgroundColor)
Specified by:
getContentAttributeAsImageUrl in interface TemplateController

getContentAttributeAsImageUrl

public java.lang.String getContentAttributeAsImageUrl(java.lang.Integer contentId,
                                                      java.lang.String attributeName,
                                                      int canvasWidth,
                                                      int canvasHeight,
                                                      int textStartPosX,
                                                      int textStartPosY,
                                                      int textWidth,
                                                      int textHeight,
                                                      java.lang.String fontName,
                                                      int fontStyle,
                                                      int fontSize,
                                                      java.lang.String foregroundColor,
                                                      java.lang.String backgroundColor)
Specified by:
getContentAttributeAsImageUrl in interface TemplateController

getContentAttributeAsImageUrl

public java.lang.String getContentAttributeAsImageUrl(java.lang.String contentBindningName,
                                                      java.lang.String attributeName,
                                                      int canvasWidth,
                                                      int canvasHeight,
                                                      int textStartPosX,
                                                      int textStartPosY,
                                                      int textWidth,
                                                      int textHeight,
                                                      java.lang.String fontName,
                                                      int fontStyle,
                                                      int fontSize,
                                                      java.awt.Color foregroundColor,
                                                      java.awt.Color backgroundColor)
Specified by:
getContentAttributeAsImageUrl in interface TemplateController

getContentAttributeAsImageUrl

public java.lang.String getContentAttributeAsImageUrl(java.lang.Integer contentId,
                                                      java.lang.String attributeName,
                                                      int canvasWidth,
                                                      int canvasHeight,
                                                      int textStartPosX,
                                                      int textStartPosY,
                                                      int textWidth,
                                                      int textHeight,
                                                      java.lang.String fontName,
                                                      int fontStyle,
                                                      int fontSize,
                                                      java.awt.Color foregroundColor,
                                                      java.awt.Color backgroundColor)
Specified by:
getContentAttributeAsImageUrl in interface TemplateController

getStringAsImageUrl

public java.lang.String getStringAsImageUrl(java.lang.String text,
                                            int canvasWidth,
                                            int canvasHeight,
                                            int textStartPosX,
                                            int textStartPosY,
                                            int textWidth,
                                            int textHeight,
                                            java.lang.String fontName,
                                            int fontStyle,
                                            int fontSize,
                                            java.awt.Color foregroundColor,
                                            java.awt.Color backgroundColor)
This method deliveres a String with the content-attribute asked for generated as a png-file. That is - the text is printed as an image. You can specify a number of things to control the generation. Just experiment and the names are pretty much self explainatory. The method checks if a previous file exists that has the same attributes as the wanted one and if so - we don't generate it again.

Specified by:
getStringAsImageUrl in interface TemplateController

getPageUrl

public java.lang.String getPageUrl(java.lang.String structureBindningName)
This method deliveres a String with the URL to the page asked for. As the siteNode can have multiple bindings the method requires a bindingName which refers to the AvailableServiceBinding.name-attribute.

Specified by:
getPageUrl in interface TemplateController

getPageUrl

public java.lang.String getPageUrl(WebPage webpage,
                                   java.lang.Integer contentId)
This method just gets a new URL but with the given contentId in it.

Specified by:
getPageUrl in interface TemplateController

getPageBaseUrl

public java.lang.String getPageBaseUrl(java.lang.String structureBindningName)
This method deliveres a String with the URL to the page asked for. As the siteNode can have multiple bindings the method requires a bindingName which refers to the AvailableServiceBinding.name-attribute.

Specified by:
getPageBaseUrl in interface TemplateController

getSiteNodeId

public java.lang.Integer getSiteNodeId(java.lang.String structureBindningName)
Getter for the siteNodeId on a specific bound page

Specified by:
getSiteNodeId in interface TemplateController

getContentId

public java.lang.Integer getContentId(java.lang.String contentBindningName)
Getter for bound contentId for a binding


getChildContents

public java.util.Collection getChildContents(java.lang.Integer contentId,
                                             boolean includeFolders)
This method gets the children of a content.


getContentId

public java.lang.Integer getContentId(java.lang.Integer siteNodeId,
                                      java.lang.String contentBindningName)
Getter for bound contentId for a binding on a special siteNode


getPageUrl

public java.lang.String getPageUrl(java.lang.String structureBindningName,
                                   java.lang.Integer contentId)
This method deliveres a String with the URL to the page asked for. As the siteNode can have multiple bindings the method requires a bindingName which refers to the AvailableServiceBinding.name-attribute. This method also allows the user to specify that the content is important. This method is mostly used for master/detail-pages.

Specified by:
getPageUrl in interface TemplateController

getPageUrlOnPosition

public java.lang.String getPageUrlOnPosition(java.lang.String structureBindningName,
                                             int position)
This method deliveres a String with the URL to the page asked for. As the siteNode can have multiple bindings the method requires a bindingName and also allows the user to specify a special siteNode in an ordered collection. which refers to the AvailableServiceBinding.name-attribute.

Specified by:
getPageUrlOnPosition in interface TemplateController

getPageUrl

public java.lang.String getPageUrl(java.lang.String structureBindningName,
                                   int position,
                                   java.lang.Integer contentId)
This method deliveres a String with the URL to the page asked for. As the siteNode can have multiple bindings the method requires a bindingName and also allows the user to specify a special siteNode in an ordered collection. which refers to the AvailableServiceBinding.name-attribute. This method also allows the user to specify that the content is important. This method is mostly used for master/detail-pages.

Specified by:
getPageUrl in interface TemplateController

getCurrentPageUrl

public java.lang.String getCurrentPageUrl()
This method deliveres a new url pointing to the same address as now but in the language corresponding to the code sent in.

Specified by:
getCurrentPageUrl in interface TemplateController

getPageUrl

public java.lang.String getPageUrl(java.lang.Integer siteNodeId,
                                   java.lang.Integer languageId,
                                   java.lang.Integer contentId)
This method deliveres a new url pointing to the same address as now but with new parameters.

Specified by:
getPageUrl in interface TemplateController

getCurrentPagePath

public java.lang.String getCurrentPagePath()
This method constructs a string representing the path to the page with respect to where in the structure the page is. It also takes the page title into consideration.

Specified by:
getCurrentPagePath in interface TemplateController

getPageUrlAfterLanguageChange

public java.lang.String getPageUrlAfterLanguageChange(java.lang.String languageCode)
This method deliveres a new url pointing to the same address as now but in the language corresponding to the code sent in.

Specified by:
getPageUrlAfterLanguageChange in interface TemplateController

getPageTitle

public java.lang.String getPageTitle()
This method deliveres a String with the Navigation title the page the user are on has. The navigation-title is fetched from the meta-info-content bound to the site node.

Specified by:
getPageTitle in interface TemplateController

getPageNavTitle

public java.lang.String getPageNavTitle(java.lang.String structureBindningName)
This method deliveres a String with the Navigation title the page asked for has. As the siteNode can have multiple bindings the method requires a bindingName which refers to the AvailableServiceBinding.name-attribute. The navigation-title is fetched from the meta-info-content bound to the site node.

Specified by:
getPageNavTitle in interface TemplateController

getPageNavTitle

public java.lang.String getPageNavTitle(java.lang.Integer siteNodeId)
This method deliveres a String with the Navigation title the page asked for has. The navigation-title is fetched from the meta-info-content bound to the site node.

Specified by:
getPageNavTitle in interface TemplateController

getPageNavTitle

public java.lang.String getPageNavTitle(java.lang.String structureBindningName,
                                        int index)
This method deliveres a String with the Navigation title the page asked for has. As the siteNode can have multiple bindings the method requires a bindingName and a collection index. The navigation-title is fetched from the meta-info-content bound to the site node.

Specified by:
getPageNavTitle in interface TemplateController

getIsPageCacheDisabled

public boolean getIsPageCacheDisabled()
This method returns true if the page in question (ie sitenode) has page-caching disabled. This is essential to turn off when you have a dynamic page like an external application or searchresult.

Specified by:
getIsPageCacheDisabled in interface TemplateController

getPageContentType

public java.lang.String getPageContentType()
This method returns the contenttype this page should return. This is important when sending assets or css:contents.

Specified by:
getPageContentType in interface TemplateController

getIsPageProtected

public boolean getIsPageProtected()
This method returns true if the page in question (ie sitenode) has it's protected property enabled. This is essential when checking if we should authenticate users before allowing them access.

Specified by:
getIsPageProtected in interface TemplateController

getAvailableLanguages

public java.util.List getAvailableLanguages()
This method returns a list of all languages available on the current site/repository.

Specified by:
getAvailableLanguages in interface TemplateController

getNodeAvailableLanguages

public java.util.List getNodeAvailableLanguages()
This method returns a list of all languages available on the current sitenode. The logic is that we check which languages are found in the meta-content in the current mode.

Specified by:
getNodeAvailableLanguages in interface TemplateController

getNodeAvailableLanguages

public java.util.List getNodeAvailableLanguages(java.lang.Integer siteNodeId)
Specified by:
getNodeAvailableLanguages in interface TemplateController

getChildPages

public java.util.List getChildPages()
The method returns a list of WebPage-objects that is the children of the current siteNode. The method is great for navigation-purposes on a structured site.

Specified by:
getChildPages in interface TemplateController

getChildPages

public java.util.List getChildPages(java.lang.String structureBindingName)
The method returns a list of WebPage-objects that is the children of the given siteNode. The method is great for navigation-purposes on a structured site.


getChildPages

public java.util.List getChildPages(java.lang.Integer siteNodeId)
The method returns a list of WebPage-objects that is the children of the given siteNode. The method is great for navigation-purposes on a structured site.


getBoundPages

public java.util.List getBoundPages(java.lang.String structureBindningName)
Specified by:
getBoundPages in interface TemplateController

getBoundPages

public java.util.List getBoundPages(java.lang.Integer siteNodeId,
                                    java.lang.String structureBindningName)
This methods get a list of bound pages with the structureBindningName sent in which resides on the siteNodeId sent in.

Specified by:
getBoundPages in interface TemplateController

getLocalizedBoundPages

public java.util.List getLocalizedBoundPages(java.lang.String structureBindningName)
The method returns a list of WebPage-objects that is the bound sitenodes of named binding. The method is great for navigation-purposes on any site. We also filter out all pages that don't have a localized version of the page meta-content.

Specified by:
getLocalizedBoundPages in interface TemplateController

getBoundContent

public org.infoglue.cms.entities.content.ContentVO getBoundContent(java.lang.String structureBindningName)
The method returns a single ContentVO-objects that is the bound content of named binding. It's used for getting one content.

Specified by:
getBoundContent in interface TemplateController

getBoundContents

public java.util.List getBoundContents(java.lang.String structureBindningName)
The method returns a list of ContentVO-objects that is the bound content of named binding. The method is great for collection-pages on any site.

Specified by:
getBoundContents in interface TemplateController

getBoundFolderContents

public java.util.List getBoundFolderContents(java.lang.String structureBindningName,
                                             boolean searchRecursive,
                                             java.lang.String sortAttribute,
                                             java.lang.String sortOrder)
The method returns a list of ContentVO-objects that is children to the bound content of named binding. The method is great for collection-pages on any site where you want to bind to a folder containing all contents to list. You can also state if the method should recurse into subfolders and how the contents should be sorted. The recursion only deals with three levels at the moment for performance-reasons.

Specified by:
getBoundFolderContents in interface TemplateController

getBoundFolderContents

public java.util.List getBoundFolderContents(java.lang.Integer siteNodeId,
                                             java.lang.String structureBindningName,
                                             boolean searchRecursive,
                                             java.lang.String sortAttribute,
                                             java.lang.String sortOrder)
The method returns a list of ContentVO-objects that is children to the bound content of named binding on the siteNode sent in. The method is great for collection-pages on any site where you want to bind to a folder containing all contents to list. You can also state if the method should recurse into subfolders and how the contents should be sorted. The recursion only deals with three levels at the moment for performance-reasons.

Specified by:
getBoundFolderContents in interface TemplateController

getContentTypeDefinitionVO

public org.infoglue.cms.entities.management.ContentTypeDefinitionVO getContentTypeDefinitionVO(java.lang.Integer contentId)
The method returns the ContentTypeVO-objects of the given contentId.

Specified by:
getContentTypeDefinitionVO in interface TemplateController

getBoundPage

public WebPage getBoundPage(java.lang.String structureBindningName,
                            int position)
The method returns a list of WebPage-objects that is the bound sitenodes of named binding. The method is great for navigation-purposes on any site. Improve later so the list is cached once for every instance. Otherwise we fetch the whole list again and its not necessairy as this controller only concerns one request.

Specified by:
getBoundPage in interface TemplateController

include

public java.lang.String include(java.lang.String contentBindningName,
                                java.lang.String attributeName)
This method allows the current template to include another template which is also rendered in the current context as if it were a part. The method assumes that the result can be cached. Use the other include method if you wish to be able to control if the result is cached or not.

Specified by:
include in interface TemplateController

include

public java.lang.String include(java.lang.String contentBindningName,
                                java.lang.String attributeName,
                                boolean cacheInclude)
Specified by:
include in interface TemplateController

include

public java.lang.String include(java.lang.String contentBindningName,
                                java.lang.String attributeName,
                                boolean cacheInclude,
                                java.lang.String cName,
                                java.lang.Object cObject)
This method allows the current template to include another template which is also rendered in the current context as if it were a part. Use this method if you wish to be able to control if the result is cached or not.

Specified by:
include in interface TemplateController

getUrlContent

public java.lang.String getUrlContent(java.lang.String url)
This method fetches a given URL contents. This means that we can include a external url's contents in our application.

Specified by:
getUrlContent in interface TemplateController

getUrlContent

public java.lang.String getUrlContent(java.lang.String url,
                                      boolean includeRequest)
This method fetches a given URL contents. This means that we can include a external url's contents in our application. This second method is used to not send extra params through.

Specified by:
getUrlContent in interface TemplateController

getObjectWithName

public java.lang.Object getObjectWithName(java.lang.String classname)
Specified by:
getObjectWithName in interface TemplateController

replace

public java.lang.String replace(java.lang.String originalString,
                                java.lang.String expressionToReplace,
                                java.lang.String newString)
This method lets a user substitute a string located in the page by a regular expression with another string. Very useful in certain situations.

Specified by:
replace in interface TemplateController

replace

public java.lang.String replace(java.lang.String originalString,
                                java.lang.String substring,
                                java.lang.String stringToReplace,
                                java.lang.String newString)
This method lets a user substitute a string located in the page by a regular expression with another string. This method also lets the user specify a subpart of the string to be able to be more specific. Very useful in certain situations.

Specified by:
replace in interface TemplateController

getIsParentToCurrent

public boolean getIsParentToCurrent(java.lang.Integer siteNodeId)
This method helps us find out if the current site node is the same or a child to the sent in one. So if the current page is a child(in the entire hierarchy below) below the siteNode sent in the method returns true. Useful for navigational purposes.

Specified by:
getIsParentToCurrent in interface TemplateController

getHasLocalizedVersion

public boolean getHasLocalizedVersion(java.lang.Integer contentId)
This method return true if a localized version with the current language exist

Specified by:
getHasLocalizedVersion in interface TemplateController

getFormAttributes

public java.util.List getFormAttributes(java.lang.String contentBindningName,
                                        java.lang.String attributeName)
This method returns a list of form elements/attributes based on the schema sent in. These consitutes the entire form and a template can then be used to render it in the appropriate technique.


getLanguageCode

public java.util.Locale getLanguageCode(java.lang.Integer languageId)
This method supplies a method to get the locale of the language currently in use.


getTemplateController

public TemplateController getTemplateController(java.lang.Integer siteNodeId,
                                                java.lang.Integer languageId,
                                                java.lang.Integer contentId)
                                         throws org.infoglue.cms.exception.SystemException,
                                                java.lang.Exception
This method should be much more sophisticated later and include a check to see if there is a digital asset uploaded which is more specialized and can be used to act as serverside logic to the template.

Specified by:
getTemplateController in interface TemplateController
org.infoglue.cms.exception.SystemException
java.lang.Exception

getTemplateController

public TemplateController getTemplateController(java.lang.Integer siteNodeId,
                                                java.lang.Integer languageId,
                                                java.lang.Integer contentId,
                                                javax.servlet.http.HttpServletRequest request)
                                         throws org.infoglue.cms.exception.SystemException,
                                                java.lang.Exception
Specified by:
getTemplateController in interface TemplateController
org.infoglue.cms.exception.SystemException
java.lang.Exception