类 AbstractHessianInput
- java.lang.Object
-
- com.alibaba.com.caucho.hessian.io.AbstractHessianInput
-
- 直接已知子类:
Hessian2Input,HessianInput
public abstract class AbstractHessianInput extends Object
Abstract base class for Hessian requests. Hessian users should only need to use the methods in this class.AbstractHessianInput in = ...; // get input String value; in.startReply(); // read reply header value = in.readString(); // read string value in.completeReply(); // read reply footer
-
-
构造器概要
构造器 构造器 说明 AbstractHessianInput()
-
方法概要
所有方法 实例方法 抽象方法 具体方法 修饰符和类型 方法 说明 abstract intaddRef(Object obj)Adds an object reference.abstract booleancheckAndReadNull()voidclose()abstract voidcompleteCall()Completes reading the callabstract voidcompleteReply()Completes reading the callabstract StringgetMethod()Returns the call's methodabstract ReadergetReader()Starts reading a string.HessianRemoteResolvergetRemoteResolver()Sets the resolver used to lookup remote objects.voidinit(InputStream is)Initialize the Hessian stream with the underlying input stream.abstract booleanisEnd()Returns true if the data has ended.abstract booleanreadBoolean()Reads a booleanabstract byte[]readBytes()Reads a byte array.abstract intreadCall()Reads the callabstract doublereadDouble()Reads a double.abstract voidreadEnd()Read the end byteabstract StringreadHeader()Reads a header, returning null if there are no headers.abstract InputStreamreadInputStream()Starts reading a byte array using an input stream.abstract intreadInt()Reads an integerabstract intreadLength()Reads the length of a list.abstract voidreadListEnd()Read the end byteabstract intreadListStart()Reads the start of a listabstract longreadLong()Reads a longabstract voidreadMapEnd()Read the end byteabstract intreadMapStart()Reads the start of a mapabstract StringreadMethod()Starts reading the callintreadMethodArgLength()Reads the number of method argumentsNodereadNode()Reads an XML node encoded in UTF-8abstract voidreadNull()Reads a nullabstract ObjectreadObject()Reads an arbitrary object from the input stream.abstract ObjectreadObject(Class expectedClass)Reads an arbitrary object from the input stream.ObjectreadObject(Class expectedClass, Class<?>... expectedTypes)Reads an arbitrary object from the input stream.ObjectreadObject(List<Class<?>> expectedTypes)Reads an arbitrary object from the input stream.abstract ObjectreadRef()Reads a referenceabstract ObjectreadRemote()Reads a remote object reference to the stream.abstract ObjectreadReply(Class expectedClass)Reads a reply as an object.abstract StringreadString()Reads a string encoded in UTF-8abstract StringreadType()Reads an object type.abstract longreadUTCDate()Reads a date.voidresetReferences()Resets the references for streaming.abstract voidsetRef(int i, Object obj)Sets an object reference.voidsetRemoteResolver(HessianRemoteResolver resolver)Sets the resolver used to lookup remote objects.voidsetSerializerFactory(SerializerFactory ser)Sets the serializer factory.voidskipOptionalCall()For backward compatibility with HessianSkeletonabstract voidstartCall()Starts reading the call, including the headers.abstract voidstartReply()Starts reading the reply
-
-
-
方法详细资料
-
init
public void init(InputStream is)
Initialize the Hessian stream with the underlying input stream.
-
getMethod
public abstract String getMethod()
Returns the call's method
-
getRemoteResolver
public HessianRemoteResolver getRemoteResolver()
Sets the resolver used to lookup remote objects.
-
setRemoteResolver
public void setRemoteResolver(HessianRemoteResolver resolver)
Sets the resolver used to lookup remote objects.
-
setSerializerFactory
public void setSerializerFactory(SerializerFactory ser)
Sets the serializer factory.
-
checkAndReadNull
public abstract boolean checkAndReadNull()
-
readCall
public abstract int readCall() throws IOExceptionReads the callc major minor
- 抛出:
IOException
-
skipOptionalCall
public void skipOptionalCall() throws IOExceptionFor backward compatibility with HessianSkeleton- 抛出:
IOException
-
readHeader
public abstract String readHeader() throws IOException
Reads a header, returning null if there are no headers.H b16 b8 value
- 抛出:
IOException
-
readMethod
public abstract String readMethod() throws IOException
Starts reading the callA successful completion will have a single value:
m b16 b8 method
- 抛出:
IOException
-
readMethodArgLength
public int readMethodArgLength() throws IOExceptionReads the number of method arguments- 返回:
- -1 for a variable length (hessian 1.0)
- 抛出:
IOException
-
startCall
public abstract void startCall() throws IOExceptionStarts reading the call, including the headers.The call expects the following protocol data
c major minor m b16 b8 method
- 抛出:
IOException
-
completeCall
public abstract void completeCall() throws IOExceptionCompletes reading the callThe call expects the following protocol data
Z
- 抛出:
IOException
-
readReply
public abstract Object readReply(Class expectedClass) throws Throwable
Reads a reply as an object. If the reply has a fault, throws the exception.- 抛出:
Throwable
-
startReply
public abstract void startReply() throws ThrowableStarts reading the replyA successful completion will have a single value:
r v
- 抛出:
Throwable
-
completeReply
public abstract void completeReply() throws IOExceptionCompletes reading the callA successful completion will have a single value:
z
- 抛出:
IOException
-
readBoolean
public abstract boolean readBoolean() throws IOExceptionReads a booleanT F
- 抛出:
IOException
-
readNull
public abstract void readNull() throws IOExceptionReads a nullN
- 抛出:
IOException
-
readInt
public abstract int readInt() throws IOExceptionReads an integerI b32 b24 b16 b8
- 抛出:
IOException
-
readLong
public abstract long readLong() throws IOExceptionReads a longL b64 b56 b48 b40 b32 b24 b16 b8
- 抛出:
IOException
-
readDouble
public abstract double readDouble() throws IOExceptionReads a double.D b64 b56 b48 b40 b32 b24 b16 b8
- 抛出:
IOException
-
readUTCDate
public abstract long readUTCDate() throws IOExceptionReads a date.T b64 b56 b48 b40 b32 b24 b16 b8
- 抛出:
IOException
-
readString
public abstract String readString() throws IOException
Reads a string encoded in UTF-8s b16 b8 non-final string chunk S b16 b8 final string chunk
- 抛出:
IOException
-
readNode
public Node readNode() throws IOException
Reads an XML node encoded in UTF-8x b16 b8 non-final xml chunk X b16 b8 final xml chunk
- 抛出:
IOException
-
getReader
public abstract Reader getReader() throws IOException
Starts reading a string. All the characters must be read before calling the next method. The actual characters will be read with the reader's read() or read(char [], int, int).s b16 b8 non-final string chunk S b16 b8 final string chunk
- 抛出:
IOException
-
readInputStream
public abstract InputStream readInputStream() throws IOException
Starts reading a byte array using an input stream. All the bytes must be read before calling the following method.b b16 b8 non-final binary chunk B b16 b8 final binary chunk
- 抛出:
IOException
-
readBytes
public abstract byte[] readBytes() throws IOExceptionReads a byte array.b b16 b8 non-final binary chunk B b16 b8 final binary chunk
- 抛出:
IOException
-
readObject
public abstract Object readObject(Class expectedClass) throws IOException
Reads an arbitrary object from the input stream.- 参数:
expectedClass- the expected class if the protocol doesn't supply it.- 抛出:
IOException
-
readObject
public Object readObject(Class expectedClass, Class<?>... expectedTypes) throws IOException
Reads an arbitrary object from the input stream.- 参数:
expectedClass- the expected class if the protocol doesn't supply it.expectedTypes- the runtime type hints, eg: expectedClass equals Map, expectedTypes can equals String.class, Short.class- 抛出:
IOException
-
readObject
public abstract Object readObject() throws IOException
Reads an arbitrary object from the input stream.- 抛出:
IOException
-
readObject
public Object readObject(List<Class<?>> expectedTypes) throws IOException
Reads an arbitrary object from the input stream.- 参数:
expectedTypes- the runtime type hints, eg: expectedTypes can equals String.class, Short.class for HashMap- 抛出:
IOException
-
readRemote
public abstract Object readRemote() throws IOException
Reads a remote object reference to the stream. The type is the type of the remote interface.'r' 't' b16 b8 type url
- 抛出:
IOException
-
readRef
public abstract Object readRef() throws IOException
Reads a referenceR b32 b24 b16 b8
- 抛出:
IOException
-
addRef
public abstract int addRef(Object obj) throws IOException
Adds an object reference.- 抛出:
IOException
-
setRef
public abstract void setRef(int i, Object obj) throws IOExceptionSets an object reference.- 抛出:
IOException
-
resetReferences
public void resetReferences()
Resets the references for streaming.
-
readListStart
public abstract int readListStart() throws IOExceptionReads the start of a list- 抛出:
IOException
-
readLength
public abstract int readLength() throws IOExceptionReads the length of a list.- 抛出:
IOException
-
readMapStart
public abstract int readMapStart() throws IOExceptionReads the start of a map- 抛出:
IOException
-
readType
public abstract String readType() throws IOException
Reads an object type.- 抛出:
IOException
-
isEnd
public abstract boolean isEnd() throws IOExceptionReturns true if the data has ended.- 抛出:
IOException
-
readEnd
public abstract void readEnd() throws IOExceptionRead the end byte- 抛出:
IOException
-
readMapEnd
public abstract void readMapEnd() throws IOExceptionRead the end byte- 抛出:
IOException
-
readListEnd
public abstract void readListEnd() throws IOExceptionRead the end byte- 抛出:
IOException
-
close
public void close() throws IOException- 抛出:
IOException
-
-