|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectrendsite.tools.SystemInterfaceStubBase
public abstract class SystemInterfaceStubBase
Stub out the system interface (like the test.things does). We'll put the NOP methods here and implemented methods in subclasses.
10NOV09 - EPG - First package release.
| Field Summary |
|---|
| Fields inherited from interface things.thinger.SystemInterface |
|---|
DEFAULT_REPORTING_THRESHOLD |
| Constructor Summary | |
|---|---|
SystemInterfaceStubBase()
|
|
| Method Summary | |
|---|---|
void |
deathNotice(things.common.ThingsException te)
Typically, this is how a process will tell the kernel it is dying, so that the kernel can clear resources. |
void |
flingException(things.common.ThingsException te)
Typically, this is a last ditch way for a process or module to pass info to the kernel when something very bad is happening. |
things.data.ThingsPropertyView |
getConfigPropertiesWritable()
Get the configuration properties that are writable. |
things.data.ThingsPropertyView |
getGlobalProperties()
Get system global property view. |
things.data.ThingsPropertyView |
getLocalProperties(java.lang.String id)
Get local property view for the given id. |
things.thinger.io.FileSystemLocator |
getLogLocal(java.lang.String id)
Get a local reference to the log if possible. |
things.thinger.kernel.ProcessInterface |
getProcessInterface(java.lang.String id)
Get a process interface. |
things.thinger.kernel.ThingsState |
getProcessState(java.lang.String id)
Get the state of a specific process. |
things.universe.Universe |
getUniverse(java.lang.String name)
Get a universe by the local name. |
things.data.ThingsPropertyView |
getUserGlobalProperties()
Get user global property view. |
things.thing.MODULE |
loadModule(java.lang.String name)
Load a module but don't do anything with it. |
things.thing.THING |
loadThing(java.lang.String name)
Load a thing but don't run it. |
void |
registerProcess(things.thinger.kernel.PCB processPCB,
things.thinger.kernel.Clearance processClearance)
Register a ready-made PCB. |
void |
requestQuit()
Ask the server to quit. |
things.thinger.SystemSuperInterface |
requestSuperSystemInterface()
Ask the kernel for a SuperSystemInterface. |
java.lang.String |
runThing(java.lang.String name)
Load and run a thing in a new process. |
java.lang.String |
runThing(java.lang.String name,
things.thinger.ExpressionInterface parentExpressor)
Load and run a thing in a new process, giving an expression parent. |
java.lang.String |
runThing(java.lang.String name,
things.thinger.ExpressionInterface parentExpressor,
things.data.ThingsPropertyView properties)
Load and run a thing in a new process, giving an expression parent. |
things.common.WhoAmI |
startProcess(things.thinger.kernel.ThingsProcess processObject,
things.data.ThingsPropertyView properties)
Start the passed process. |
things.common.WhoAmI |
startProcess(things.thinger.kernel.ThingsProcess processObject,
things.data.ThingsPropertyView properties,
things.thinger.kernel.Clearance processClearance)
Start the passed process. |
void |
waitProcessDone(java.lang.String id)
Wait until the named process if done (meaning any state that satisfies ProcessInterface.ThingsState.isDeadOrDying()==true). |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface things.thinger.SystemSuperInterface |
|---|
getSystemConduits |
| Methods inherited from interface things.thinger.SystemInterface |
|---|
getCallingProcessId, getConfigProperties, getLocalProperties, getLocalPropertiesImplementation, getNamedExpressor, getNamedLogger, getProcessList, getSharedProperties, getSystemLogger |
| Constructor Detail |
|---|
public SystemInterfaceStubBase()
| Method Detail |
|---|
public things.data.ThingsPropertyView getGlobalProperties()
throws things.thinger.SystemException
getGlobalProperties in interface things.thinger.SystemSuperInterfacethings.thinger.SystemException
public things.data.ThingsPropertyView getUserGlobalProperties()
throws things.thinger.SystemException
getUserGlobalProperties in interface things.thinger.SystemSuperInterfacethings.thinger.SystemException
public things.data.ThingsPropertyView getConfigPropertiesWritable()
throws things.thinger.SystemException
getConfigPropertiesWritable in interface things.thinger.SystemSuperInterfacethings.thinger.SystemException
public things.data.ThingsPropertyView getLocalProperties(java.lang.String id)
throws things.thinger.SystemException
getLocalProperties in interface things.thinger.SystemSuperInterfaceid - String id of the process.
things.thinger.SystemExceptionpublic void flingException(things.common.ThingsException te)
flingException in interface things.thinger.SystemSuperInterfacete - a Things exception
things.thinger.SystemExceptionWhoAmIpublic void deathNotice(things.common.ThingsException te)
deathNotice in interface things.thinger.SystemSuperInterfacete - a Things exception that indicates the reason for the death. It may be null if it was normal termination.
things.thinger.SystemExceptionWhoAmIpublic void requestQuit()
requestQuit in interface things.thinger.SystemSuperInterface
public things.common.WhoAmI startProcess(things.thinger.kernel.ThingsProcess processObject,
things.data.ThingsPropertyView properties)
throws things.common.ThingsException
startProcess in interface things.thinger.SystemSuperInterfaceprocessObject - This will be a ThingsProcess or subclass.properties - These are properties to add (or supplant) to the processes specific view before starting the process. It is ok
to pass null if there are none.
things.thinger.ThingsException
things.common.ThingsExceptionWhoAmI
public things.common.WhoAmI startProcess(things.thinger.kernel.ThingsProcess processObject,
things.data.ThingsPropertyView properties,
things.thinger.kernel.Clearance processClearance)
throws java.lang.Throwable
startProcess in interface things.thinger.SystemSuperInterfaceprocessObject - This will be a ThingsProcess or subclass.properties - These are properties to add (or supplant) to the processes specific view before starting the process. It is ok
to pass null if there are none.processClearance - specify the process clearance level. This must be at or lower than the calling process's clearance.
java.lang.ThrowableWhoAmI
public void registerProcess(things.thinger.kernel.PCB processPCB,
things.thinger.kernel.Clearance processClearance)
throws things.common.ThingsException
registerProcess in interface things.thinger.SystemSuperInterfaceprocessPCB - This will be a ready-made PCB.processClearance - The clearance level. This will be immutable.
things.common.ThingsException
public things.thinger.kernel.ThingsState getProcessState(java.lang.String id)
throws things.thinger.SystemException
If the process is not found, the state is ProcessInterface.ThingsState.STATE_INVALID.
NO CLEARANCE REQUIRED.
getProcessState in interface things.thinger.SystemInterfaceid - String id of the process.
things.thinger.SystemExceptionProcessInterface
public things.thinger.kernel.ProcessInterface getProcessInterface(java.lang.String id)
throws things.thinger.SystemException
getProcessInterface in interface things.thinger.SystemInterfaceid - String id of the process.
things.thinger.SystemExceptionProcessInterface
public void waitProcessDone(java.lang.String id)
throws things.thinger.SystemException,
java.lang.InterruptedException
If the process is not found, it will quietly return.
NO CLEARANCE REQUIRED.
waitProcessDone in interface things.thinger.SystemInterfaceid - String id of the process.
things.thinger.SystemException - for general errors or InterruptedException for thread control. Always let the InterruptedException out.
java.lang.InterruptedExceptionProcessInterface
public things.thinger.io.FileSystemLocator getLogLocal(java.lang.String id)
throws things.thinger.SystemException,
java.lang.InterruptedException
NO CLEARANCE REQUIRED.
getLogLocal in interface things.thinger.SystemInterfaceid - String id of the process.
things.thinger.SystemException - for general errors or InterruptedException for thread control. Always let the InterruptedException out.
java.lang.InterruptedExceptionProcessInterface,
FileSystemLocator
public things.thing.THING loadThing(java.lang.String name)
throws things.thinger.SystemException
loadThing in interface things.thinger.SystemInterfacethings.thinger.SystemException
public things.thing.MODULE loadModule(java.lang.String name)
throws things.thinger.SystemException
loadModule in interface things.thinger.SystemInterfacename - the name that the loader can use to find it. Typically, the full class name.
things.thinger.SystemException
public java.lang.String runThing(java.lang.String name)
throws things.thinger.SystemException
runThing in interface things.thinger.SystemInterfacethings.thinger.SystemException
public java.lang.String runThing(java.lang.String name,
things.thinger.ExpressionInterface parentExpressor)
throws things.thinger.SystemException
runThing in interface things.thinger.SystemInterfacename - the resolvable name of the thing.parentExpressor - the parent expressor.
things.thinger.SystemException
public java.lang.String runThing(java.lang.String name,
things.thinger.ExpressionInterface parentExpressor,
things.data.ThingsPropertyView properties)
throws things.thinger.SystemException
runThing in interface things.thinger.SystemInterfacename - the resolvable name of the thing.parentExpressor - the parent expressor. Set to null if there is no parent.properties - properties to add to the THING processes specific view.
things.thinger.SystemException
public things.thinger.SystemSuperInterface requestSuperSystemInterface()
throws things.thinger.SystemException
requestSuperSystemInterface in interface things.thinger.SystemInterfacethings.thinger.SystemException
public things.universe.Universe getUniverse(java.lang.String name)
throws things.thinger.SystemException
The stub version will only yield universe_testing. ever.
getUniverse in interface things.thinger.SystemInterfacename - the local name for the universe
things.thinger.SystemExceptionUniverse
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||