Class ModulePropertyManager

  extended by org.jboss.soa.esb.common.ModulePropertyManager

public class ModulePropertyManager
extends java.lang.Object

The ESB configuration file is split into modules, each concerned with a specific capability. Each module may also depend upon another module. We use a PropertyManager per module to manage properties and relationships. All properties are grouped within sections and individual properties by . If you look at some you'll see that they may be named and may have a depends value, which relates to another section. This tells the PropertyManager to load the depends section first. A property value may be overridden by a dependant section, but the PropertyManager remembers the hierarchy, so if you want to you can inspect and change the lower level value and the PropertyManager can be used to preserve these changes if the values are written back out to the source location. The way the PropertyManager works means that it builds up a list of dependant modules in a directed acyclic graph. This means that there is a root, which can see every property below it, but nodes below cannot see properties above them: there is a level of isolation. When creating PropertyManagers, you need to specify where in the graph it is to "tie in". This obviously has an affect on what that instance can then see or do: if it goes in at the wrong level, it won't be able to see properties it may need (unless they were defined to be "system" properties, and in which case they are globally accessible.) This means that we now have isolated PropertyManagers for each module. It helps the management side of things a lot, but does mean that we have to consider where in the graph a property needs to be, or which PropertyManager we want to use to try to access it.


Field Summary
static java.lang.String CONNECTION_MODULE
static java.lang.String CORE_MODULE
static java.lang.String DBSTORE_MODULE
static java.lang.String FILTER_MODULE
static java.lang.String JCA_MODULE
static java.lang.String REGISTRY_MODULE
static java.lang.String RULES_MODULE
static java.lang.String SECURITY_MODULE
static java.lang.String TRANSPORTS_MODULE
Constructor Summary
Method Summary
static void configure( esbConfig)
static java.util.Hashtable<java.lang.String,com.arjuna.common.util.propertyservice.PropertyManager> getManagers()
static com.arjuna.common.util.propertyservice.PropertyManager getPropertyManager(java.lang.String name)
          Get the property manager responsible for the module component in the file.
static void setManagers(java.util.Hashtable<java.lang.String,com.arjuna.common.util.propertyservice.PropertyManager> managers)
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Field Detail


public static final java.lang.String CORE_MODULE
See Also:
Constant Field Values


public static final java.lang.String CONNECTION_MODULE
See Also:
Constant Field Values


public static final java.lang.String REGISTRY_MODULE
See Also:
Constant Field Values


public static final java.lang.String TRANSPORTS_MODULE
See Also:
Constant Field Values


public static final java.lang.String DBSTORE_MODULE
See Also:
Constant Field Values


public static final java.lang.String FILTER_MODULE
See Also:
Constant Field Values


public static final java.lang.String SECURITY_MODULE
See Also:
Constant Field Values


public static final java.lang.String JCA_MODULE
See Also:
Constant Field Values


public static final java.lang.String RULES_MODULE
See Also:
Constant Field Values
Constructor Detail


public ModulePropertyManager()
Method Detail


public static com.arjuna.common.util.propertyservice.PropertyManager getPropertyManager(java.lang.String name)
Get the property manager responsible for the module component in the file.

name - the name of the module.
the relevant property manager.


public static void configure( esbConfig)


public static java.util.Hashtable<java.lang.String,com.arjuna.common.util.propertyservice.PropertyManager> getManagers()


public static void setManagers(java.util.Hashtable<java.lang.String,com.arjuna.common.util.propertyservice.PropertyManager> managers)