|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.codehaus.aspectwerkz.definition.SystemDefinitionContainer
The SystemDefintionContainer maintains all the definition and is aware of the classloader hierarchy.
A ThreadLocal structure is used during weaving to store current classloader defintion hierarchy. Due to getResources() API, we maintain a perClassLoader loaded resource list so that it contains only resource defined within the classloader and not its parent.
Field Summary | |
static String |
AOP_META_INF_XML_FILE
The AOP deployment descriptor for any deployed unit Note: Tomcat 5 does not handles war/META-INF |
static String |
AOP_WEB_INF_XML_FILE
The AOP deployment descriptor for any deployed unit in a webapp TODO for EAR/EJB/JCA stuff |
static Map |
s_classLoaderDefinitionLocations
Map of SystemDefinition location (as URL[List]) per ClassLoader |
static Map |
s_classLoaderHierarchicalSystemDefinitions
Map of SystemDefinition[List] per ClassLoader, with the hierarchy structure |
static Map |
s_classLoaderSystemDefinitions
Map of SystemDefinition[List] per ClassLoader |
static String |
URL_JVM_OPTION_SYSTEM
Default location for default AspectWerkz definition file, JVM wide |
static String |
WEB_WEB_INF_XML_FILE
|
Constructor Summary | |
SystemDefinitionContainer()
|
Method Summary | |
static void |
deploySystemDefinitions(ClassLoader loader,
List definitions)
Hotdeploy a list of SystemDefintions as defined at the level of the given ClassLoader Note: this is used for Offline mode TODO: sync StartupManager TODO: flush sub systems defs or allow different organization if wished so ? |
static void |
disableSystemWideDefinition()
Turns on the option to avoid -Daspectwerkz.definition.file handling. |
static void |
dump(ClassLoader loader)
Pretty dump a classloader |
static Set |
getAllRegisteredClassLoaders()
Returns the list of all ClassLoaders registered so far Note: when a child ClassLoader is registered, all its parent hierarchy is registered |
static List |
getHierarchicalDefs(ClassLoader loader)
Returns the gathered SystemDefinition visible from a classloader. |
static SystemDefinition |
getSystemDefinition(ClassLoader loader,
String uuid)
Lookup for a given SystemDefinition by uuid within a given ClassLoader The lookup does not go thru the ClassLoader hierarchy |
static List |
getSystemDefinitions(ClassLoader loader)
Return the list of SystemDefinitions defined at the given ClassLoader level. |
static boolean |
isDefinedBy(ClassLoader loader,
URL def)
Check if a given resource has already been registered to a classloader and its parent hierachy |
static void |
registerClassLoader(ClassLoader loader)
Register a new ClassLoader in the system and gather all its definition and parents definitions. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
public static final Map s_classLoaderSystemDefinitions
public static final Map s_classLoaderHierarchicalSystemDefinitions
public static final Map s_classLoaderDefinitionLocations
public static final String URL_JVM_OPTION_SYSTEM
public static final String AOP_META_INF_XML_FILE
public static final String AOP_WEB_INF_XML_FILE
public static final String WEB_WEB_INF_XML_FILE
Constructor Detail |
public SystemDefinitionContainer()
Method Detail |
public static void registerClassLoader(ClassLoader loader)
loader
- the class loader to registerpublic static boolean isDefinedBy(ClassLoader loader, URL def)
loader
- the classloader which might define the resourcedef
- the resource
public static void dump(ClassLoader loader)
loader
- public static List getHierarchicalDefs(ClassLoader loader)
loader
-
public static void deploySystemDefinitions(ClassLoader loader, List definitions)
loader
- ClassLoaderdefinitions
- SystemDefinitions listpublic static List getSystemDefinitions(ClassLoader loader)
loader
-
public static SystemDefinition getSystemDefinition(ClassLoader loader, String uuid)
loader
- ClassLoaderuuid
- system uuid
public static Set getAllRegisteredClassLoaders()
public static void disableSystemWideDefinition()
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |