public class ForEach extends DynamoServlet
Each iteration will set three parameters: index and count to the current loop index (0-based) and count (1-based), respectively, and element to the value of that element of the array.
A complete description of the parameters to the ForEach droplet are:
To sort on the key value if a Map or Dictionary value is used, use the name _key to refer to the key in the sortProperties list.
Modifier and Type | Field and Description |
---|---|
static ParameterName |
ARRAY |
static java.lang.String |
CLASS_VERSION |
static java.lang.String |
COUNT |
static ParameterName |
DEBUG |
static java.lang.String |
ELEMENT |
static ParameterName |
ELEMENT_NAME |
static ParameterName |
EMPTY |
static java.lang.String |
INDEX |
static ParameterName |
INDEX_NAME |
static java.lang.String |
KEY |
static ParameterName |
OUTPUT |
static ParameterName |
OUTPUT_END |
static ParameterName |
OUTPUT_START |
static ParameterName |
REVERSE_ORDER |
static java.lang.String |
SIZE |
static ParameterName |
SORT_PROPERTIES |
mAllowCleanupRequest, mParameters
SERVLET_INFO_KEY
SERVICE_INFO_KEY
DEFAULT_LOG_TRACE_STATUS
DEFAULT_LOG_DEBUG_STATUS, DEFAULT_LOG_ERROR_STATUS, DEFAULT_LOG_INFO_STATUS, DEFAULT_LOG_WARNING_STATUS
Constructor and Description |
---|
ForEach() |
Modifier and Type | Method and Description |
---|---|
java.lang.Object |
getArray(DynamoHttpServletRequest pReq)
Gets the array-like value (e.g., array, List, Enumeration)
to be used by this droplet from the request.
|
static java.lang.Object |
getSortedArray(DynamoServlet pServlet,
java.lang.Object pArrayParam,
DynamoHttpServletRequest pReq)
This method needs to be static because it is used by the
Range, Table, etc.
|
void |
service(DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
This method provides the default implementation of service,
by dispatching to conventionally named methods which begin
with "do".
|
protected void |
serviceArray(java.lang.Object[] pArray,
java.lang.String pIndexName,
java.lang.String pElementName,
DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Renders the foreach operation for array objects
|
protected void |
serviceCollection(java.util.Collection pCollection,
java.lang.String pIndexName,
java.lang.String pElementName,
DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Renders the foreach operation for Collection objects
|
protected void |
serviceDictionary(java.util.Dictionary pDictionary,
java.lang.String pIndexName,
java.lang.String pElementName,
DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Renders the foreach operation for Dictionary objects
|
protected void |
serviceEnumeration(java.util.Enumeration pEnumeration,
java.lang.String pIndexName,
java.lang.String pElementName,
DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Renders the foreach operation for Enumeration objects
|
protected void |
serviceIndexedList(java.util.List pIndexedList,
java.lang.String pIndexName,
java.lang.String pElementName,
DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Renders the foreach operation for indexed List objects,
i.e.
|
protected void |
serviceIterator(java.util.Iterator pIterator,
java.lang.String pIndexName,
java.lang.String pElementName,
DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Renders the foreach operation for Iterator objects
|
protected void |
serviceMap(java.util.Map pMap,
java.lang.String pIndexName,
java.lang.String pElementName,
DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Renders the foreach operation for Map objects
|
protected void |
serviceMapArray(java.util.Map.Entry[] pArray,
java.lang.String pIndexName,
java.lang.String pElementName,
DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Renders the foreach operation for array objects
|
protected void |
servicePrimitiveArray(java.lang.Object pArray,
java.lang.String pIndexName,
java.lang.String pElementName,
DynamoHttpServletRequest pRequest,
DynamoHttpServletResponse pResponse)
Renders the foreach operation for primitive array objects using the
reflection methods to access values in the array.
|
protected void |
setElementParameter(DynamoHttpServletRequest pReq,
java.lang.String pElementName,
java.lang.Object pValue)
This method can be overridden by sub-classes to customize how the
element parmeter is set.
|
doDelete, doGet, doPost, doPut, getParameter, getParameters, getServletContext, init, service, service, setParameter
destroy, getServletConfig, getServletInfo, setServletInfo
getAverageRequestHandlingTime, getHandledRequestCount, getRequestStartTime, getTotalRequestHandlingTime, isKeepingStatistics, notifyHandledRequest, resetStatistics, setKeepingStatistics
addLogListener, createAdminServlet, doStartService, doStopService, getAbsoluteName, getAdminServlet, getAdminServletOutputStreamEncoding, getLoggingForVlogging, getLogListenerCount, getLogListeners, getName, getNameContext, getNucleus, getRoot, getServiceConfiguration, getServiceInfo, isAdminServletUseServletOutputStream, 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, setAdminServletOutputStreamEncoding, setAdminServletUseServletOutputStream, setLoggingDebug, setLoggingError, setLoggingInfo, setLoggingTrace, setLoggingWarning, setNucleus, setServiceInfo, startService, stopService
vlogDebug, vlogDebug, vlogDebug, vlogDebug, vlogDebugTrace, vlogError, vlogError, vlogError, vlogError, vlogInfo, vlogInfo, vlogInfo, vlogInfo, vlogTrace, vlogTrace, vlogTrace, vlogTrace, vlogWarning, vlogWarning, vlogWarning, vlogWarning
public static java.lang.String CLASS_VERSION
public static final java.lang.String KEY
public static final java.lang.String ELEMENT
public static final java.lang.String INDEX
public static final java.lang.String COUNT
public static final java.lang.String SIZE
public static final ParameterName ARRAY
public static final ParameterName OUTPUT_START
public static final ParameterName OUTPUT_END
public static final ParameterName OUTPUT
public static final ParameterName DEBUG
public static final ParameterName EMPTY
public static final ParameterName SORT_PROPERTIES
public static final ParameterName REVERSE_ORDER
public static final ParameterName ELEMENT_NAME
public static final ParameterName INDEX_NAME
public java.lang.Object getArray(DynamoHttpServletRequest pReq)
protected void setElementParameter(DynamoHttpServletRequest pReq, java.lang.String pElementName, java.lang.Object pValue)
public void service(DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
DynamoServlet
service
in class DynamoServlet
pRequest
- the request to be processedpResponse
- the response object for this requestjavax.servlet.ServletException
- an application specific error occurred
processing this requestjava.io.IOException
- an error occurred reading data from the request
or writing data to the response.protected void serviceMapArray(java.util.Map.Entry[] pArray, java.lang.String pIndexName, java.lang.String pElementName, DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
pArray
- the object to iteratepIndexName
- the parameter name to use for the indexpElementName
- the parameter name to use for the elementpRequest
- the request to be processedpResponse
- the response object for this requestjavax.servlet.ServletException
- if an application specific error occurred processing this requestjava.io.IOException
- if an error occurred reading data from the request or writing data to the responseprotected void serviceArray(java.lang.Object[] pArray, java.lang.String pIndexName, java.lang.String pElementName, DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
pArray
- the object to iteratepIndexName
- the parameter name to use for the indexpElementName
- the parameter name to use for the elementpRequest
- the request to be processedpResponse
- the response object for this requestjavax.servlet.ServletException
- if an application specific error occurred processing this requestjava.io.IOException
- if an error occurred reading data from the request or writing data to the responseprotected void servicePrimitiveArray(java.lang.Object pArray, java.lang.String pIndexName, java.lang.String pElementName, DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
pArray
- the object to iteratepIndexName
- the parameter name to use for the indexpElementName
- the parameter name to use for the elementpRequest
- the request to be processedpResponse
- the response object for this requestjavax.servlet.ServletException
- if an application specific error occurred processing this requestjava.io.IOException
- if an error occurred reading data from the request or writing data to the responseprotected void serviceIndexedList(java.util.List pIndexedList, java.lang.String pIndexName, java.lang.String pElementName, DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
pList
- the object to iteratepIndexName
- the parameter name to use for the indexpElementName
- the parameter name to use for the elementpRequest
- the request to be processedpResponse
- the response object for this requestjavax.servlet.ServletException
- if an application specific error occurred processing this requestjava.io.IOException
- if an error occurred reading data from the request or writing data to the responseprotected void serviceCollection(java.util.Collection pCollection, java.lang.String pIndexName, java.lang.String pElementName, DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
pCollection
- the object to iteratepIndexName
- the parameter name to use for the indexpElementName
- the parameter name to use for the elementpRequest
- the request to be processedpResponse
- the response object for this requestjavax.servlet.ServletException
- if an application specific error occurred processing this requestjava.io.IOException
- if an error occurred reading data from the request or writing data to the responseprotected void serviceIterator(java.util.Iterator pIterator, java.lang.String pIndexName, java.lang.String pElementName, DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
pIterator
- the object to iteratepIndexName
- the parameter name to use for the indexpElementName
- the parameter name to use for the elementpRequest
- the request to be processedpResponse
- the response object for this requestjavax.servlet.ServletException
- if an application specific error occurred processing this requestjava.io.IOException
- if an error occurred reading data from the request or writing data to the responseprotected void serviceEnumeration(java.util.Enumeration pEnumeration, java.lang.String pIndexName, java.lang.String pElementName, DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
pEnumeration
- the object to iteratepIndexName
- the parameter name to use for the indexpElementName
- the parameter name to use for the elementpRequest
- the request to be processedpResponse
- the response object for this requestjavax.servlet.ServletException
- if an application specific error occurred processing this requestjava.io.IOException
- if an error occurred reading data from the request or writing data to the responseprotected void serviceMap(java.util.Map pMap, java.lang.String pIndexName, java.lang.String pElementName, DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
pMap
- the object to iteratepIndexName
- the parameter name to use for the indexpElementName
- the parameter name to use for the elementpRequest
- the request to be processedpResponse
- the response object for this requestjavax.servlet.ServletException
- if an application specific error occurred processing this requestjava.io.IOException
- if an error occurred reading data from the request or writing data to the responseprotected void serviceDictionary(java.util.Dictionary pDictionary, java.lang.String pIndexName, java.lang.String pElementName, DynamoHttpServletRequest pRequest, DynamoHttpServletResponse pResponse) throws javax.servlet.ServletException, java.io.IOException
pDictionary
- the object to iteratepIndexName
- the parameter name to use for the indexpElementName
- the parameter name to use for the elementpRequest
- the request to be processedpResponse
- the response object for this requestjavax.servlet.ServletException
- if an application specific error occurred processing this requestjava.io.IOException
- if an error occurred reading data from the request or writing data to the responsepublic static java.lang.Object getSortedArray(DynamoServlet pServlet, java.lang.Object pArrayParam, DynamoHttpServletRequest pReq)