org.springframework.jca.cci.core

Interface CciOperations

  • All Known Implementing Classes:
    CciTemplate


    public interface CciOperations
    Interface that specifies a basic set of CCI operations on an EIS. Implemented by CciTemplate. Not often used, but a useful option to enhance testability, as it can easily be mocked or stubbed.

    Alternatively, the standard CCI infrastructure can be mocked. However, mocking this interface constitutes significantly less work.

    Since:
    1.2
    Author:
    Juergen Hoeller
    See Also:
    CciTemplate
    • Method Detail

      • execute

        @Nullable
        <T> T execute(ConnectionCallback<T> action)
                         throws DataAccessException
        Execute a request on an EIS with CCI, implemented as callback action working on a CCI Connection. This allows for implementing arbitrary data access operations, within Spring's managed CCI environment: that is, participating in Spring-managed transactions and converting JCA ResourceExceptions into Spring's DataAccessException hierarchy.

        The callback action can return a result object, for example a domain object or a collection of domain objects.

        Parameters:
        action - the callback object that specifies the action
        Returns:
        the result object returned by the action, if any
        Throws:
        DataAccessException - if there is any problem
      • execute

        @Nullable
        <T> T execute(InteractionCallback<T> action)
                         throws DataAccessException
        Execute a request on an EIS with CCI, implemented as callback action working on a CCI Interaction. This allows for implementing arbitrary data access operations on a single Interaction, within Spring's managed CCI environment: that is, participating in Spring-managed transactions and converting JCA ResourceExceptions into Spring's DataAccessException hierarchy.

        The callback action can return a result object, for example a domain object or a collection of domain objects.

        Parameters:
        action - the callback object that specifies the action
        Returns:
        the result object returned by the action, if any
        Throws:
        DataAccessException - if there is any problem
      • execute

        @Nullable
        Record execute(InteractionSpec spec,
                                 Record inputRecord)
                          throws DataAccessException
        Execute the specified interaction on an EIS with CCI.
        Parameters:
        spec - the CCI InteractionSpec instance that defines the interaction (connector-specific)
        inputRecord - the input record
        Returns:
        the output record
        Throws:
        DataAccessException - if there is any problem
      • execute

        void execute(InteractionSpec spec,
                     Record inputRecord,
                     Record outputRecord)
              throws DataAccessException
        Execute the specified interaction on an EIS with CCI.
        Parameters:
        spec - the CCI InteractionSpec instance that defines the interaction (connector-specific)
        inputRecord - the input record
        outputRecord - the output record
        Throws:
        DataAccessException - if there is any problem
      • execute

        Record execute(InteractionSpec spec,
                       RecordCreator inputCreator)
                throws DataAccessException
        Execute the specified interaction on an EIS with CCI.
        Parameters:
        spec - the CCI InteractionSpec instance that defines the interaction (connector-specific)
        inputCreator - object that creates the input record to use
        Returns:
        the output record
        Throws:
        DataAccessException - if there is any problem
      • execute

        @Nullable
        <T> T execute(InteractionSpec spec,
                                Record inputRecord,
                                RecordExtractor<T> outputExtractor)
                         throws DataAccessException
        Execute the specified interaction on an EIS with CCI.
        Parameters:
        spec - the CCI InteractionSpec instance that defines the interaction (connector-specific)
        inputRecord - the input record
        outputExtractor - object to convert the output record to a result object
        Returns:
        the output data extracted with the RecordExtractor object
        Throws:
        DataAccessException - if there is any problem
      • execute

        @Nullable
        <T> T execute(InteractionSpec spec,
                                RecordCreator inputCreator,
                                RecordExtractor<T> outputExtractor)
                         throws DataAccessException
        Execute the specified interaction on an EIS with CCI.
        Parameters:
        spec - the CCI InteractionSpec instance that defines the interaction (connector-specific)
        inputCreator - object that creates the input record to use
        outputExtractor - object to convert the output record to a result object
        Returns:
        the output data extracted with the RecordExtractor object
        Throws:
        DataAccessException - if there is any problem