Class Format

  extended by atg.nucleus.logging.VariableArgumentApplicationLoggingImpl
      extended by atg.nucleus.GenericService
          extended by atg.nucleus.TimedOperationService
              extended by atg.nucleus.servlet.ServletService
                  extended by atg.nucleus.servlet.HttpServletService
                      extended by atg.servlet.DynamoServlet
                          extended by atg.droplet.Format
All Implemented Interfaces:
NameContextBindingListener, NameContextElement, NameResolver, AdminableService, ApplicationLogging, atg.nucleus.logging.ApplicationLoggingSender, atg.nucleus.logging.TraceApplicationLogging, VariableArgumentApplicationLogging, ComponentNameResolver, Service, ServiceListener, ParameterServlet, java.util.EventListener, javax.servlet.Servlet

public class Format
extends DynamoServlet

This servlet uses java.text.MessageFormat to set a message string parameter that can be used when the output parameter is rendered.

A complete description of the parameters to the Format droplet is:

The format string used to construct the java.text.MessageFormat object. Typically this is just a string containing parameter names in curly braces showing where the arguments should be placed in the resulting message string, although many more advanced features and options are available. The syntax of the format is the same as that of java.text.MessageFormat, except that named parameters are used instead of numeric ones. See the java.text.MessageFormat javadoc for more details.

named parameters
The arguments to be formatted. These may be objects of any type, but are typically strings. The name of each parameter should correspond to a name inside curly braces in the format parameter.

The java.util.Locale object passed to the constructed MessageFormat object using the setLocale method. If this parameter is omitted, the locale of the request is used.

A simple example that concatentates two strings.

 <droplet bean="/atg/dynamo/droplet/Format">
   <param name="format" value="{first}{last}">
   <param name="first" value="bean:/MyComponent.firstString">
   <param name="last" value="bean:/MyComponent.secondString">
   <oparam name="output">
     The concatenated value is <valueof param="message"/>.

This example is adapted from the MessageFormat javadoc:

 <droplet bean="/atg/dynamo/droplet/Format">
   <param name="format"
     value="At {when,time} on {when,date}, there was {what} on planet {where,number,integer}.">
   <param name="where" value="bean:/MyComponent.location">
   <param name="when" value="bean:/">
   <param name="what" value="bean:/MyComponent.event">
   <oparam name="output">
     <valueof param="message"/>

If the "/MyComponent" component has properties "location", "date", and "event" with values "new Integer(7)", "new Date(System.currentTimeMillis())", and "a disturbance in the Force", the output might be

 At 12:30 PM on Jul 3, 2053, there was a disturbance in the Force on planet 7.

See Also:

Field Summary
static java.lang.String CLASS_VERSION
Fields inherited from class atg.servlet.DynamoServlet
mAllowCleanupRequest, mParameters
Fields inherited from class atg.nucleus.servlet.ServletService
Fields inherited from class atg.nucleus.GenericService
Fields inherited from interface atg.nucleus.logging.TraceApplicationLogging
Fields inherited from interface atg.nucleus.logging.ApplicationLogging
Constructor Summary
Method Summary
 int getCacheSize()
          Return the number of format strings to cache.
 void service(DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse)
          Evaluate the droplet.
 void setCacheSize(int pCacheSize)
          Set the number of format strings to cache.
Methods inherited from class atg.servlet.DynamoServlet
doDelete, doGet, doPost, doPut, getParameter, getParameters, getServletContext, service, service, setParameter
Methods inherited from class atg.nucleus.servlet.ServletService
destroy, getServletConfig, getServletInfo, init, setServletInfo
Methods inherited from class atg.nucleus.TimedOperationService
getAverageRequestHandlingTime, getHandledRequestCount, getRequestStartTime, getTotalRequestHandlingTime, isKeepingStatistics, notifyHandledRequest, resetStatistics, setKeepingStatistics
Methods inherited from class atg.nucleus.GenericService
addLogListener, createAdminServlet, doStartService, doStopService, getAbsoluteName, getAdminServlet, getLoggingForVlogging, getLogListenerCount, getLogListeners, getName, getNameContext, getNucleus, getRoot, getServiceConfiguration, getServiceInfo, isLoggingDebug, isLoggingError, isLoggingInfo, isLoggingTrace, isLoggingWarning, isRunning, logDebug, logDebug, logDebug, logError, logError, logError, logInfo, logInfo, logInfo, logTrace, logTrace, logTrace, logWarning, logWarning, logWarning, nameContextElementBound, nameContextElementUnbound, removeLogListener, reResolveThis, resolveName, resolveName, resolveName, resolveName, sendLogEvent, setLoggingDebug, setLoggingError, setLoggingInfo, setLoggingTrace, setLoggingWarning, setNucleus, setServiceInfo, startService, stopService
Methods inherited from class atg.nucleus.logging.VariableArgumentApplicationLoggingImpl
vlogDebug, vlogDebug, vlogDebug, vlogDebug, vlogError, vlogError, vlogError, vlogError, vlogInfo, vlogInfo, vlogInfo, vlogInfo, vlogTrace, vlogTrace, vlogTrace, vlogTrace, vlogWarning, vlogWarning, vlogWarning, vlogWarning
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Field Detail


public static java.lang.String CLASS_VERSION
Constructor Detail


public Format()
Method Detail


public int getCacheSize()
Return the number of format strings to cache.


public void setCacheSize(int pCacheSize)
Set the number of format strings to cache.


public void service(DynamoHttpServletRequest pRequest,
                    DynamoHttpServletResponse pResponse)
             throws javax.servlet.ServletException,
Evaluate the droplet.

service in class DynamoServlet
pRequest - the request to be processed
pResponse - the response object for this request
javax.servlet.ServletException - an application specific error occurred processing this request - an error occurred reading data from the request or writing data to the response.