public class rjvm extends java.rmi.server.UnicastRemoteObject implements rjvm_intf
Modifier and Type | Class and Description |
---|---|
private class |
rjvm.PingChecker |
private class |
rjvm.Reaper |
Modifier and Type | Field and Description |
---|---|
private static boolean |
amIdle |
private java.lang.Object |
dieMutex |
private boolean |
dying |
java.lang.String |
host |
private static int |
IDLE_ARG |
private static int |
IMPLICIT_ARG |
static boolean |
implicitTermination |
private static int |
LOCAL_ARG |
private static java.lang.String |
LOCAL_HOST |
private static long |
messages |
private int |
missed |
private java.lang.String |
name |
private static int |
NAME_ARG |
private static int |
NUMARGS |
private java.lang.Thread |
pChecker |
private boolean |
pinged |
private static int |
PORT_ARG |
private static long |
ready |
private java.lang.Thread |
reaper |
private static java.util.Hashtable<java.rmi.server.UnicastRemoteObject,java.rmi.server.UnicastRemoteObject> |
remTable |
static RJX |
rjx |
(package private) static long |
serialVersionUID |
private static int |
SERVER_ARG |
private static Semaphore |
termination |
static rjvm |
thisVM |
static boolean |
threadLocalRO |
private static long |
time_inc |
private static long |
timestamp |
private static int |
verbosity |
private static int |
VERBOSITY_ARG |
static java.lang.String |
vmName |
private static int |
VMTYPE_ARG |
Modifier | Constructor and Description |
---|---|
protected |
rjvm(java.lang.String name,
java.lang.String host) |
Modifier and Type | Method and Description |
---|---|
static void |
ariseAndReceive() |
TerminationData |
checkIdle() |
protected static TerminationData |
checkLocalIdle() |
private void |
checkPing() |
static RemoteRefs |
createInstance(rjvm_intf vm,
java.lang.String cls,
java.lang.Class[] types,
java.lang.Object[] args) |
static java.lang.Object |
createInstance(rjvm_intf vm,
java.lang.String cls,
java.lang.Class[] types,
java.lang.Object[] args,
java.lang.String binclass) |
static VM |
createVM(java.lang.String onHost,
java.lang.String fromHost) |
static VM |
createVM(java.lang.String onHost,
java.lang.String fromHost,
java.lang.String cls,
java.lang.Class[] paramTypes,
java.lang.Object[] paramValues) |
static VM |
createVM(VM host,
java.lang.String fromHost) |
static VM |
createVM(VM host,
java.lang.String fromHost,
java.lang.String cls,
java.lang.Class[] paramTypes,
java.lang.Object[] paramValues) |
private static VM |
createVMProxy(java.lang.String vmType,
java.lang.String hostname,
rjvm_intf vm) |
void |
destroyVM() |
protected void |
die() |
java.lang.String |
getHost() |
java.lang.String |
getName() |
static long |
getTimestamp() |
RemoteRefs |
innerCreateInstance(java.lang.String cls,
java.lang.Class[] types,
java.lang.Object[] args) |
java.lang.Object |
innerCreateInstance(java.lang.String cls,
java.lang.Class[] types,
java.lang.Object[] args,
java.lang.String binclass) |
static void |
main(java.lang.String[] args) |
private static void |
messageReceived() |
private static void |
messageSent() |
private static void |
notifyIdle() |
private static void |
notifyNotIdle() |
void |
ping() |
static void |
registerRemote(java.rmi.server.UnicastRemoteObject rem) |
static void |
sendAndDie() |
static long |
setTimestamp(long ts) |
private static void |
startmain(java.lang.String[] args) |
private static void |
threadBirth_internal() |
static void |
threadBirth() |
private static void |
threadDeath_internal() |
static void |
threadDeath() |
private static java.lang.Object |
tryHarder(java.lang.String cls,
java.lang.Class[] types,
java.lang.Object[] args) |
void |
unregisterAllRemote() |
static void |
unregisterRemote(java.rmi.server.UnicastRemoteObject rem) |
clone, exportObject, exportObject, exportObject, unexportObject
static final long serialVersionUID
private java.lang.String name
public static java.lang.String vmName
public java.lang.String host
public static RJX rjx
public static rjvm thisVM
public static boolean threadLocalRO
private static java.util.Hashtable<java.rmi.server.UnicastRemoteObject,java.rmi.server.UnicastRemoteObject> remTable
private java.lang.Thread pChecker
private java.lang.Thread reaper
private java.lang.Object dieMutex
private boolean dying
private static Semaphore termination
public static boolean implicitTermination
private static int verbosity
private static final int NUMARGS
private static final int SERVER_ARG
private static final int NAME_ARG
private static final int LOCAL_ARG
private static final int PORT_ARG
private static final int IMPLICIT_ARG
private static final int VERBOSITY_ARG
private static final int IDLE_ARG
private static final int VMTYPE_ARG
private static final java.lang.String LOCAL_HOST
private static long timestamp
private static final long time_inc
private boolean pinged
private int missed
private static long ready
private static long messages
private static boolean amIdle
protected rjvm(java.lang.String name, java.lang.String host) throws java.rmi.RemoteException
java.rmi.RemoteException
public java.lang.String getName()
public void destroyVM() throws java.rmi.RemoteException
protected void die()
public static RemoteRefs createInstance(rjvm_intf vm, java.lang.String cls, java.lang.Class[] types, java.lang.Object[] args)
public RemoteRefs innerCreateInstance(java.lang.String cls, java.lang.Class[] types, java.lang.Object[] args) throws java.rmi.RemoteException
innerCreateInstance
in interface rjvm_intf
java.rmi.RemoteException
private static java.lang.Object tryHarder(java.lang.String cls, java.lang.Class[] types, java.lang.Object[] args) throws java.lang.Exception
java.lang.Exception
public static java.lang.Object createInstance(rjvm_intf vm, java.lang.String cls, java.lang.Class[] types, java.lang.Object[] args, java.lang.String binclass)
public java.lang.Object innerCreateInstance(java.lang.String cls, java.lang.Class[] types, java.lang.Object[] args, java.lang.String binclass) throws java.rmi.RemoteException
innerCreateInstance
in interface rjvm_intf
java.rmi.RemoteException
private static void startmain(java.lang.String[] args) throws java.lang.Exception
java.lang.Exception
public static void main(java.lang.String[] args)
args
- the VM args ...private static VM createVMProxy(java.lang.String vmType, java.lang.String hostname, rjvm_intf vm)
public static void registerRemote(java.rmi.server.UnicastRemoteObject rem)
public static void unregisterRemote(java.rmi.server.UnicastRemoteObject rem)
public void unregisterAllRemote()
public static long getTimestamp()
public static long setTimestamp(long ts)
public final void ping() throws java.rmi.RemoteException
private void checkPing()
public static final void threadBirth()
private static final void threadBirth_internal()
public static final void threadDeath()
private static final void threadDeath_internal()
private static final void messageSent()
private static final void messageReceived()
public static final void sendAndDie()
public static final void ariseAndReceive()
private static final void notifyNotIdle()
private static final void notifyIdle()
public final TerminationData checkIdle() throws java.rmi.RemoteException
protected static final TerminationData checkLocalIdle()
public static VM createVM(java.lang.String onHost, java.lang.String fromHost)
public static VM createVM(java.lang.String onHost, java.lang.String fromHost, java.lang.String cls, java.lang.Class[] paramTypes, java.lang.Object[] paramValues)