Class DefaultOperationObserver

  • All Implemented Interfaces:
    OperationHints, OperationObserver
    Direct Known Subclasses:
    IteratedSelectObserver

    public class DefaultOperationObserver
    extends Object
    implements OperationObserver
    Simple implementation of OperationObserver interface. Useful as a superclass of other implementations of OperationObserver. This implementation only tracks transaction events and exceptions.

    This operation observer is unsafe to use in application, since it doesn't rethrow the exceptions immediately, and may cause the database to hang.

    • Constructor Detail

      • DefaultOperationObserver

        public DefaultOperationObserver()
    • Method Detail

      • printExceptions

        public void printExceptions​(PrintWriter out)
        Prints the information about query and global exceptions.
      • getGlobalExceptions

        public List<Throwable> getGlobalExceptions()
        Returns a list of global exceptions that occured during data operation run.
      • getQueryExceptions

        public Map<Query,​Throwable> getQueryExceptions()
        Returns a list of exceptions that occured during data operation run by query.
      • hasExceptions

        public boolean hasExceptions()
        Returns true if at least one exception was registered during query execution.
      • nextCount

        public void nextCount​(Query query,
                              int resultCount)
        Description copied from interface: OperationObserver
        Callback method invoked after an updating query is executed.
        Specified by:
        nextCount in interface OperationObserver
      • nextRows

        public void nextRows​(Query query,
                             ResultIterator it)
        Closes ResultIterator without reading its data. If you implement a custom subclass, only call super if closing the iterator is what you need.
        Specified by:
        nextRows in interface OperationObserver
      • nextGeneratedRows

        public void nextGeneratedRows​(Query query,
                                      ResultIterator<?> keys,
                                      List<ObjectId> idsToUpdate)
        Closes ResultIterator without reading its data. If you implement a custom subclass, only call super if closing the iterator is what you need.
        Specified by:
        nextGeneratedRows in interface OperationObserver
        Since:
        4.0
      • nextGlobalException

        public void nextGlobalException​(Exception ex)
        Description copied from interface: OperationObserver
        Callback method invoked on exceptions that are not tied to a specific query execution, such as JDBC connection exceptions, etc.
        Specified by:
        nextGlobalException in interface OperationObserver