ozone core API

org.ozoneDB.core
Class AbstractObjectContainer

java.lang.Object
  |
  +--org.ozoneDB.core.AbstractObjectContainer
All Implemented Interfaces:
Lockable, ObjectContainer
Direct Known Subclasses:
AdminObjectContainer, WizardObjectContainer

public abstract class AbstractObjectContainer
extends java.lang.Object
implements ObjectContainer

Version:
$Revision: 1.3 $Date: 2002/06/08 00:49:38 $
Author:
SMB

Field Summary
private static DxMap classTable
           
private static DxMap methodTable
           
protected  int state
           
private  org.ozoneDB.OzoneProxy theProxy
           
 
Fields inherited from interface org.ozoneDB.core.ObjectContainer
IMPLNAME_POSTFIX, PROXYNAME_POSTFIX, STATE_CLEAN, STATE_CREATED, STATE_DELETED, STATE_MODIFIED, STATE_READ
 
Constructor Summary
AbstractObjectContainer()
           
 
Method Summary
 void clearState()
           
protected  java.lang.reflect.Constructor constructorFor(Env env, java.lang.Class cl, java.lang.String sig)
          Search the constructor with the specified signature.
 void createTarget(Env env, java.lang.Class cl, java.lang.String sig, java.lang.Object[] args)
           
 org.ozoneDB.OzoneInterface database()
           
static void flushMethodCache()
           
 java.lang.Object invokeTarget(Env env, int methodIndex, java.lang.Object[] args)
           
 java.lang.Object invokeTarget(Env env, java.lang.String methodName, java.lang.String sig, java.lang.Object[] args)
           
protected  java.lang.reflect.Method methodFor(Env env, java.lang.Object obj, java.lang.String methodName, java.lang.String sig, java.lang.Object[] args)
          Search the method with the specified name and signature.
 org.ozoneDB.OzoneProxy ozoneProxy()
          Return a proxy for the receiver.
 void raiseState(int newState)
           
 int state()
          Return the current state of the container.
 org.ozoneDB.OzoneCompatible targetClone()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.ozoneDB.core.ObjectContainer
deleteTarget, ensureGarbageCollectionLevel, equals, getGarbageCollectionLevel, id, isPinned, lock, modTime, name, nameTarget, permissions, pin, setName, setTarget, target, targetClass, touch, unpin
 
Methods inherited from interface org.ozoneDB.core.dr.Lockable
allLockers
 

Field Detail

methodTable

private static transient DxMap methodTable

classTable

private static transient DxMap classTable

theProxy

private transient org.ozoneDB.OzoneProxy theProxy

state

protected int state
Constructor Detail

AbstractObjectContainer

public AbstractObjectContainer()
Method Detail

state

public int state()
Description copied from interface: ObjectContainer
Return the current state of the container. Possible return values are the STATE constants defined in this class. A container can only be in one of these states at one time. The state of a container can only be raised during one transaction. So, if a container is created (STATE_CREATED) during a transaction, the state can become STATE_DELETED only.

Specified by:
state in interface ObjectContainer
Returns:
The state of the container.

raiseState

public void raiseState(int newState)

clearState

public void clearState()

database

public org.ozoneDB.OzoneInterface database()
Specified by:
database in interface ObjectContainer

ozoneProxy

public org.ozoneDB.OzoneProxy ozoneProxy()
Description copied from interface: ObjectContainer
Return a proxy for the receiver.

Specified by:
ozoneProxy in interface ObjectContainer
Returns:
Proxy for this object.

targetClone

public org.ozoneDB.OzoneCompatible targetClone()
                                        throws java.lang.Exception
Specified by:
targetClone in interface ObjectContainer
java.lang.Exception

methodFor

protected final java.lang.reflect.Method methodFor(Env env,
                                                   java.lang.Object obj,
                                                   java.lang.String methodName,
                                                   java.lang.String sig,
                                                   java.lang.Object[] args)
                                            throws java.lang.Exception
Search the method with the specified name and signature. Once a method has been invoked it is stored in a global cache that holds the method objects of all database classes.

Parameters:
methodName -
sig -
args -
java.lang.Exception

constructorFor

protected java.lang.reflect.Constructor constructorFor(Env env,
                                                       java.lang.Class cl,
                                                       java.lang.String sig)
                                                throws java.lang.Exception,
                                                       java.lang.NoSuchMethodException
Search the constructor with the specified signature. Once a constructor has been invoked it is stored in a global cache that holds the method and constructor objects of all database classes.

Parameters:
env -
sig -
java.lang.Exception
java.lang.NoSuchMethodException

flushMethodCache

public static void flushMethodCache()

invokeTarget

public java.lang.Object invokeTarget(Env env,
                                     java.lang.String methodName,
                                     java.lang.String sig,
                                     java.lang.Object[] args)
                              throws java.lang.Exception,
                                     java.lang.reflect.InvocationTargetException
Specified by:
invokeTarget in interface ObjectContainer
java.lang.Exception
java.lang.reflect.InvocationTargetException

invokeTarget

public java.lang.Object invokeTarget(Env env,
                                     int methodIndex,
                                     java.lang.Object[] args)
                              throws java.lang.Exception,
                                     java.lang.reflect.InvocationTargetException
Specified by:
invokeTarget in interface ObjectContainer
java.lang.Exception
java.lang.reflect.InvocationTargetException

createTarget

public void createTarget(Env env,
                         java.lang.Class cl,
                         java.lang.String sig,
                         java.lang.Object[] args)
                  throws java.lang.Exception
Specified by:
createTarget in interface ObjectContainer
java.lang.Exception

ozone core API

Copyright (C) The Ozone Database Project - www.ozone-db.org. All rights reserved.