public interface IProtocol
A class implementing a given protocol prot must be named
com.sun.star.lib.uno.protocols.prot.prot
and must have a public constructor that takes four arguments: The first
argument of type com.sun.star.uno.IBridge must not be null. The
second argument of type String represents any attributes; it may
be null if there are no attributes. The third argument of type
java.io.InputStream must not be null. The fourth argument of
type java.io.OutputStream must not be null.
| Modifier and Type | Method and Description |
|---|---|
void |
init()
Initializes the connection.
|
Message |
readMessage()
Reads a request or reply message.
|
void |
terminate() |
void |
writeReply(boolean exception,
ThreadId tid,
Object result)
Writes a reply message.
|
boolean |
writeRequest(String oid,
com.sun.star.lib.uno.typedesc.TypeDescription type,
String function,
ThreadId tid,
Object[] arguments)
Writes a request message.
|
void init() throws IOException
This method must be called exactly once, after the
readMessage loop has already been established.
IOExceptionvoid terminate()
Message readMessage() throws IOException
Access to this method from multiple threads must be properly synchronized.
java.io.IOException is thrown instead.IOExceptionboolean writeRequest(String oid, com.sun.star.lib.uno.typedesc.TypeDescription type, String function, ThreadId tid, Object[] arguments) throws IOException
oid - a non-null OID.type - a non-null UNO type.function - a non-null function (the name of a UNO interface method
or attribute compatible with the given type, or either
"queryInterface" or "release").tid - a non-null TID.arguments - a list of UNO arguments compatible with the given
type and function; may be null to represent
an empty list.true if the request message is sent as a synchronous
request.IOExceptionvoid writeReply(boolean exception,
ThreadId tid,
Object result)
throws IOException
exception - true if the reply corresponds to a raised
exception.tid - a non-null TID.result - if exception is true, a non-null
UNO exception; otherwise, a UNO return value, which may be null to
represent a VOID return value.IOException