Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.jboss.soa.esb.common
Class ModulePropertyManager

    java.lang.Object
      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.

Author:
  marklittle

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` | `REGISTRY_MODULE`
`static java.lang.String` | `TRANSPORTS_MODULE`

Constructor Summary
`ModulePropertyManager()`

Method Summary
`static void` | `configure(java.io.InputStream 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

### CORE_MODULE

    public static final java.lang.String CORE_MODULE

See Also:
  Constant Field Values

### CONNECTION_MODULE

    public static final java.lang.String CONNECTION_MODULE

See Also:
  Constant Field Values

### REGISTRY_MODULE

    public static final java.lang.String REGISTRY_MODULE

See Also:
  Constant Field Values

### TRANSPORTS_MODULE

    public static final java.lang.String TRANSPORTS_MODULE

See Also:
  Constant Field Values

### DBSTORE_MODULE

    public static final java.lang.String DBSTORE_MODULE

See Also:
  Constant Field Values

### FILTER_MODULE

    public static final java.lang.String FILTER_MODULE

See Also:
  Constant Field Values

Constructor Detail

### ModulePropertyManager

    public ModulePropertyManager()

Method Detail

### getPropertyManager

    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.

  Parameters:
    `name` - the name of the module.
  Returns:
    the relevant property manager.

### configure

    public static void configure(java.io.InputStream esbConfig)
                          throws java.io.IOException,
                                 org.xml.sax.SAXException

  Throws:
    `java.io.IOException`
    `org.xml.sax.SAXException`

### getManagers

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

### setManagers

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

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD