public interface IndexedAccessDataContainer extends InputDataContainer
IndexedAccessDataContainer extends the read-only access to
input parameter from InputDataContainer by indexed access to input
parameter as well as output parameters. This is used to provide data
containers for activities (branches) in variable parallelism.
When starting a variable parallelism at runtime, the (parent) data container
of the split-node is wrapped by an IndexedAccessDataContainer
which in turn is referenced by the data containers created for each of the
parallel activities. This allows to transparently provide values to the
activities as well as gather the output parameters and provide them as lists
to the parent data container.
When terminating a variable parallelism all parallel activities must have
validated their written values,
and this data container needs to be flushed to
ensure that all session states have been stored appropriately.
Input parameters of type list may either be accessed as a whole via
InputDataContainer.retrieveUDT(SessionToken, String) which contain
Lists or indexed for retrieval of one element by methods of
this (sub-)interface. Since all output parameters are of type list, they need
to be stored by the storage methods of this interface. Additionally, also
savepoints and session states are supported for all activities. Internally
they need to be mapped the savepoints and session states of one application
to store them in the parent data context.
The storing of output parameters is synchronised to prevent concurrent changes of the list which in turn can lead to inconsistencies.
| Modifier and Type | Field and Description |
|---|---|
static long |
serialVersionUID
Generated ID for serialisation.
|
| Modifier and Type | Method and Description |
|---|---|
void |
flush(SessionToken session)
Flushes all the internally stored values that have not been saved to the
data manager yet.
|
DataContainer |
getWrappedDataContainer()
Gets the data container that is wrapped by this indexed access data
container, that is, the wrapped data container provides lists for the
indexed input parameters as well as (storing) lists for all output
parameters.
|
boolean |
ignoredValue(java.lang.String parameterName,
int index)
Returns whether the value of the element at the designated index at the
output parameter list of the designated name is or has not been set
(ignored) by the application.
|
void |
ignoreValue(SessionToken session,
java.lang.String parameterName,
int index)
Ignores the value of the element at the designated index at the output
parameter list of the designated name.
|
boolean |
isNull(SessionToken session,
java.lang.String parameterName,
int index)
Returns whether the value of the element at the designated index at the
input parameter list of the designated name is NULL.
|
boolean |
retrieveBoolean(SessionToken session,
java.lang.String parameterName,
int index)
Retrieves the boolean value of the element of type BOOLEAN at the
designated index at the input parameter list of the designated name.
|
java.util.Date |
retrieveDate(SessionToken session,
java.lang.String parameterName,
int index)
Retrieves the date value of the element of type DATE at the designated
index at the input parameter list of the designated name.
|
double |
retrieveFloat(SessionToken session,
java.lang.String parameterName,
int index)
Retrieves the double value of the element of type FLOAT at the designated
index at the input parameter list of the designated name.
|
long |
retrieveInteger(SessionToken session,
java.lang.String parameterName,
int index)
Retrieves the long value of the element of type INTEGER at the designated
index at the input parameter list of the designated name.
|
java.lang.String |
retrieveString(SessionToken session,
java.lang.String parameterName,
int index)
Retrieves the String value of the element of type STRING at the designated
index at the input parameter list of the designated name.
|
UDTValue |
retrieveUDT(SessionToken session,
java.lang.String parameterName,
int index)
Retrieves (the proxy of) the value of the element of user-defined type
(UDT) at the designated index at the input parameter list of the designated
name.
|
java.net.URI |
retrieveURI(SessionToken session,
java.lang.String parameterName,
int index)
Retrieves the URI value of the element of type URI at the designated
index at the input parameter list of the designated name.
|
void |
storeBoolean(SessionToken session,
java.lang.String parameterName,
int index,
boolean value)
Stores the BOOLEAN value to the element at the designated index at the
output parameter list of the designated name.
|
void |
storeDate(SessionToken session,
java.lang.String parameterName,
int index,
java.util.Date value)
Stores the DATE value to the element at the designated index at the
output parameter list of the designated name.
|
boolean |
storedBoolean(java.lang.String parameterName,
int index)
Retrieves the boolean value of the element at the designated index at the
output parameter list of the designated name stored before.
|
java.util.Date |
storedDate(java.lang.String parameterName,
int index)
Retrieves the date value of the element at the designated index at the
output parameter list of the designated name stored before.
|
double |
storedFloat(java.lang.String parameterName,
int index)
Retrieves the double value of the element at the designated index at the
output parameter list of the designated name stored before.
|
long |
storedInteger(java.lang.String parameterName,
int index)
Retrieves the long value of the element at the designated index at the
output parameter list of the designated name stored before.
|
java.lang.String |
storedString(java.lang.String parameterName,
int index)
Retrieves the String value of the element at the designated index at the
output parameter list of the designated name stored before.
|
UDTValue |
storedUDT(java.lang.String parameterName,
int index)
Retrieves (the proxy of) the value of the element of user-defined type at
the designated index at the output parameter list of the designated name
stored before.
|
java.net.URI |
storedURI(java.lang.String parameterName,
int index)
Retrieves the URI value of the element at the designated index at the
output parameter list of the designated name stored before.
|
void |
storeFloat(SessionToken session,
java.lang.String parameterName,
int index,
double value)
Stores the FLOAT value to the element at the designated index at the output
parameter list of the designated name.
|
void |
storeInteger(SessionToken session,
java.lang.String parameterName,
int index,
long value)
Stores the INTEGER value to the element at the designated index at the
output parameter list of the designated name.
|
void |
storeString(SessionToken session,
java.lang.String parameterName,
int index,
java.lang.String value)
Stores the STRING value to the element at the designated index at the
output parameter list of the designated name.
|
void |
storeUDT(SessionToken session,
java.lang.String parameterName,
int index,
UDTValue value)
Stores the value of user-defined type to the element at the designated
index at the output parameter list of the designated name.
|
void |
storeURI(SessionToken session,
java.lang.String parameterName,
int index,
java.net.URI value)
Stores the URI value to the element at the designated index at the output
parameter list of the designated name.
|
boolean |
validatedAll()
Returns whether all parallel activities have validated their data.
|
void |
validateWrittenValues(SessionToken session,
int index)
Validates and verifies all values written by the application identified by
the designated index.
|
isNull, retrieveBoolean, retrieveDate, retrieveFloat, retrieveInteger, retrieveString, retrieveUDT, retrieveURIgetUserAttributes, getUserAttributeValue, removeUserAttributeValue, setUserAttributeValuegetPluginData, getPluginDatas, getSupportedPluginsstatic final long serialVersionUID
DataContainer getWrappedDataContainer()
boolean isNull(SessionToken session,
java.lang.String parameterName,
int index)
throws NoSuchParameterException
session - The session which is used to check for access rights on this
method.parameterName - The name of the list input parameter to check an
element of for NULL.index - The index in the list of the element which to check for null.true if the value of the designated input parameter or
the element at the designated index is NULL and therefore has not
been written or has been consumed yet.NoSuchParameterException - If the input parameter of the designated
name does not exist or the index is outside of the bounds of the
list, a NoSuchParameterException will be thrown.InputDataContainer.isNull(SessionToken, String)long retrieveInteger(SessionToken session,
java.lang.String parameterName,
int index)
throws InvalidDataTypeException,
NoSuchParameterException
session - The session which is used to check for access rights on this
method.parameterName - The name of the list input parameter to read an
element of.index - The index of the element in the list of which to retrieve the
value.long.InvalidDataTypeException - If the designated input parameter is not
of type list of INTEGER, an InvalidDataTypeException
will be raised.NoSuchParameterException - If the input parameter of the designated
name does not exist or the index is outside of the bounds of the
list, a NoSuchParameterException will be thrown.InputDataContainer.retrieveInteger(SessionToken, String)double retrieveFloat(SessionToken session,
java.lang.String parameterName,
int index)
throws InvalidDataTypeException,
NoSuchParameterException
session - The session which is used to check for access rights on this
method.parameterName - The name of the list input parameter to read an
element of.index - The index of the element in the list of which to retrieve the
value.double.InvalidDataTypeException - If the designated input parameter is not
of type list of FLOAT, an InvalidDataTypeException
will be raised.NoSuchParameterException - If the input parameter of the designated
name does not exist or the index is outside of the bounds of the
list, a NoSuchParameterException will be thrown.InputDataContainer.retrieveFloat(SessionToken, String)boolean retrieveBoolean(SessionToken session,
java.lang.String parameterName,
int index)
throws InvalidDataTypeException,
NoSuchParameterException
session - The session which is used to check for access rights on this
method.parameterName - The name of the list input parameter to read an
element of.index - The index of the element in the list of which to retrieve the
value.boolean.InvalidDataTypeException - If the designated input parameter is not
of type list of FLOAT, an InvalidDataTypeException
will be raised.NoSuchParameterException - If the input parameter of the designated
name does not exist or the index is outside of the bounds of the
list, a NoSuchParameterException will be thrown.InputDataContainer.retrieveBoolean(SessionToken, String)java.lang.String retrieveString(SessionToken session,
java.lang.String parameterName,
int index)
throws InvalidDataTypeException,
NoSuchParameterException
session - The session which is used to check for access rights on this
method.parameterName - The name of the list input parameter to read an
element of.index - The index of the element in the list of which to retrieve the
value.String.InvalidDataTypeException - If the designated input parameter is not
of type list of STRING, an InvalidDataTypeException
will be raised.NoSuchParameterException - If the input parameter of the designated
name does not exist or the index is outside of the bounds of the
list, a NoSuchParameterException will be thrown.InputDataContainer.retrieveString(SessionToken, String)java.util.Date retrieveDate(SessionToken session,
java.lang.String parameterName,
int index)
throws InvalidDataTypeException,
NoSuchParameterException
session - The session which is used to check for access rights on this
method.parameterName - The name of the list input parameter to read an
element of.index - The index of the element in the list of which to retrieve the
value.java.util.Date.InvalidDataTypeException - If the designated input parameter is not
of type list of DATE, an InvalidDataTypeException
will be raised.NoSuchParameterException - If the input parameter of the designated
name does not exist or the index is outside of the bounds of the
list, a NoSuchParameterException will be thrown.InputDataContainer.retrieveDate(SessionToken, String)java.net.URI retrieveURI(SessionToken session,
java.lang.String parameterName,
int index)
throws InvalidDataTypeException,
NoSuchParameterException
session - The session which is used to check for access rights on this
method.parameterName - The name of the list input parameter to read an
element of.index - The index of the element in the list of which to retrieve the
value.URI.InvalidDataTypeException - If the designated input parameter is not
of type list of URI, an InvalidDataTypeException
will be raised.NoSuchParameterException - If the input parameter of the designated
name does not exist or the index is outside of the bounds of the
list, a NoSuchParameterException will be thrown.InputDataContainer.retrieveURI(SessionToken, String)UDTValue retrieveUDT(SessionToken session, java.lang.String parameterName, int index) throws InvalidDataTypeException, NoSuchParameterException
session - The session which is used to check for access rights on this
method.parameterName - The name of the list input parameter to read an
element of.index - The index of the element in the list of which to retrieve the
value.UDTValue.InvalidDataTypeException - If the designated input parameter is not
of type list of USERDEFINED, an
InvalidDataTypeException will be raised.NoSuchParameterException - If the input parameter of the designated
name does not exist or the index is outside of the bounds of the
list, a NoSuchParameterException will be thrown.InputDataContainer.retrieveUDT(SessionToken, String)void ignoreValue(SessionToken session,
java.lang.String parameterName,
int index)
throws NoSuchParameterException
session - The session which is used to check for access rights on this
method.parameterName - The name of the list output parameter to ignore an
element of.index - The index of the element in the list of which to ignore the
value.NoSuchParameterException - If the output parameter of the designated
name does not exist or the index is outside of the bounds of the
list, a NoSuchParameterException will be thrown.DataContainer.ignoreValue(SessionToken, String)boolean ignoredValue(java.lang.String parameterName,
int index)
throws NoSuchParameterException
parameterName - The name of the list output parameter to check an
element for being unset.index - The index in the list of the element which to check for being
unset.true if the value of the element of the designated
list output parameter is or has not been written.NoSuchParameterException - If the output parameter of the designated
name does not exist or the index is outside of the bounds of the
list, a NoSuchParameterException will be thrown.DataContainer.ignoredValue(String)void storeInteger(SessionToken session,
java.lang.String parameterName,
int index,
long value)
throws InvalidDataTypeException,
NoSuchParameterException
session - The session which is used to check for access rights on this
method.parameterName - The name of the output parameter list to store an
element of.index - The index of the element for which to store the designated
value.value - The value as Java-type long and of ADEPT2-type
INTEGER of the corresponding output parameter list.InvalidDataTypeException - If the designated parameter is not of type
INTEGER, an InvalidDataTypeException will be raised.NoSuchParameterException - If the output parameter of the designated
name does not exist or the index is outside of the bounds of the
list, a NoSuchParameterException will be thrown.DataContainer.storeInteger(SessionToken, String, long)long storedInteger(java.lang.String parameterName,
int index)
throws InvalidDataTypeException,
NoSuchParameterException
parameterName - The name of the list output parameter to read an
element of stored before.index - The index of the element in the list of which to retrieve the
value stored before.long stored
before.InvalidDataTypeException - If the designated output parameter is not
of type list of INTEGER, an InvalidDataTypeException
will be raised.NoSuchParameterException - If the output parameter of the designated
name does not exist or the index is outside of the bounds of the
list, a NoSuchParameterException will be thrown.DataContainer.storedInteger(String)void storeFloat(SessionToken session,
java.lang.String parameterName,
int index,
double value)
throws InvalidDataTypeException,
NoSuchParameterException
session - The session which is used to check for access rights on this
method.parameterName - The name of the output parameter list to store an
element of.index - The index of the element for which to store the designated
value.value - The value as Java-type double and of ADEPT2-type
FLOAT of the corresponding output parameter list.InvalidDataTypeException - If the designated parameter is not of type
FLOAT, an InvalidDataTypeException will be raised.NoSuchParameterException - If the output parameter of the designated
name does not exist or the index is outside of the bounds of the
list, a NoSuchParameterException will be thrown.DataContainer.storeFloat(SessionToken, String, double)double storedFloat(java.lang.String parameterName,
int index)
throws InvalidDataTypeException,
NoSuchParameterException
parameterName - The name of the list output parameter to read an
element of stored before.index - The index of the element in the list of which to retrieve the
value stored before.double stored
before.InvalidDataTypeException - If the designated output parameter is not
of type list of FLOAT, an InvalidDataTypeException
will be raised.NoSuchParameterException - If the output parameter of the designated
name does not exist or the index is outside of the bounds of the
list, a NoSuchParameterException will be thrown.DataContainer.storedFloat(String)void storeBoolean(SessionToken session,
java.lang.String parameterName,
int index,
boolean value)
throws InvalidDataTypeException,
NoSuchParameterException
session - The session which is used to check for access rights on this
method.parameterName - The name of the output parameter list to store an
element of.index - The index of the element for which to store the designated
value.value - The value as Java-type boolean and of ADEPT2-type
BOOLEAN of the corresponding output parameter list.InvalidDataTypeException - If the designated parameter is not of type
BOOLEAN, an InvalidDataTypeException will be raised.NoSuchParameterException - If the output parameter of the designated
name does not exist or the index is outside of the bounds of the
list, a NoSuchParameterException will be thrown.DataContainer.storeBoolean(SessionToken, String, boolean)boolean storedBoolean(java.lang.String parameterName,
int index)
throws InvalidDataTypeException,
NoSuchParameterException
parameterName - The name of the list output parameter to read an
element of stored before.index - The index of the element in the list of which to retrieve the
value stored before.boolean stored
before.InvalidDataTypeException - If the designated output parameter is not
of type list of BOOLEAN, an InvalidDataTypeException
will be raised.NoSuchParameterException - If the output parameter of the designated
name does not exist or the index is outside of the bounds of the
list, a NoSuchParameterException will be thrown.DataContainer.storedBoolean(String)void storeString(SessionToken session,
java.lang.String parameterName,
int index,
java.lang.String value)
throws InvalidDataTypeException,
NoSuchParameterException
session - The session which is used to check for access rights on this
method.parameterName - The name of the output parameter list to store an
element of.index - The index of the element for which to store the designated
value.value - The value as Java-type String and of ADEPT2-type
STRING of the corresponding output parameter list.InvalidDataTypeException - If the designated parameter is not of type
STRING, an InvalidDataTypeException will be raised.NoSuchParameterException - If the output parameter of the designated
name does not exist or the index is outside of the bounds of the
list, a NoSuchParameterException will be thrown.DataContainer.storeString(SessionToken, String, String)java.lang.String storedString(java.lang.String parameterName,
int index)
throws InvalidDataTypeException,
NoSuchParameterException
parameterName - The name of the list output parameter to read an
element of stored before.index - The index of the element in the list of which to retrieve the
value stored before.String stored
before.InvalidDataTypeException - If the designated output parameter is not
of type list of STRING, an InvalidDataTypeException
will be raised.NoSuchParameterException - If the output parameter of the designated
name does not exist or the index is outside of the bounds of the
list, a NoSuchParameterException will be thrown.DataContainer.storedString(String)void storeDate(SessionToken session,
java.lang.String parameterName,
int index,
java.util.Date value)
throws InvalidDataTypeException,
NoSuchParameterException
session - The session which is used to check for access rights on this
method.parameterName - The name of the output parameter list to store an
element of.index - The index of the element for which to store the designated
value.value - The value as Java-type java.util.Date and of
ADEPT2-type DATE of the corresponding output parameter list.InvalidDataTypeException - If the designated parameter is not of type
DATE, an InvalidDataTypeException will be raised.NoSuchParameterException - If the output parameter of the designated
name does not exist or the index is outside of the bounds of the
list, a NoSuchParameterException will be thrown.DataContainer.storeDate(SessionToken, String, Date)java.util.Date storedDate(java.lang.String parameterName,
int index)
throws InvalidDataTypeException,
NoSuchParameterException
parameterName - The name of the list output parameter to read an
element of stored before.index - The index of the element in the list of which to retrieve the
value stored before.java.util.Date
stored before.InvalidDataTypeException - If the designated output parameter is not
of type list of DATE, an InvalidDataTypeException
will be raised.NoSuchParameterException - If the output parameter of the designated
name does not exist or the index is outside of the bounds of the
list, a NoSuchParameterException will be thrown.DataContainer.storedDate(String)void storeURI(SessionToken session,
java.lang.String parameterName,
int index,
java.net.URI value)
throws InvalidDataTypeException,
NoSuchParameterException
session - The session which is used to check for access rights on this
method.parameterName - The name of the output parameter list to store an
element of.index - The index of the element for which to store the designated
value.value - The value as Java-type URI and of ADEPT2-type URI
of the corresponding output parameter list.InvalidDataTypeException - If the designated parameter is not of type
STRING, an InvalidDataTypeException will be raised.NoSuchParameterException - If the output parameter of the designated
name does not exist or the index is outside of the bounds of the
list, a NoSuchParameterException will be thrown.DataContainer.storeURI(SessionToken, String, URI)java.net.URI storedURI(java.lang.String parameterName,
int index)
throws InvalidDataTypeException,
NoSuchParameterException
parameterName - The name of the list output parameter to read an
element of stored before.index - The index of the element in the list of which to retrieve the
value stored before.URI stored before.InvalidDataTypeException - If the designated output parameter is not
of type list of URI, an InvalidDataTypeException
will be raised.NoSuchParameterException - If the output parameter of the designated
name does not exist or the index is outside of the bounds of the
list, a NoSuchParameterException will be thrown.DataContainer.storedURI(String)void storeUDT(SessionToken session,
java.lang.String parameterName,
int index,
UDTValue value)
throws InvalidDataTypeException,
NoSuchParameterException
session - The session which is used to check for access rights on this
method.parameterName - The name of the output parameter list to store an
element of.index - The index of the element for which to store the designated
value.value - The value of the element of ADEPT2-type USERDEFINED of the
corresponding output parameter list.InvalidDataTypeException - If the designated parameter is not of type
USERDEFINED, an InvalidDataTypeException will be
raised.NoSuchParameterException - If the output parameter of the designated
name does not exist or the index is outside of the bounds of the
list, a NoSuchParameterException will be thrown.DataContainer.storeUDT(SessionToken, String, UDTValue)UDTValue storedUDT(java.lang.String parameterName, int index) throws InvalidDataTypeException, NoSuchParameterException
parameterName - The name of the list output parameter to read an
element of stored before.index - The index of the element in the list of which to retrieve the
value stored before.UDTValue
stored before.InvalidDataTypeException - If the designated output parameter is not
of type list of USERDEFINED, an
InvalidDataTypeException will be raised.NoSuchParameterException - If the output parameter of the designated
name does not exist or the index is outside of the bounds of the
list, a NoSuchParameterException will be thrown.DataContainer.storedFloat(String)void validateWrittenValues(SessionToken session,
int index)
throws ValidationFailedException
session - The session which is used to check for access rights on this
method.index - The index identifying the application of which to validate the
written values.ValidationFailedException - If the validation fails, for instance due
to missing values of mandatory output parameters, a
ValidationFailedException will be thrown.boolean validatedAll()
void flush(SessionToken session)
throws InvalidDataContainerException
Be sure to call this method before validating the values of the parent data container, that is, when terminating the corresponding (variable parallelism) process step.
session - The session which is used to synchronise access and to check
for access rights on this method.InvalidDataContainerException - If the wrapped data container does
not allow to write all output parameters, an
InvalidDataContainerException will be raised.