Class DelegatingSeq

  • All Implemented Interfaces:
    Seq, Closeable

    public class DelegatingSeq
    extends java.lang.Object
    implements Seq
    Delegating sequence that can also perform exception translation for use in facades.
    Author:
    Abe White
    • Constructor Detail

      • DelegatingSeq

        public DelegatingSeq​(Seq seq)
        Constructor; supply delegate.
    • Method Detail

      • getDelegate

        public Seq getDelegate()
        Return the direct delegate.
      • getInnermostDelegate

        public Seq getInnermostDelegate()
        Return the native delegate.
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • equals

        public boolean equals​(java.lang.Object other)
        Overrides:
        equals in class java.lang.Object
      • translate

        protected java.lang.RuntimeException translate​(java.lang.RuntimeException re)
        Translate the OpenJPA exception.
      • setType

        public void setType​(int type)
        Description copied from interface: Seq
        Set the type of sequence.
        Specified by:
        setType in interface Seq
      • next

        public java.lang.Object next​(StoreContext ctx,
                                     ClassMetaData meta)
        Description copied from interface: Seq
        Return the next value in the sequence.
        Specified by:
        next in interface Seq
        Parameters:
        ctx - the current context
        meta - if this is a datastore identity sequence, the persistent class the identity value is for; else null
      • current

        public java.lang.Object current​(StoreContext ctx,
                                        ClassMetaData meta)
        Description copied from interface: Seq
        Return the current value of the sequence, or null if not available.
        Specified by:
        current in interface Seq
        Parameters:
        ctx - the current context
        meta - if this is a datastore identity sequence, the persistent class the identity value is for; else null
      • allocate

        public void allocate​(int additional,
                             StoreContext ctx,
                             ClassMetaData meta)
        Description copied from interface: Seq
        Allocate additional values efficiently.
        Specified by:
        allocate in interface Seq
        ctx - the current context
        meta - if this is a datastore identity sequence, the persistent class the identity value is for; else null
      • close

        public void close()
        Description copied from interface: Seq
        Free resources used by this sequence.
        Specified by:
        close in interface Closeable
        Specified by:
        close in interface Seq