Package jist.runtime

Provides the entire JiST (Java in Simulation Time) runtime framework and simulation time functionality.

See:
          Description

Interface Summary
ClassTraversal.Visitor ClassTraversal upcall interface.
ControllerRemote Remote (RMI) interface that Controllers implement and use to interoperate.
Entity An internal interface that all JistAPI.Entity application objects are rewritten to implement.
JistAPI.CustomRewriter Interface for custom rewrite pass.
JistAPI.DoNotRewrite Do not rewrite tagged class.
JistAPI.Entity Tags a simulation object as an Entity.
JistAPI.Logger Interface for custom logger.
JistAPI.Proxiable Tags an object as a target for a Proxy Entity.
JistAPI.Timeless Tags a simulation object as an Timeless.
RemoteIO.RemoteInputStreamRemote Interface for remote input stream.
RemoteIO.RemoteOutputStreamRemote Interface for remote output stream.
RemoteJist.JistClientRemote Remote JiST client interface.
RemoteJist.JobQueueServerRemote Remote job queue server interface.
RemoteJist.PingRemote Remote ping interface.
RemoteJist.ResourceFinderRemote Remote resource finder interface.
Timeless An internal interface (should not be mentioned in simulation programs) that all JistAPI.Timeless application objects or objects that are immutable are rewritten to implement.
 

Class Summary
BlockingSleep Implements API support for blocking sleeps.
Bootstrap Bootstrap entities to start simulations.
Bootstrap.Bsh A special-purpose Entity used to bootstrap the simulation.
Bootstrap.JavaMain A special-purpose Entity used to bootstrap the simulation.
Bootstrap.Jython A special-purpose Entity used to bootstrap the simulation.
Bootstrap.StaticRunnableCaller Shell class to perform static invocations.
Channel Implements a single-slot channel ala Communicating Sequential Processes (CSP) by Hoare.
ClassTraversal Facilitates traversal and and modification of a BCEL JavaClass structure.
ClassTraversal.Empty Provides a default (empty) implementation of the Visitor.
Controller Maintains all the data structures of a single simulation thread of execution.
Controller.JistThread Provides a Thread with a slot to store the Controller instance.
Entity.Empty Dummy implementation of Entity interface.
Entity.Static Entity used for static calls.
EntityRef Stores a reference to a (possibly remote) Entity object.
EntityRefDist Distributed EntityRef.
Event Stores the details of an entity invocation for processing at the appropriate simulation time.
Event.Continuation Stores a continuation information for blocking event calls.
Event.ContinuationFrame Stores a single stack frame for event calls with continuation.
Event.EventComparator Comparator used to compare two events in terms of their timestamp.
EventLocation Extends Event to include its originating location.
JistAPI Represents the JIST application interface to the JIST system.
JistAPI_Impl The concrete implementation of the JistAPI application interface stub.
Main Primary entry-point into the JIST system.
Main.CommandLineOptions Parsed JiST command-line options.
Node Stores and manipulates host:port information.
Pickle Support for pickling and unpickling common data objects.
Pool Contains the various classes that pool objects for performance.
Pool.ArrayPool Implements an object pool for the massively used Object array objects.
Pool.ContinuationPool Implements an object pool for the massively used Continuation objects.
Pool.EventPool Implements an object pool for the massively used Event objects.
ProxyEntity Implementation of a dynamic Proxy Entity for an object, an entity that forwards all of its calls (according to a mutual interface) to a regular object, but in simulation time.
ProxyEntity.ProxyEntityHandler Handles all invocations from the Controller on the proxy entity and passes them on to the target object.
ProxyPoint Firewall and NAT-busting functionality for JiST (and any RMI client).
ProxyPoint.ProxyAcceptSocket A Socket on the server-side that operates via the ProxyPoint proxy.
ProxyPoint.ProxyClientSocket A Socket on the client-side that operates via the ProxyPoint proxy.
ProxyPoint.ProxyServerSocket A ServerSocket that operates via the ProxyPoint proxy.
ProxyPoint.ProxySocketFactory An RMI socket factory that returns proxied sockets.
ProxyPoint.StreamPump A Runnable object that pumps from an InputStream to an OutputStream.
RemoteIO RMI-based remote input and output streams.
RemoteIO.PrintStreamWithExceptions A special PrintStream that *does* throw exceptions.
RemoteIO.RemoteInputStream Local-side of remote input stream.
RemoteIO.RemoteInputStreamSender Remote-side of remote input stream.
RemoteIO.RemoteInputStreamSenderLocal LOCAL remote input stream.
RemoteIO.RemoteOutputStream Local-side of remote output stream.
RemoteIO.RemoteOutputStreamReceiver Remote-side of remote output stream.
RemoteIO.RemoteOutputStreamReceiverLocal LOCAL remote output stream.
RemoteJist All the JiST client-server related remote classes.
RemoteJist.JistClient Remote JiST client RMI "server".
RemoteJist.JistClientLocal Local JiST client.
RemoteJist.Job A simulation job.
RemoteJist.JobQueueServer Job queue server.
RemoteJist.Ping Ping server.
RemoteJist.RemoteClassLoader An RMI-based remote class loader.
RemoteJist.RemoteRepository An RMI-based remote BCEL repository.
Rewriter A custom class loader used by the JIST system to modify standard Java applications at load-time to run under "Simulation Time".
RewriterFlow Perform data flow analysis.
RewriterFlow.FlowInfoMap An accessor class to conveniently query data flow information.
RewriterFlow.WildcardReturnaddressType Utility class to replace BCEL's ReturnaddressType and ignore the return address when checking for type equality for stack merging purposes.
RewriterTraversalAddAccessorMethods Traversal object that creates both set and get accessor methods for each public field.
RewriterTraversalAddEntityMethodStubs Traversal object that adds fields in an entity object that store method references.
RewriterTraversalAddSelfEntityRef Traversal object that adds the a self-reference EntityRef field, as well as the appropriate accessor methods (part of the Entity interface).
RewriterTraversalContinuableMethods Traversal object that modifies continuable methods.
RewriterTraversalImplementEntityInterface Traversal object that tags a class as implementing the Entity interface.
RewriterTraversalImplementTimelessInterface Traversal object that tags a class as implementing the Timeless interface.
RewriterTraversalModifyEntityCreation Traversal object that ensures all entity creation operations are modified to result in an EntityRef on the stack, instead of the original Entity.
RewriterTraversalModifyEntityInvocation Traversal object that intercepts any method invocation instructions to entity objects.
RewriterTraversalModifyEntityReferences Traversal object that converts any references to entity objects within a class into EntityRef objects.
RewriterTraversalRemoveFieldAccess Traversal object that ensures all entity field access operations are converted to method invocations.
RewriterTraversalRemoveNop Traversal object that removes NOP instructions.
RewriterTraversalTranslateAPICalls Traversal object that translates JistAPI method calls into their appropriate Jist system calls.
RewriterTraversalVerifyAll Traversal object that ensures that a given class obeys the specific coding norms of JIST applications.
RewriterTraversalVerifyEntity Traversal object that ensures that a given entity obeys the specific coding norms of JIST applications.
RewriterVerify Perform the basic Java class verification checks.
Scheduler Event scheduler interface and implementations.
Scheduler.Calendar Implementation of calendar queue event scheduler.
Scheduler.Heap Implements an array-based heap of Events.
Util Miscellaneous utilities used by JIST.
 

Error Summary
JistAPI.Continuable Tags a method (explicitly) as continuable.
JistAPI.Continuation Tags a method as call-with-continuation (blocking).
JistException Encodes the RuntimeExceptions related to JiST system operations.
JistException.JistSimulationEndException End of simulation Jist exception.
 

Package jist.runtime Description

Provides the entire JiST (Java in Simulation Time) runtime framework and simulation time functionality.

The more notable classes in this package are: