类 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 int
addRef(Object obj)
Adds an object reference.abstract boolean
checkAndReadNull()
void
close()
abstract void
completeCall()
Completes reading the callabstract void
completeReply()
Completes reading the callabstract String
getMethod()
Returns the call's methodabstract Reader
getReader()
Starts reading a string.HessianRemoteResolver
getRemoteResolver()
Sets the resolver used to lookup remote objects.void
init(InputStream is)
Initialize the Hessian stream with the underlying input stream.abstract boolean
isEnd()
Returns true if the data has ended.abstract boolean
readBoolean()
Reads a booleanabstract byte[]
readBytes()
Reads a byte array.abstract int
readCall()
Reads the callabstract double
readDouble()
Reads a double.abstract void
readEnd()
Read the end byteabstract String
readHeader()
Reads a header, returning null if there are no headers.abstract InputStream
readInputStream()
Starts reading a byte array using an input stream.abstract int
readInt()
Reads an integerabstract int
readLength()
Reads the length of a list.abstract void
readListEnd()
Read the end byteabstract int
readListStart()
Reads the start of a listabstract long
readLong()
Reads a longabstract void
readMapEnd()
Read the end byteabstract int
readMapStart()
Reads the start of a mapabstract String
readMethod()
Starts reading the callint
readMethodArgLength()
Reads the number of method argumentsNode
readNode()
Reads an XML node encoded in UTF-8abstract void
readNull()
Reads a nullabstract Object
readObject()
Reads an arbitrary object from the input stream.abstract Object
readObject(Class expectedClass)
Reads an arbitrary object from the input stream.Object
readObject(Class expectedClass, Class<?>... expectedTypes)
Reads an arbitrary object from the input stream.Object
readObject(List<Class<?>> expectedTypes)
Reads an arbitrary object from the input stream.abstract Object
readRef()
Reads a referenceabstract Object
readRemote()
Reads a remote object reference to the stream.abstract Object
readReply(Class expectedClass)
Reads a reply as an object.abstract String
readString()
Reads a string encoded in UTF-8abstract String
readType()
Reads an object type.abstract long
readUTCDate()
Reads a date.void
resetReferences()
Resets the references for streaming.abstract void
setRef(int i, Object obj)
Sets an object reference.void
setRemoteResolver(HessianRemoteResolver resolver)
Sets the resolver used to lookup remote objects.void
setSerializerFactory(SerializerFactory ser)
Sets the serializer factory.void
skipOptionalCall()
For backward compatibility with HessianSkeletonabstract void
startCall()
Starts reading the call, including the headers.abstract void
startReply()
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 IOException
Reads the callc major minor
- 抛出:
IOException
-
skipOptionalCall
public void skipOptionalCall() throws IOException
For 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 IOException
Reads the number of method arguments- 返回:
- -1 for a variable length (hessian 1.0)
- 抛出:
IOException
-
startCall
public abstract void startCall() throws IOException
Starts 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 IOException
Completes 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 Throwable
Starts reading the replyA successful completion will have a single value:
r v
- 抛出:
Throwable
-
completeReply
public abstract void completeReply() throws IOException
Completes reading the callA successful completion will have a single value:
z
- 抛出:
IOException
-
readBoolean
public abstract boolean readBoolean() throws IOException
Reads a booleanT F
- 抛出:
IOException
-
readNull
public abstract void readNull() throws IOException
Reads a nullN
- 抛出:
IOException
-
readInt
public abstract int readInt() throws IOException
Reads an integerI b32 b24 b16 b8
- 抛出:
IOException
-
readLong
public abstract long readLong() throws IOException
Reads a longL b64 b56 b48 b40 b32 b24 b16 b8
- 抛出:
IOException
-
readDouble
public abstract double readDouble() throws IOException
Reads a double.D b64 b56 b48 b40 b32 b24 b16 b8
- 抛出:
IOException
-
readUTCDate
public abstract long readUTCDate() throws IOException
Reads 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 IOException
Reads 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 IOException
Sets an object reference.- 抛出:
IOException
-
resetReferences
public void resetReferences()
Resets the references for streaming.
-
readListStart
public abstract int readListStart() throws IOException
Reads the start of a list- 抛出:
IOException
-
readLength
public abstract int readLength() throws IOException
Reads the length of a list.- 抛出:
IOException
-
readMapStart
public abstract int readMapStart() throws IOException
Reads the start of a map- 抛出:
IOException
-
readType
public abstract String readType() throws IOException
Reads an object type.- 抛出:
IOException
-
isEnd
public abstract boolean isEnd() throws IOException
Returns true if the data has ended.- 抛出:
IOException
-
readEnd
public abstract void readEnd() throws IOException
Read the end byte- 抛出:
IOException
-
readMapEnd
public abstract void readMapEnd() throws IOException
Read the end byte- 抛出:
IOException
-
readListEnd
public abstract void readListEnd() throws IOException
Read the end byte- 抛出:
IOException
-
close
public void close() throws IOException
- 抛出:
IOException
-
-