Class RiverUnmarshaller

    • Field Detail

      • instanceCache

        private final java.util.ArrayList<java.lang.Object> instanceCache
      • classCache

        private final java.util.ArrayList<ClassDescriptor> classCache
      • version

        private int version
      • depth

        private int depth
      • validators

        private java.util.SortedSet<Validator> validators
      • validatorSeq

        private int validatorSeq
      • proxyInvocationHandler

        private static final java.lang.reflect.Field proxyInvocationHandler
      • createObjectInputStreamAction

        private final java.security.PrivilegedExceptionAction<RiverObjectInputStream> createObjectInputStreamAction
    • Method Detail

      • clearInstanceCache

        public void clearInstanceCache()
                                throws java.io.IOException
        Description copied from interface: Unmarshaller
        Discard the instance cache.
        Throws:
        java.io.IOException - if an error occurs
      • clearClassCache

        public void clearClassCache()
                             throws java.io.IOException
        Description copied from interface: Unmarshaller
        Discard the class cache. Implicitly also discards the instance cache.
        Throws:
        java.io.IOException - if an error occurs
      • close

        public void close()
                   throws java.io.IOException
        Description copied from class: SimpleDataInput
        Specified by:
        close in interface java.lang.AutoCloseable
        Specified by:
        close in interface java.io.Closeable
        Specified by:
        close in interface java.io.ObjectInput
        Overrides:
        close in class SimpleDataInput
        Throws:
        java.io.IOException
      • finish

        public void finish()
                    throws java.io.IOException
        Description copied from class: AbstractUnmarshaller
        Finish reading from the current input. The internal buffer is discarded, not flushed.
        Specified by:
        finish in interface Unmarshaller
        Overrides:
        finish in class AbstractUnmarshaller
        Throws:
        java.io.IOException - not thrown by this implementation, but may be overridden to be thrown if a problem occurs
      • getObjectInputStream

        private RiverObjectInputStream getObjectInputStream()
                                                     throws java.io.IOException
        Throws:
        java.io.IOException
      • createObjectInputStream

        private RiverObjectInputStream createObjectInputStream()
                                                        throws java.io.IOException
        Throws:
        java.io.IOException
      • doReadNestedObject

        java.lang.Object doReadNestedObject​(boolean unshared,
                                            java.lang.String enclosingClassName)
                                     throws java.lang.ClassNotFoundException,
                                            java.io.IOException
        Throws:
        java.lang.ClassNotFoundException
        java.io.IOException
      • doReadCollectionObject

        java.lang.Object doReadCollectionObject​(boolean unshared,
                                                int idx,
                                                int size,
                                                boolean discardMissing)
                                         throws java.lang.ClassNotFoundException,
                                                java.io.IOException
        Throws:
        java.lang.ClassNotFoundException
        java.io.IOException
      • doReadMapObject

        java.lang.Object doReadMapObject​(boolean unshared,
                                         int idx,
                                         int size,
                                         boolean key,
                                         boolean discardMissing)
                                  throws java.lang.ClassNotFoundException,
                                         java.io.IOException
        Throws:
        java.lang.ClassNotFoundException
        java.io.IOException
      • doReadObject

        protected java.lang.Object doReadObject​(boolean unshared)
                                         throws java.lang.ClassNotFoundException,
                                                java.io.IOException
        Description copied from class: AbstractObjectInput
        Implementation of the actual object-reading method.
        Specified by:
        doReadObject in class AbstractObjectInput
        Parameters:
        unshared - true if the instance should be unshared, false if it is shared
        Returns:
        the object to read
        Throws:
        java.lang.ClassNotFoundException - if the class for the object could not be loaded
        java.io.IOException - if an I/O error occurs
      • doReadObject

        java.lang.Object doReadObject​(boolean unshared,
                                      boolean discardMissing)
                               throws java.io.IOException,
                                      java.lang.ClassNotFoundException
        Throws:
        java.io.IOException
        java.lang.ClassNotFoundException
      • doReadObject

        java.lang.Object doReadObject​(int leadByte,
                                      boolean unshared,
                                      boolean discardMissing)
                               throws java.io.IOException,
                                      java.lang.ClassNotFoundException
        Throws:
        java.io.IOException
        java.lang.ClassNotFoundException
      • readCollectionData

        private java.lang.Object readCollectionData​(boolean unshared,
                                                    int cacheIdx,
                                                    int len,
                                                    java.util.Collection target,
                                                    boolean discardMissing)
                                             throws java.lang.ClassNotFoundException,
                                                    java.io.IOException
        Throws:
        java.lang.ClassNotFoundException
        java.io.IOException
      • readSortedSetData

        private java.lang.Object readSortedSetData​(boolean unshared,
                                                   int cacheIdx,
                                                   int len,
                                                   java.util.SortedSet target,
                                                   boolean discardMissing)
                                            throws java.lang.ClassNotFoundException,
                                                   java.io.IOException
        Throws:
        java.lang.ClassNotFoundException
        java.io.IOException
      • readMapData

        private java.lang.Object readMapData​(boolean unshared,
                                             int cacheIdx,
                                             int len,
                                             java.util.Map target,
                                             boolean discardMissing)
                                      throws java.lang.ClassNotFoundException,
                                             java.io.IOException
        Throws:
        java.lang.ClassNotFoundException
        java.io.IOException
      • readSortedMapData

        private java.lang.Object readSortedMapData​(boolean unshared,
                                                   int cacheIdx,
                                                   int len,
                                                   java.util.SortedMap target,
                                                   boolean discardMissing)
                                            throws java.lang.ClassNotFoundException,
                                                   java.io.IOException
        Throws:
        java.lang.ClassNotFoundException
        java.io.IOException
      • sharedMismatch

        private static java.io.InvalidObjectException sharedMismatch()
      • doReadClassDescriptor

        ClassDescriptor doReadClassDescriptor​(int classType,
                                              boolean required)
                                       throws java.io.IOException,
                                              java.lang.ClassNotFoundException
        Throws:
        java.io.IOException
        java.lang.ClassNotFoundException
      • readString

        protected java.lang.String readString()
                                       throws java.io.IOException
        Throws:
        java.io.IOException
      • start

        public void start​(ByteInput byteInput)
                   throws java.io.IOException
        Description copied from class: AbstractUnmarshaller
        Start reading from the given input. The internal buffer is discarded.
        Specified by:
        start in interface Unmarshaller
        Overrides:
        start in class AbstractUnmarshaller
        Parameters:
        byteInput - the new input from which to read
        Throws:
        java.io.IOException - not thrown by this implementation, but may be overridden to be thrown if a problem occurs
      • doReadNewObject

        protected java.lang.Object doReadNewObject​(int streamClassType,
                                                   boolean unshared,
                                                   boolean discardMissing)
                                            throws java.lang.ClassNotFoundException,
                                                   java.io.IOException
        Throws:
        java.lang.ClassNotFoundException
        java.io.IOException
      • doReadDoubleArray

        private java.lang.Object doReadDoubleArray​(int cnt,
                                                   boolean unshared)
                                            throws java.io.IOException
        Throws:
        java.io.IOException
      • doReadFloatArray

        private java.lang.Object doReadFloatArray​(int cnt,
                                                  boolean unshared)
                                           throws java.io.IOException
        Throws:
        java.io.IOException
      • doReadCharArray

        private java.lang.Object doReadCharArray​(int cnt,
                                                 boolean unshared)
                                          throws java.io.IOException
        Throws:
        java.io.IOException
      • doReadLongArray

        private java.lang.Object doReadLongArray​(int cnt,
                                                 boolean unshared)
                                          throws java.io.IOException
        Throws:
        java.io.IOException
      • doReadIntArray

        private java.lang.Object doReadIntArray​(int cnt,
                                                boolean unshared)
                                         throws java.io.IOException
        Throws:
        java.io.IOException
      • doReadShortArray

        private java.lang.Object doReadShortArray​(int cnt,
                                                  boolean unshared)
                                           throws java.io.IOException
        Throws:
        java.io.IOException
      • doReadByteArray

        private java.lang.Object doReadByteArray​(int cnt,
                                                 boolean unshared)
                                          throws java.io.IOException
        Throws:
        java.io.IOException
      • doReadBooleanArray

        private java.lang.Object doReadBooleanArray​(int cnt,
                                                    boolean unshared)
                                             throws java.io.IOException
        Throws:
        java.io.IOException
      • doReadObjectArray

        private java.lang.Object doReadObjectArray​(int cnt,
                                                   java.lang.Class<?> type,
                                                   boolean unshared,
                                                   boolean discardMissing)
                                            throws java.lang.ClassNotFoundException,
                                                   java.io.IOException
        Throws:
        java.lang.ClassNotFoundException
        java.io.IOException
      • doReadArray

        private java.lang.Object doReadArray​(int cnt,
                                             boolean unshared,
                                             boolean discardMissing)
                                      throws java.lang.ClassNotFoundException,
                                             java.io.IOException
        Throws:
        java.lang.ClassNotFoundException
        java.io.IOException
      • resolveEnumConstant

        private static java.lang.Enum resolveEnumConstant​(ClassDescriptor descriptor,
                                                          java.lang.String name)
      • doInitSerializable

        private void doInitSerializable​(java.lang.Object obj,
                                        SerializableClassDescriptor descriptor,
                                        boolean discardMissing)
                                 throws java.io.IOException,
                                        java.lang.ClassNotFoundException
        Throws:
        java.io.IOException
        java.lang.ClassNotFoundException
      • readFields

        protected void readFields​(java.lang.Object obj,
                                  SerializableClassDescriptor descriptor,
                                  boolean discardMissing)
                           throws java.io.IOException,
                                  java.lang.ClassNotFoundException
        Throws:
        java.io.IOException
        java.lang.ClassNotFoundException
      • discardFields

        protected void discardFields​(SerializableClassDescriptor descriptor)
                              throws java.io.IOException
        Throws:
        java.io.IOException
      • addValidation

        void addValidation​(java.io.ObjectInputValidation validation,
                           int prio)
      • readUTF

        public java.lang.String readUTF()
                                 throws java.io.IOException
        Description copied from class: SimpleDataInput
        Specified by:
        readUTF in interface java.io.DataInput
        Overrides:
        readUTF in class SimpleDataInput
        Throws:
        java.io.IOException
      • replace

        private java.lang.Object replace​(java.lang.Object object)