Interface IndexedAccessDataContainer

  • All Superinterfaces:
    AutoCloseable, Closeable, InputDataContainer, PluginDataContainer, Serializable, UserAttributeContainer

    public interface IndexedAccessDataContainer
    extends InputDataContainer
    An 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.
    At runtime the number of parallel activities is determined by one (or several) lists as input parameters; for every list element an activity is instantiated in parallel. The input parameters of the activity (template) are either normal or indexed. An indexed input parameter is retrieved as one element from a list while a normal parameter is provided as a whole to each of the parallel activity instances. Output parameters are gathered since each activity has its own values. Therefore each output parameter of the activity (template) is mapped to a list of the corresponding type as output at the join-node of the variable parallelism. This gathering is also provided by this data container.

    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.

    • Field Summary

      Fields 
      Modifier and Type Field Description
      static long serialVersionUID
      Generated ID for serialisation.
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method 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​(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, 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, 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, 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.
      Date retrieveDate​(SessionToken session, 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, 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, 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.
      String retrieveString​(SessionToken session, 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, 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.
      URI retrieveURI​(SessionToken session, 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, 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, String parameterName, int index, Date value)
      Stores the DATE value to the element at the designated index at the output parameter list of the designated name.
      boolean storedBoolean​(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.
      Date storedDate​(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​(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​(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.
      String storedString​(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​(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.
      URI storedURI​(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, 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, 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, String parameterName, int index, 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, 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, String parameterName, int index, 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.
    • Field Detail

      • serialVersionUID

        static final long serialVersionUID
        Generated ID for serialisation.
        See Also:
        Constant Field Values
    • Method Detail

      • getWrappedDataContainer

        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.
        Returns:
        The wrapped data container providing lists for indexed input parameters and accepting lists for all output parameters. Usually the creator of this IndexedAccessDataContainer should close it after use. But it may be feasible to close the wrapped data container via this method once after closing this IndexedAccessDataContainer.
      • isNull

        boolean isNull​(SessionToken session,
                       String parameterName,
                       int index)
                throws NoSuchParameterException
        Returns whether the value of the element at the designated index at the input parameter list of the designated name is NULL. The value is also NULL in case the complete list is NULL.
        Parameters:
        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.
        Returns:
        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.
        Throws:
        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.
        See Also:
        InputDataContainer.isNull(SessionToken, String)
      • retrieveInteger

        long retrieveInteger​(SessionToken session,
                             String parameterName,
                             int index)
                      throws NoSuchParameterException,
                             InvalidDataTypeException
        Retrieves the long value of the element of type INTEGER at the designated index at the input parameter list of the designated name. Callers should first check whether the value is NULL by calling isNull(SessionToken, String, int). Otherwise in case of NULL an IllegalStateException will be thrown.
        Parameters:
        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.
        Returns:
        The value of the element in the input parameter list of ADEPT2-type INTEGER and of Java-type long.
        Throws:
        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.
        InvalidDataTypeException - If the designated input parameter is not of type list of INTEGER, an InvalidDataTypeException will be raised.
        IllegalStateException - If the value of the designated parameter is NULL an IllegalStateException will be thrown.
        See Also:
        InputDataContainer.retrieveInteger(SessionToken, String)
      • retrieveFloat

        double retrieveFloat​(SessionToken session,
                             String parameterName,
                             int index)
                      throws NoSuchParameterException,
                             InvalidDataTypeException
        Retrieves the double value of the element of type FLOAT at the designated index at the input parameter list of the designated name. Callers should first check whether the value is NULL by calling isNull(SessionToken, String, int). Otherwise in case of NULL an IllegalStateException will be thrown.
        Parameters:
        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.
        Returns:
        The value of the element in the input parameter list of ADEPT2-type FLOAT and of Java-type double.
        Throws:
        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.
        InvalidDataTypeException - If the designated input parameter is not of type list of FLOAT, an InvalidDataTypeException will be raised.
        IllegalStateException - If the value of the designated parameter is NULL an IllegalStateException will be thrown.
        See Also:
        InputDataContainer.retrieveFloat(SessionToken, String)
      • retrieveBoolean

        boolean retrieveBoolean​(SessionToken session,
                                String parameterName,
                                int index)
                         throws NoSuchParameterException,
                                InvalidDataTypeException
        Retrieves the boolean value of the element of type BOOLEAN at the designated index at the input parameter list of the designated name. Callers should first check whether the value is NULL by calling isNull(SessionToken, String, int). Otherwise in case of NULL an IllegalStateException will be thrown.
        Parameters:
        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.
        Returns:
        The value of the element in the input parameter list of ADEPT2-type BOOLEAN and of Java-type boolean.
        Throws:
        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.
        InvalidDataTypeException - If the designated input parameter is not of type list of FLOAT, an InvalidDataTypeException will be raised.
        IllegalStateException - If the value of the designated parameter is NULL an IllegalStateException will be thrown.
        See Also:
        InputDataContainer.retrieveBoolean(SessionToken, String)
      • retrieveString

        String retrieveString​(SessionToken session,
                              String parameterName,
                              int index)
                       throws NoSuchParameterException,
                              InvalidDataTypeException
        Retrieves the String value of the element of type STRING at the designated index at the input parameter list of the designated name. Callers should first check whether the value is NULL by calling isNull(SessionToken, String, int). Otherwise in case of NULL an IllegalStateException will be thrown.
        Parameters:
        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.
        Returns:
        The value of the element in the input parameter list of ADEPT2-type STRING and of Java-type String.
        Throws:
        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.
        InvalidDataTypeException - If the designated input parameter is not of type list of STRING, an InvalidDataTypeException will be raised.
        IllegalStateException - If the value of the designated parameter is NULL an IllegalStateException will be thrown.
        See Also:
        InputDataContainer.retrieveString(SessionToken, String)
      • retrieveDate

        Date retrieveDate​(SessionToken session,
                          String parameterName,
                          int index)
                   throws NoSuchParameterException,
                          InvalidDataTypeException
        Retrieves the date value of the element of type DATE at the designated index at the input parameter list of the designated name. Callers should first check whether the value is NULL by calling isNull(SessionToken, String, int). Otherwise in case of NULL an IllegalStateException will be thrown.
        Parameters:
        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.
        Returns:
        The value of the element in the input parameter list of ADEPT2-type DATE and of Java-type java.util.Date.
        Throws:
        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.
        InvalidDataTypeException - If the designated input parameter is not of type list of DATE, an InvalidDataTypeException will be raised.
        IllegalStateException - If the value of the designated parameter is NULL an IllegalStateException will be thrown.
        See Also:
        InputDataContainer.retrieveDate(SessionToken, String)
      • retrieveURI

        URI retrieveURI​(SessionToken session,
                        String parameterName,
                        int index)
                 throws NoSuchParameterException,
                        InvalidDataTypeException
        Retrieves the URI value of the element of type URI at the designated index at the input parameter list of the designated name. Callers should first check whether the value is NULL by calling isNull(SessionToken, String, int). Otherwise in case of NULL an IllegalStateException will be thrown.
        Parameters:
        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.
        Returns:
        The value of the element in the input parameter list of ADEPT2-type URI and of Java-type URI.
        Throws:
        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.
        InvalidDataTypeException - If the designated input parameter is not of type list of URI, an InvalidDataTypeException will be raised.
        IllegalStateException - If the value of the designated parameter is NULL an IllegalStateException will be thrown.
        See Also:
        InputDataContainer.retrieveURI(SessionToken, String)
      • retrieveUDT

        UDTValue retrieveUDT​(SessionToken session,
                             String parameterName,
                             int index)
                      throws NoSuchParameterException,
                             InvalidDataTypeException
        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. Callers should first check whether the value is NULL by calling isNull(SessionToken, String, int). Otherwise in case of NULL an IllegalStateException will be thrown.
        Parameters:
        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.
        Returns:
        The value of the element in the input parameter list of ADEPT2-type USERDEFINED and of Java-type UDTValue. The UDTValue will be coupled to this IndexedAccessDataContainer, so do not close it; clone it if required longer than this IndexedAccessDataContainer.
        Throws:
        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.
        InvalidDataTypeException - If the designated input parameter is not of type list of USERDEFINED, an InvalidDataTypeException will be raised.
        IllegalStateException - If the value of the designated parameter is NULL an IllegalStateException will be thrown.
        See Also:
        InputDataContainer.retrieveUDT(SessionToken, String)
      • ignoreValue

        void ignoreValue​(SessionToken session,
                         String parameterName,
                         int index)
                  throws NoSuchParameterException
        Ignores the value of the element at the designated index at the output parameter list of the designated name. Per default every parameter value is unset, therefore this method is used to remove values that have been set by calling an appropriate store-method beforehand. This differs from setting a value explicitly to null (which is not allowed).
        Parameters:
        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.
        Throws:
        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.
        See Also:
        DataContainer.ignoreValue(SessionToken, String)
      • ignoredValue

        boolean ignoredValue​(String parameterName,
                             int index)
                      throws NoSuchParameterException
        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.
        Parameters:
        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.
        Returns:
        true if the value of the element of the designated list output parameter is or has not been written.
        Throws:
        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.
        See Also:
        DataContainer.ignoredValue(String)
      • storeInteger

        void storeInteger​(SessionToken session,
                          String parameterName,
                          int index,
                          long value)
                   throws NoSuchParameterException,
                          InvalidDataTypeException
        Stores the INTEGER value to the element at the designated index at the output parameter list of the designated name.
        Parameters:
        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.
        Throws:
        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.
        InvalidDataTypeException - If the designated parameter is not of type INTEGER, an InvalidDataTypeException will be raised.
        See Also:
        DataContainer.storeInteger(SessionToken, String, long)
      • storedInteger

        long storedInteger​(String parameterName,
                           int index)
                    throws NoSuchParameterException,
                           InvalidDataTypeException
        Retrieves the long value of the element at the designated index at the output parameter list of the designated name stored before. Callers should first check whether the value is NULL by calling ignoredValue(String, int). Otherwise in case of NULL an IllegalStateException will be thrown.
        Parameters:
        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.
        Returns:
        The value of the element in the output parameter list of ADEPT2-type INTEGER and of Java-type long stored before.
        Throws:
        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.
        InvalidDataTypeException - If the designated output parameter is not of type list of INTEGER, an InvalidDataTypeException will be raised.
        IllegalStateException - If the value of the designated parameter is NULL an IllegalStateException will be thrown.
        See Also:
        DataContainer.storedInteger(String)
      • storeFloat

        void storeFloat​(SessionToken session,
                        String parameterName,
                        int index,
                        double value)
                 throws NoSuchParameterException,
                        InvalidDataTypeException
        Stores the FLOAT value to the element at the designated index at the output parameter list of the designated name.
        Parameters:
        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.
        Throws:
        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.
        InvalidDataTypeException - If the designated parameter is not of type FLOAT, an InvalidDataTypeException will be raised.
        See Also:
        DataContainer.storeFloat(SessionToken, String, double)
      • storedFloat

        double storedFloat​(String parameterName,
                           int index)
                    throws NoSuchParameterException,
                           InvalidDataTypeException
        Retrieves the double value of the element at the designated index at the output parameter list of the designated name stored before. Callers should first check whether the value is NULL by calling ignoredValue(String, int). Otherwise in case of NULL an IllegalStateException will be thrown.
        Parameters:
        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.
        Returns:
        The value of the element in the output parameter list of ADEPT2-type FLOAT and of Java-type double stored before.
        Throws:
        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.
        IllegalStateException - If the value of the designated parameter is NULL an IllegalStateException will be thrown.
        See Also:
        DataContainer.storedFloat(String)
      • storeBoolean

        void storeBoolean​(SessionToken session,
                          String parameterName,
                          int index,
                          boolean value)
                   throws NoSuchParameterException,
                          InvalidDataTypeException
        Stores the BOOLEAN value to the element at the designated index at the output parameter list of the designated name.
        Parameters:
        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.
        Throws:
        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.
        InvalidDataTypeException - If the designated parameter is not of type BOOLEAN, an InvalidDataTypeException will be raised.
        See Also:
        DataContainer.storeBoolean(SessionToken, String, boolean)
      • storedBoolean

        boolean storedBoolean​(String parameterName,
                              int index)
                       throws NoSuchParameterException,
                              InvalidDataTypeException
        Retrieves the boolean value of the element at the designated index at the output parameter list of the designated name stored before. Callers should first check whether the value is NULL by calling ignoredValue(String, int). Otherwise in case of NULL an IllegalStateException will be thrown.
        Parameters:
        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.
        Returns:
        The value of the element in the output parameter list of ADEPT2-type BOOLEAN and of Java-type boolean stored before.
        Throws:
        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.
        InvalidDataTypeException - If the designated output parameter is not of type list of BOOLEAN, an InvalidDataTypeException will be raised.
        IllegalStateException - If the value of the designated parameter is NULL an IllegalStateException will be thrown.
        See Also:
        DataContainer.storedBoolean(String)
      • storeString

        void storeString​(SessionToken session,
                         String parameterName,
                         int index,
                         String value)
                  throws NoSuchParameterException,
                         InvalidDataTypeException
        Stores the STRING value to the element at the designated index at the output parameter list of the designated name.
        Parameters:
        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.
        Throws:
        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.
        InvalidDataTypeException - If the designated parameter is not of type STRING, an InvalidDataTypeException will be raised.
        See Also:
        DataContainer.storeString(SessionToken, String, String)
      • storedString

        String storedString​(String parameterName,
                            int index)
                     throws NoSuchParameterException,
                            InvalidDataTypeException
        Retrieves the String value of the element at the designated index at the output parameter list of the designated name stored before. Callers should first check whether the value is NULL by calling ignoredValue(String, int). Otherwise in case of NULL an IllegalStateException will be thrown.
        Parameters:
        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.
        Returns:
        The value of the element in the output parameter list of ADEPT2-type STRING and of Java-type String stored before.
        Throws:
        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.
        InvalidDataTypeException - If the designated output parameter is not of type list of STRING, an InvalidDataTypeException will be raised.
        IllegalStateException - If the value of the designated parameter is NULL an IllegalStateException will be thrown.
        See Also:
        DataContainer.storedString(String)
      • storeDate

        void storeDate​(SessionToken session,
                       String parameterName,
                       int index,
                       Date value)
                throws NoSuchParameterException,
                       InvalidDataTypeException
        Stores the DATE value to the element at the designated index at the output parameter list of the designated name.
        Parameters:
        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.
        Throws:
        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.
        InvalidDataTypeException - If the designated parameter is not of type DATE, an InvalidDataTypeException will be raised.
        See Also:
        DataContainer.storeDate(SessionToken, String, Date)
      • storedDate

        Date storedDate​(String parameterName,
                        int index)
                 throws NoSuchParameterException,
                        InvalidDataTypeException
        Retrieves the date value of the element at the designated index at the output parameter list of the designated name stored before. Callers should first check whether the value is NULL by calling ignoredValue(String, int). Otherwise in case of NULL an IllegalStateException will be thrown.
        Parameters:
        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.
        Returns:
        The value of the element in the output parameter list of ADEPT2-type DATE and of Java-type java.util.Date stored before.
        Throws:
        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.
        InvalidDataTypeException - If the designated output parameter is not of type list of DATE, an InvalidDataTypeException will be raised.
        IllegalStateException - If the value of the designated parameter is NULL an IllegalStateException will be thrown.
        See Also:
        DataContainer.storedDate(String)
      • storeURI

        void storeURI​(SessionToken session,
                      String parameterName,
                      int index,
                      URI value)
               throws NoSuchParameterException,
                      InvalidDataTypeException
        Stores the URI value to the element at the designated index at the output parameter list of the designated name.
        Parameters:
        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.
        Throws:
        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.
        InvalidDataTypeException - If the designated parameter is not of type STRING, an InvalidDataTypeException will be raised.
        See Also:
        DataContainer.storeURI(SessionToken, String, URI)
      • storedURI

        URI storedURI​(String parameterName,
                      int index)
               throws NoSuchParameterException,
                      InvalidDataTypeException
        Retrieves the URI value of the element at the designated index at the output parameter list of the designated name stored before. Callers should first check whether the value is NULL by calling ignoredValue(String, int). Otherwise in case of NULL an IllegalStateException will be thrown.
        Parameters:
        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.
        Returns:
        The value of the element in the output parameter list of ADEPT2-type URI and of Java-type URI stored before.
        Throws:
        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.
        InvalidDataTypeException - If the designated output parameter is not of type list of URI, an InvalidDataTypeException will be raised.
        IllegalStateException - If the value of the designated parameter is NULL an IllegalStateException will be thrown.
        See Also:
        DataContainer.storedURI(String)
      • storeUDT

        void storeUDT​(SessionToken session,
                      String parameterName,
                      int index,
                      UDTValue value)
               throws NoSuchParameterException,
                      InvalidDataTypeException
        Stores the value of user-defined type to the element at the designated index at the output parameter list of the designated name.
        Parameters:
        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. The caller is responsible for closing.
        Throws:
        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.
        InvalidDataTypeException - If the designated parameter is not of type USERDEFINED, an InvalidDataTypeException will be raised.
        See Also:
        DataContainer.storeUDT(SessionToken, String, UDTValue)
      • storedUDT

        UDTValue storedUDT​(String parameterName,
                           int index)
                    throws NoSuchParameterException,
                           InvalidDataTypeException
        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. Callers should first check whether the value is NULL by calling ignoredValue(String, int). Otherwise in case of NULL an IllegalStateException will be thrown.
        Parameters:
        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.
        Returns:
        The value of the element in the output parameter list of ADEPT2-type USERDEFINED and of Java-type UDTValue stored before. The UDTValue will be coupled to this IndexedAccessDataContainer, so do not close it; clone it if required longer than this IndexedAccessDataContainer.
        Throws:
        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.
        InvalidDataTypeException - If the designated output parameter is not of type list of USERDEFINED, an InvalidDataTypeException will be raised.
        IllegalStateException - If the value of the designated parameter is NULL an IllegalStateException will be thrown.
        See Also:
        DataContainer.storedFloat(String)
      • validateWrittenValues

        void validateWrittenValues​(SessionToken session,
                                   int index)
                            throws ValidationFailedException
        Validates and verifies all values written by the application identified by the designated index. This checks whether all mandatory output parameters have valid values. This method is to be called when terminating the execution of the designated application.
        Parameters:
        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.
        Throws:
        ValidationFailedException - If the validation fails, for instance due to missing values of mandatory output parameters, a ValidationFailedException will be thrown.
      • validatedAll

        boolean validatedAll()
        Returns whether all parallel activities have validated their data. This allows to synchronise. Otherwise it may happen that all activities/subinstances have terminated but validated yet since validation is done asynchronously after the successful termination of the corresponding activity/subinstance.
        Returns:
        Whether all parallel activities have validated their data.
      • flush

        void flush​(SessionToken session)
            throws InvalidDataContainerException
        Flushes all the internally stored values that have not been saved to the data manager yet. That is, these values are intermediately stored as output parameter lists and/or in a session state in the parent data container.
        This allows to intermediately stop the subprocess manager.

        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.

        Parameters:
        session - The session which is used to synchronise access and to check for access rights on this method.
        Throws:
        InvalidDataContainerException - If the wrapped data container does not allow to write all output parameters, an InvalidDataContainerException will be raised.