com.uwyn.rife.engine
Class ElementSupport

java.lang.Object
  extended by com.uwyn.rife.engine.ElementSupport
All Implemented Interfaces:
ContinuableObject, Cloneable
Direct Known Subclasses:
Element

public class ElementSupport
extends Object
implements ContinuableObject, Cloneable

The ElementSupport class provides all the methods to communicate from inside an element with the context in which it is being executed.

Since:
1.0
Version:
$Revision: 3846 $
Author:
Geert Bevin (gbevin[remove] at uwyn dot com)
See Also:
ElementAware

Constructor Summary
protected ElementSupport()
           
 
Method Summary
 void addDateHeader(String name, long date)
          Sets a response header with the given name and date-value.
 void addHeader(String name, String value)
          Adds a response header with the given name and value.
 void addIntHeader(String name, int value)
          Adds a response header with the given name and integer value.
 void addOutputValue(String name, boolean value)
          Adds a boolean value to the current values of an output.
 void addOutputValue(String name, char value)
          Adds a char value to the current values of an output.
 void addOutputValue(String name, char[] value)
          Adds values from an array of chars to the current values of an output.
 void addOutputValue(String name, double value)
          Adds a double value to the current values of an output.
 void addOutputValue(String name, float value)
          Adds a float value to the current values of an output.
 void addOutputValue(String name, int value)
          Adds a int value to the current values of an output.
 void addOutputValue(String name, long value)
          Adds a long value to the current values of an output.
 void addOutputValue(String name, Object value)
          Adds a generic object value to the current values of an output.
 void addOutputValue(String name, String value)
          Adds a value to the current values of an output.
 void addOutputValues(String name, String[] values)
          Adds values to the current values of an output.
 void answer()
          Resumes the execution in the calling element by providing no answer object.
 void answer(Object answer)
          Resumes the execution in the calling element by providing an answer.
 Object call(String exit)
          Pauses the execution of the element and creates a new continuation.
 void child()
          Interrupts the execution in this element and transfers the execution to the child element.
 boolean childTriggered(String name, String[] values)
          Called by the engine when a child trigger occurs, this method should never be called explicitly.
 void clearBuffer()
          Clears the request text output buffer, all buffered text will be discarded.
 void clearNamedOutputBean(String name)
          Clears the outputs that correspond to the properties of a named output bean.
 void clearOutput(String name)
          Clears the output value of an output.
 void clearOutputBean(Class beanClass)
          Clears the outputs that correspond to the properties of an output bean.
 void clearOutputBean(Class beanClass, String prefix)
          Clears the outputs that correspond to the properties of an output bean, taking the provided prefix into account.
 Object clone()
          When continuations are resumed, they are by default cloned to ensure that their state is properly isolated.
 boolean cloneContinuations()
          Indicates whether continuations are cloned at each step.
 boolean containsHeader(String name)
          Returns a boolean indicating whether the named response header has already been set.
 void defer()
          Interrupts the execution in RIFE completely and defers it to the servlet container.
 boolean duringStepBack()
          Indicates whether the current element execution is a step back.
 void enableTextBuffer(boolean enabled)
          Enables or disables the response text buffer.
 String encodeHtml(String source)
          Transforms a provided String object into a new string, containing only valid HTML characters.
 String encodeXml(String source)
          Transforms a provided String object into a new string, containing only valid XML characters.
 List<String> evaluateExpressionRoleUserTags(Template template, String id)
          Evaluate the ROLEUSER expression tags in a template.
 void exit(String name)
          Activates an exit.
 void fillSubmissionBean(Object bean)
          Fills the properties of an existing bean with the parameter values of the submission that was sent.
 void fillSubmissionBean(Object bean, String prefix)
          Fills the properties of an existing bean with the parameter values of the submission that was sent, taking the provided prefix into account.
 void fillSubmissionBean(String submissionName, Object bean)
          Fills the properties of an existing bean with the parameter values of a submission.
 void fillSubmissionBean(String submissionName, Object bean, String prefix)
          Fills the properties of an existing bean with the parameter values of a submission, taking the provided prefix into account.
 void flush()
          Flushes the request text output buffer and the request output stream.
 void forward(String url)
          Interrupts the execution in this element and forwards the entire request to another URL.
 void generateEmptyForm(Template template, Class beanClass)
          Generates a form that corresponds to an empty instance of a bean class.
 void generateEmptyForm(Template template, Class beanClass, String prefix)
          Generates a form that corresponds to an empty instance of a bean class.
 void generateForm(Template template, Object beanInstance)
          Generates a form that corresponds to a bean instance.
 void generateForm(Template template, Object beanInstance, String prefix)
          Generates a form that corresponds to a bean instance.
 String getContentType()
          Returns the MIME type of the body of the request, or null if the type is not known.
 String getContinuationId()
          Returns the unique identifier of the current continuation.
 Cookie getCookie(String name)
          Retrieves a cookie.
 String getCookieValue(String name)
          Retrieves the value of a cookie.
 String getCookieValue(String name, String defaultValue)
          Retrieves the value of a named cookie, using a default value as fallback.
 boolean getCookieValueBoolean(String name)
          Retrieves the value of a named cookie and converts it to a boolean.
 boolean getCookieValueBoolean(String name, boolean defaultValue)
          Retrieves the value of a named cookie and converts it to a boolean, using a default value if no input value is present.
 double getCookieValueDouble(String name)
          Retrieves the value of a named cookie and converts it to a double.
 double getCookieValueDouble(String name, double defaultValue)
          Retrieves the value of a named cookie and converts it to a double, using a default value if no input value is present.
 float getCookieValueFloat(String name)
          Retrieves the value of a named cookie and converts it to a float.
 float getCookieValueFloat(String name, float defaultValue)
          Retrieves the value of a named cookie and converts it to a float, using a default value if no input value is present.
 int getCookieValueInt(String name)
          Retrieves the value of a named cookie and converts it to an integer.
 int getCookieValueInt(String name, int defaultValue)
          Retrieves the value of a named cookie and converts it to an integer, using a default value if no input value is present.
 long getCookieValueLong(String name)
          Retrieves the value of a named cookie and converts it to a long.
 long getCookieValueLong(String name, long defaultValue)
          Retrieves the value of a named cookie and converts it to a long, using a default value if no input value is present.
 Map<String,String> getCookieValues()
          Retrieves all current cookies names with their values.
 long getDateHeader(String name)
          Returns the value of the specified request header as a long value that represents a Date object.
 String getDeclarationName()
          Retrieves the declaration name of this element.
 ElementDeployer getDeployer()
          Retrieves the deployer of this element.
 Class getDeploymentClass()
          Retrieves the class that will be used for the deployment of the element.
 ElementContext getElementContext()
          Retrieves the context of this element.
 ElementInfo getElementInfo()
          Retrieves the declaration information of this element.
 Object getEmbedData()
          Retrieves the data that was passed on for the processing of this embedded element.
 String getEmbedDifferentiator()
          Retrieves the differentiator that was used to set this embedded element apart.
 ElementSupport getEmbeddingElement()
          Retrieves the element that is embedding the current element.
 Template getEmbeddingTemplate()
          Retrieves the template that is embedding the current element.
 Properties getEmbedProperties()
          Retrieves the embed value as a property list (see getEmbedValue() for more information about embed values).
 String getEmbedValue()
          Retrieves the current content of the value tag of this embedded element.
 CharSequence getExitFormParameters(String name)
          Generates the XHTML hidden form parameters for an exit.
 CharSequence getExitFormParameters(String name, String[] outputValues)
          Generates the hidden XHTML form parameters for an exit and overrides the current output values only for this method.
 CharSequence getExitFormParametersJavascript(String name, String[] outputValues)
          Generates Javascript that will generate hidden XHTML form parameters for an exit and overrides the current output values only for this method.
 CharSequence getExitFormUrl(String name)
          Generates a form action URL for an exit.
 CharSequence getExitFormUrl(String name, String pathinfo)
          Generates a form action URL for an exit and appends a pathinfo to the URL of the destination element.
 CharSequence getExitQueryUrl(String name)
          Generates a query URL for an exit.
 CharSequence getExitQueryUrl(String name, String pathinfo)
          Generates a query URL for an exit and appends a pathinfo to the URL of the destination element.
 CharSequence getExitQueryUrl(String name, String[] outputValues)
          Generates a query URL for an exit and overrides the current output values only for this method.
 CharSequence getExitQueryUrl(String name, String pathinfo, String[] outputValues)
          Generates a query URL for an exit and appends a pathinfo to the URL of the destination element.
 String getHeader(String name)
          Returns the value of the specified request header as a String.
 Enumeration getHeaderNames()
          Returns an enumeration of all the header names this request contains.
 Enumeration getHeaders(String name)
          Returns all the values of the specified request header as an Enumeration of String objects.
 Template getHtmlTemplate()
          Creates a new template instance of the enginehtml type, using the current element's absolute ID as the template name.
 Template getHtmlTemplate(String name)
          Creates a new template instance of the enginehtml type.
 Template getHtmlTemplate(String name, String encoding)
          Creates a new template instance of the enginehtml type.
 Template getHtmlTemplate(String name, String encoding, TemplateTransformer transformer)
          Creates a new template instance of the enginehtml type.
 Template getHtmlTemplate(String name, TemplateTransformer transformer)
          Creates a new template instance of the enginehtml type.
 HttpServletRequest getHttpServletRequest()
          Returns the current HttpServletRequest.
 HttpServletResponse getHttpServletResponse()
          Returns the current HttpServletResponse.
 InitConfig getInitConfig()
          Retrieves initialization configuration of this web application.
 String getInput(String name)
          Retrieves the value of an input.
 String getInput(String name, String defaultValue)
          Retrieves the value of an input and returns a default value if no input value is present
<BeanType> BeanType
getInputBean(Class<BeanType> beanClass)
          Retrieves an instance of an input bean and populates the properties with the input values.
<BeanType> BeanType
getInputBean(Class<BeanType> beanClass, String prefix)
          Retrieves an instance of an input bean and populates the properties with the input values, taking the provided prefix into account.
 boolean getInputBoolean(String name)
          Retrieves the value of an input and converts it to a boolean.
 boolean getInputBoolean(String name, boolean defaultValue)
          Retrieves the value of an input and converts it to a boolean, using a default value if no input value is present.
 Date getInputDate(String name)
          Retrieves the value of an input and converts it to a Date.
 Date getInputDate(String name, Date defaultValue)
          Retrieves the value of an input and converts it to a Date, using a default value if no input value is present.
 double getInputDouble(String name)
          Retrieves the value of an input and converts it to a double.
 double getInputDouble(String name, double defaultValue)
          Retrieves the value of an input and converts it to a double, using a default value if no input value is present.
 float getInputFloat(String name)
          Retrieves the value of an input and converts it to a float.
 float getInputFloat(String name, float defaultValue)
          Retrieves the value of an input and converts it to a float, using a default value if no input value is present.
 int getInputInt(String name)
          Retrieves the value of an input and converts it to an integer.
 int getInputInt(String name, int defaultValue)
          Retrieves the value of an input and converts it to an integer, using a default value if no input value is present.
 long getInputLong(String name)
          Retrieves the value of an input and converts it to a long.
 long getInputLong(String name, long defaultValue)
          Retrieves the value of an input and converts it to a long, using a default value if no input value is present.
<TargetType extends Serializable>
TargetType
getInputSerializable(String name)
          Retrieves the value of a serialized input.
<TargetType extends Serializable>
TargetType
getInputSerializable(String name, TargetType defaultValue)
          Retrieves the value of a serialized input and returns a default value if no input value is present
 String[] getInputValues(String name)
          Retrieves the values of an input.
 int getIntHeader(String name)
          Returns the value of the specified request header as an int.
 RequestMethod getMethod()
          Returns the method of this request.
<BeanType> BeanType
getNamedInputBean(String name)
          Retrieves an instance of a named input bean and populates the properties with the input values.
<BeanType> BeanType
getNamedSubmissionBean(String beanName)
          Retrieves an instance of a named submission bean for the current submission and populates the properties with the parameter values.
<BeanType> BeanType
getNamedSubmissionBean(String submissionName, String beanName)
          Retrieves an instance of a named submission bean and populates the properties with the parameter values.
 String[] getOutput(String name)
          Retrieves the value of the ouput.
 OutputStream getOutputStream()
          Retrieves an output stream to send binary data through the response.
 String getParameter(String name)
          Retrieves the value of a parameter.
 String getParameter(String name, String defaultValue)
          Retrieves the value of a parameter and returns a default value if no parameter value is present
 boolean getParameterBoolean(String name)
          Retrieves the value of a parameter and converts it to a boolean.
 boolean getParameterBoolean(String name, boolean defaultValue)
          Retrieves the value of a parameter and converts it to a boolean, using a default value if no parameter value is present.
 double getParameterDouble(String name)
          Retrieves the value of a parameter and converts it to a double.
 double getParameterDouble(String name, double defaultValue)
          Retrieves the value of a parameter and converts it to a double, using a default value if no parameter value is present.
 double[] getParameterDoubleValues(String name)
          Retrieves the values of a parameter as an array of doubles.
 float getParameterFloat(String name)
          Retrieves the value of a parameter and converts it to a float.
 float getParameterFloat(String name, float defaultValue)
          Retrieves the value of a parameter and converts it to a float, using a default value if no parameter value is present.
 float[] getParameterFloatValues(String name)
          Retrieves the values of a parameter as an array of floats.
 int getParameterInt(String name)
          Retrieves the value of a parameter and converts it to an integer.
 int getParameterInt(String name, int defaultValue)
          Retrieves the value of a parameter and converts it to an integer, using a default value if no parameter value is present.
 int[] getParameterIntValues(String name)
          Retrieves the values of a parameter as an array of integers.
 long getParameterLong(String name)
          Retrieves the value of a parameter and converts it to a long.
 long getParameterLong(String name, long defaultValue)
          Retrieves the value of a parameter and converts it to a long, using a default value if no parameter value is present.
 long[] getParameterLongValues(String name)
          Retrieves the values of a parameter as an array of longs.
 ArrayList<String> getParameterNames()
          Retrieves the names of all the parameters that are present.
 ArrayList<String> getParameterNames(String regexp)
          Retrieves the names of all the parameters that are present and that match a regular expression.
 String[] getParameterValues(String name)
          Retrieves the values of a parameter.
 String getPathInfo()
          Returns any extra path information associated with the URL the client sent when it made this request.
 Object getProperty(String name)
          Retrieves the value of an injected named property.
 Object getProperty(String name, Object defaultValue)
          Retrieves the value of an injected named property, using a default value as fallback.
 String getPropertyString(String name)
          Retrieves the value of an injected named property and converts it to a string.
 String getPropertyString(String name, String defaultValue)
          Retrieves the value of an injected named property and converts it to a string, using a default value as fallback.
<T> T
getPropertyTyped(String name, Class<T> type)
          Retrieves the value of an injected named property and converts it to the specified type.
<T> T
getPropertyTyped(String name, Class<T> type, T defaultValue)
          Retrieves the value of an injected named property and converts it to the specified type, using a default value as fallback.
 String getProtocol()
          Returns the name and version of the protocol the request uses in the form protocol/majorVersion.minorVersion, for example, HTTP/1.1.
 String getRemoteAddr()
          Returns the Internet Protocol (IP) address of the client or last proxy that sent the request.
 String getRemoteHost()
          Returns the fully qualified name of the client or the last proxy that sent the request.
 String getRemoteUser()
          Returns the login of the user making this request, if the user has been authenticated, or null if the user has not been authenticated.
 Object getRequestAttribute(String name)
          Returns the value of the named attribute as an Object, or null if no attribute of the given name exists.
 Enumeration getRequestAttributeNames()
          Returns an Enumeration containing the names of the attributes available to this request.
 String getRequestCharacterEncoding()
          Returns the name of the character encoding used in the body of this request.
 Locale getRequestLocale()
          Returns the preferred Locale that the client will accept content in, based on the Accept-Language header.
 Enumeration getRequestLocales()
          Returns an Enumeration of Locale objects indicating, in decreasing order starting with the preferred locale, the locales that are acceptable to the client based on the Accept-Language header.
 String getResponseCharacterEncoding()
          Returns the name of the character encoding (MIME charset) used for the body sent in this response.
 Locale getResponseLocale()
          Returns the locale specified for this response using the setResponseLocale(java.util.Locale) method.
 String getScheme()
          Returns the name of the scheme used to make this request, for example, http, https, or ftp.
 String getServerName()
          Returns the host name of the server to which the request was sent.
 int getServerPort()
          Returns the port number to which the request was sent.
 String getServerRootUrl()
          Returns the root URL of the server that is running this web applications.
 ServletContext getServletContext()
          Returns the ServletContext of this web application.
 Site getSite()
          Retrieves the site in which this element is declared.
 String getSourceName()
          Retrieves the source implementation name of this element.
 String getSubmission()
          Retrieves the name of the submission that was sent to this element
<BeanType> BeanType
getSubmissionBean(Class<BeanType> beanClass)
          Retrieves an instance of a submission bean and populates the properties with the parameter values.
<BeanType> BeanType
getSubmissionBean(Class<BeanType> beanClass, String prefix)
          Retrieves an instance of a submission bean and populates the properties with the parameter values, taking the provided prefix into account.
<BeanType> BeanType
getSubmissionBean(String submissionName, Class<BeanType> beanClass)
          Retrieves an instance of a submission bean and populates the properties with the parameter values.
<BeanType> BeanType
getSubmissionBean(String submissionName, Class<BeanType> beanClass, String prefix)
          Retrieves an instance of a submission bean and populates the properties with the parameter values, taking the provided prefix into account.
 CharSequence getSubmissionFormParameters(String name)
          Generates the hidden XHTML form parameters for a submission.
 CharSequence getSubmissionFormParameters(String name, String[] parameterValues)
          Generates the hidden XHTML form parameters for a submission and overrides the current output values only for this method.
 CharSequence getSubmissionFormParametersJavascript(String name, String[] parameterValues)
          Generates Javascript that will generate hidden XHTML form parameters for a submission and overrides the current output values only for this method.
 CharSequence getSubmissionFormUrl()
          Generates a form action URL for a submission.
 CharSequence getSubmissionFormUrl(String pathinfo)
          Generates a form action URL for a submission and appends a pathinfo to the URL of the element.
 CharSequence getSubmissionQueryUrl(String name)
          Generates a query URL for a submission.
 CharSequence getSubmissionQueryUrl(String name, String pathinfo)
          Generates a query URL for a submission and appends a pathinfo to the URL of the element.
 CharSequence getSubmissionQueryUrl(String name, String[] parameterValues)
          Generates a query URL for a submission with default parameter values.
 CharSequence getSubmissionQueryUrl(String name, String pathinfo, String[] parameterValues)
          Generates a query URL for a submission and appends a pathinfo to the URL of the element, default parameter values can also be added.
 ElementInfo getTarget()
          Retrieves the information of the target element of the active request.
 Template getTxtTemplate()
          Creates a new template instance of the enginetxt type, using the current element's absolute ID as the template name.
 Template getTxtTemplate(String name)
          Creates a new template instance of the enginetxt type.
 Template getTxtTemplate(String name, String encoding)
     &nb