JanosVM v1.0 API

java.lang.isolate
Class IsolateMessage

java.lang.Object
  |
  +--java.lang.isolate.IsolateMessage
Direct Known Subclasses:
IsolateMessage_DataMessage, IsolateMessage_IOMessage

public abstract class IsolateMessage
extends java.lang.Object


Field Summary
static IsolateMessage EMPTY_MESSAGE
          Really a global value.
 
Constructor Summary
(package private) IsolateMessage()
           
 
Method Summary
abstract  void acceptVisitor(IsolateMessageVisitor lmv)
           
 byte[] getByteArray()
           
 IsolateMessage[] getComposite()
           
 java.net.DatagramSocket getDatagramSocket()
           
 java.io.FileInputStream getFileInputStream()
           
 java.io.FileOutputStream getFileOutputStream()
           
 Isolate getIsolate()
           
 IsolateEvent getIsolateEvent()
           
 Link getLink()
           
 java.lang.Object getSerializable()
           
 java.net.ServerSocket getServerSocket()
           
 java.net.Socket getSocket()
           
 java.lang.String getString()
           
(package private) abstract  boolean isIOMessage()
          Return true if this message contains an IO object suitable for stdio redirection.
static IsolateMessage newByteArrayMessage(byte[] b)
           
static IsolateMessage newCompositeMessage(IsolateMessage[] m)
           
static IsolateMessage newDatagramSocketMessage(java.net.DatagramSocket s)
           
static IsolateMessage newFileInputStreamMessage(java.io.FileInputStream f)
           
static IsolateMessage newFileOutputStreamMessage(java.io.FileOutputStream f)
           
static IsolateMessage newIsolateEventMessage(IsolateEvent e)
           
static IsolateMessage newIsolateMessage(Isolate i)
           
static IsolateMessage newLinkMessage(Link l)
           
static IsolateMessage newSerializableMessage(java.lang.Object o)
           
static IsolateMessage newServerSocketMessage(java.net.ServerSocket s)
           
static IsolateMessage newSocketMessage(java.net.Socket s)
           
static IsolateMessage newStringMessage(java.lang.String s)
           
(package private)  void pretranslate()
          Set up a message for translation.
 java.lang.String toString()
           
(package private) abstract  IsolateMessage translate(TeamHandle sourceTeam, TeamHandle currentTeam)
          INTERNAL translation of IsolateMessage XXX thrown exception is odd? (IOException for fd duping errors)
(package private)  java.lang.String typeName()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait, wait0
 

Field Detail

EMPTY_MESSAGE

public static final IsolateMessage EMPTY_MESSAGE
Really a global value. Immutable, and eternally referenceable, so giving everyone in the system a pointer to this is okay by me.
Constructor Detail

IsolateMessage

IsolateMessage()
Method Detail

newIsolateMessage

public static IsolateMessage newIsolateMessage(Isolate i)
                                        throws java.lang.IllegalArgumentException

newLinkMessage

public static IsolateMessage newLinkMessage(Link l)

newIsolateEventMessage

public static IsolateMessage newIsolateEventMessage(IsolateEvent e)

newCompositeMessage

public static IsolateMessage newCompositeMessage(IsolateMessage[] m)

newByteArrayMessage

public static IsolateMessage newByteArrayMessage(byte[] b)

newStringMessage

public static IsolateMessage newStringMessage(java.lang.String s)

newDatagramSocketMessage

public static IsolateMessage newDatagramSocketMessage(java.net.DatagramSocket s)

newSocketMessage

public static IsolateMessage newSocketMessage(java.net.Socket s)

newServerSocketMessage

public static IsolateMessage newServerSocketMessage(java.net.ServerSocket s)

newFileInputStreamMessage

public static IsolateMessage newFileInputStreamMessage(java.io.FileInputStream f)

newFileOutputStreamMessage

public static IsolateMessage newFileOutputStreamMessage(java.io.FileOutputStream f)

newSerializableMessage

public static IsolateMessage newSerializableMessage(java.lang.Object o)

getIsolate

public Isolate getIsolate()
                   throws java.lang.IllegalStateException

getComposite

public IsolateMessage[] getComposite()
                              throws java.lang.IllegalStateException

getLink

public Link getLink()
             throws java.lang.IllegalStateException

getIsolateEvent

public IsolateEvent getIsolateEvent()
                             throws java.lang.IllegalStateException

getFileInputStream

public java.io.FileInputStream getFileInputStream()
                                           throws java.lang.IllegalStateException

getFileOutputStream

public java.io.FileOutputStream getFileOutputStream()
                                             throws java.lang.IllegalStateException

getByteArray

public byte[] getByteArray()
                    throws java.lang.IllegalStateException

getString

public java.lang.String getString()
                           throws java.lang.IllegalStateException

getDatagramSocket

public java.net.DatagramSocket getDatagramSocket()
                                          throws java.lang.IllegalStateException

getSocket

public java.net.Socket getSocket()
                          throws java.lang.IllegalStateException

getServerSocket

public java.net.ServerSocket getServerSocket()
                                      throws java.lang.IllegalStateException

getSerializable

public java.lang.Object getSerializable()
                                 throws java.lang.IllegalStateException,
                                        LinkSerializationException

acceptVisitor

public abstract void acceptVisitor(IsolateMessageVisitor lmv)
                            throws LinkSerializationException

typeName

java.lang.String typeName()

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

isIOMessage

abstract boolean isIOMessage()
Return true if this message contains an IO object suitable for stdio redirection.

pretranslate

void pretranslate()
            throws LinkSerializationException
Set up a message for translation. (Only used by serializables to make sure they're serialized before sending). Used by composite, too.

translate

abstract IsolateMessage translate(TeamHandle sourceTeam,
                                  TeamHandle currentTeam)
                           throws ClosedLinkException,
                                  java.io.IOException
INTERNAL translation of IsolateMessage XXX thrown exception is odd? (IOException for fd duping errors)

JanosVM v1.0 API

This documentation is Copyright (C) 2000-2003 The University of Utah. All Rights Reserved. See the documentation license for distribution terms and restrictions.
Documentation, software, and mailing lists for the JanosVM can be found at the Janos Project web page: http://www.cs.utah.edu/flux/janos/
Generated on Feb 13, 2003