fabric.messages
Class ReadMessage

java.lang.Object
  extended by fabric.messages.Message<RemoteStore,ReadMessage.Response>
      extended by fabric.messages.ReadMessage

public final class ReadMessage
extends Message<RemoteStore,ReadMessage.Response>

A ReadMessage represents a request from a worker to read an object at a store.


Nested Class Summary
static class ReadMessage.Response
           
 
Nested classes/interfaces inherited from class fabric.messages.Message
Message.MessageType
 
Field Summary
 long onum
          The onum of the object to read.
 
Fields inherited from class fabric.messages.Message
messageType
 
Constructor Summary
protected ReadMessage(java.io.DataInput in)
          Deserialization constructor.
  ReadMessage(long onum)
          Creates a read request for a worker.
 
Method Summary
 ReadMessage.Response dispatch(MessageHandlerThread w)
          Calls the appropriate handle(...) method on the handler.
 ReadMessage.Response response(RemoteStore c, java.io.DataInput in)
          Creates a Response message of the appropriate type using the provided input stream.
 ReadMessage.Response send(RemoteStore store)
           
 void write(java.io.DataOutput out)
          Writes this message out on the given output stream.
 
Methods inherited from class fabric.messages.Message
dispatch, receive, send
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

onum

public final long onum
The onum of the object to read.

Constructor Detail

ReadMessage

public ReadMessage(long onum)
Creates a read request for a worker.


ReadMessage

protected ReadMessage(java.io.DataInput in)
               throws java.io.IOException
Deserialization constructor.

Throws:
java.io.IOException
Method Detail

dispatch

public ReadMessage.Response dispatch(MessageHandlerThread w)
                              throws AccessException,
                                     ProtocolError
Description copied from class: Message
Calls the appropriate handle(...) method on the handler.

Overrides:
dispatch in class Message<RemoteStore,ReadMessage.Response>
Returns:
the result computed by the handler
Throws:
AccessException
ProtocolError

send

public ReadMessage.Response send(RemoteStore store)
                          throws FetchException
Throws:
FetchException

response

public ReadMessage.Response response(RemoteStore c,
                                     java.io.DataInput in)
                              throws java.io.IOException
Description copied from class: Message
Creates a Response message of the appropriate type using the provided input stream.

Specified by:
response in class Message<RemoteStore,ReadMessage.Response>
Parameters:
c - the remote node from which the response originated.
in - Input stream containing the message.
Returns:
A Response message with the appropriate type.
Throws:
java.io.IOException

write

public void write(java.io.DataOutput out)
           throws java.io.IOException
Description copied from class: Message
Writes this message out on the given output stream. Only used by the worker.

Specified by:
write in class Message<RemoteStore,ReadMessage.Response>
Throws:
java.io.IOException - if the output stream throws an IOException.