|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectautohit.vm.VMCore
There are four storage mechanisms.
1- A UNIVERSE: A persistent store accessible by everyone and addressable by name.
2- ENVIRONMENT core: A shared store accessible by everyone
containing name/value pairs. There is only one per system, so
all references point to a single static instance.
set(String name, Object o) read(String name) test(String name) lock(String name) unlock(String name) waitingLock(String name)
3- PERSISTANT core: An owned store per VM that contains
name/object pairs. It is not subject to scope rules. There can
only be one instance of any named object. It is implemented as a
HashMap. This primarily meant to move object data between services,
executables, and calls. This is NOT syncronized and threadsafe.
persist(String name, Object o) free(String name) has(String name) get(String name)
4- STORAGE code: An owned store per VM that contains name/value
pairs. It is subject to scope rules. Within the reference of
a single scope, there is only one valid instance of a new
instance is created, it will supercede the previous. The storage
system uses Stacks on Hashmaps to maintain scope rules. When
the scope is discarded, it will take all instances
with it. Of course, any instances created in the prior scope(s)
will still be there. This is NOT syncronized and threadsafe.
store(String name, Object o) remove(String name) exists(String name) fetch(String name) replace(String name, Object o) getStorageNameSet()
You should not access the scope stack directly.
EPG - Rewrite - 5Mayt03
set(String name, Object o)
,
read(String name)
,
test(String name)
,
lock(String name)
,
unlock(String name)
,
waitingLock(String name)
,
persist(String name, Object o)
,
free(String name)
,
has(String name)
,
get(String name)
,
store(String name, Object o)
,
remove(String name)
,
exists(String name)
,
fetch(String name)
,
replace(String name, Object o)
,
Serialized FormField Summary | |
java.util.HashMap |
callcache
Call cache. |
java.util.Hashtable |
environment
Environment. |
protected java.util.HashMap |
persists
Persistant storage space. |
protected boolean |
scDirty
Scope stack cache dirty flag. |
protected java.util.Stack |
scope
Scope stack. |
protected java.util.HashMap |
storage
Storage space. |
Constructor Summary | |
VMCore()
Default constructor. |
|
VMCore(java.util.Hashtable env)
Constructor. |
Method Summary | |
void |
discardScopeFrame()
Discard scope frame. |
boolean |
exists(java.lang.String name)
Check for an object in storage. |
java.lang.Object |
fetch(java.lang.String name)
Fetch an object reference in storage. |
void |
free(java.lang.String name)
Free an item from persistant storage. |
java.lang.Object |
get(java.lang.String name)
Get an object in persistant storage. |
java.util.Set |
getStorageNameSet()
Get a Set of variables in scope in storage. |
boolean |
has(java.lang.String name)
Check persistant storage for an object. |
boolean |
isDirty()
Check to see if the stack is dirty. |
java.lang.Object |
lock(java.lang.String name)
Lock an item in the environment. |
void |
markScope()
Marks a scope on the scope stack |
java.lang.Object |
peek()
Peek into the scope stack. |
void |
persist(java.lang.String name,
java.lang.Object o)
Persist an item. |
java.lang.Object |
pop()
Pop an object off the stack. |
void |
push(java.lang.Object o)
Push an object onto the scope stack. |
java.lang.Object |
read(java.lang.String name)
Read an environment item if we can. |
void |
remove(java.lang.String name)
Removes an object from a store. |
void |
replace(java.lang.String name,
java.lang.Object o)
Replace an object in storage. |
java.lang.Object |
set(java.lang.String name,
java.lang.Object o)
Set an environment item if we can. |
void |
store(java.lang.String name,
java.lang.Object o)
Store an item. |
boolean |
test(java.lang.String name)
Test if environment item is accessable. |
java.lang.String |
toString()
Dump the core to a string. |
void |
unlock(java.lang.String name)
Unlock an environment item if we can. |
java.lang.Object |
waitingLock(java.lang.String name)
Wait for a lock on an environment. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
protected java.util.HashMap storage
store(String name, Object o)
,
remove(String name)
,
exists(String name)
,
fetch(String name)
,
replace(String name, Object o)
protected java.util.HashMap persists
persist(String name, Object o)
,
free(String name)
,
has(String name)
,
get(String name)
protected java.util.Stack scope
protected boolean scDirty
public java.util.Hashtable environment
set(String name, Object o)
,
read(String name)
,
test(String name)
,
lock(String name)
,
unlock(String name)
,
waitingLock(String name)
public java.util.HashMap callcache
Constructor Detail |
public VMCore()
public VMCore(java.util.Hashtable env)
Method Detail |
public void push(java.lang.Object o)
o
- the objectpublic boolean isDirty()
public java.lang.Object pop() throws java.lang.Exception
It'll throw any exception it encounters--most likely a EmptyStackException.
java.lang.Exception
public java.lang.Object peek()
public void store(java.lang.String name, java.lang.Object o) throws VMException
name
- object name as a stringo
- the object
VMException
VMException
public void remove(java.lang.String name) throws VMException
name
- object name as a string
VMException
VMException
public boolean exists(java.lang.String name) throws VMException
name
- object name as a string
VMException
VMException
public java.lang.Object fetch(java.lang.String name) throws VMException
name
- object name as a string
VMException
VMException
public java.util.Set getStorageNameSet() throws VMException
VMException
VMException
public void replace(java.lang.String name, java.lang.Object o) throws VMException
name
- object name as a stringo
- object reference
VMException
VMException
public void persist(java.lang.String name, java.lang.Object o) throws VMException
name
- object name as a stringo
- the object
VMException
VMException
public void free(java.lang.String name) throws VMException
name
- object name as a string
VMException
VMException
public java.lang.Object get(java.lang.String name) throws VMException
name
- object name as a string
VMException
VMException
public boolean has(java.lang.String name) throws VMException
name
- object name as a string
VMException
VMException
public void markScope()
public void discardScopeFrame() throws VMException
any
- VMException
VMException
public java.lang.Object lock(java.lang.String name) throws VMException
name
- object name as a string
VMException
- for en error or if the item doesn't exist.VMException
public void unlock(java.lang.String name) throws VMException
name
- object name as a string
VMException
- for en error or if the item doesn't exist.VMException
public java.lang.Object read(java.lang.String name) throws VMException
name
- object name as a string
VMException
- for en error or if the item doesn't exist.VMException
public java.lang.Object set(java.lang.String name, java.lang.Object o) throws VMException
name
- object name as a string
VMException
- for en error or if the item doesn't exist.VMException
public java.lang.Object waitingLock(java.lang.String name) throws VMException
name
- object name as a string
VMException
- for en error or if the item doesn't exist.VMException
public boolean test(java.lang.String name) throws VMException
name
- object name as a string
VMException
- for en error or if the item doesn't exist.VMException
public java.lang.String toString()
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |