01: /*
02: * Copyright (C) The MX4J Contributors.
03: * All rights reserved.
04: *
05: * This software is distributed under the terms of the MX4J License version 1.0.
06: * See the terms of the MX4J License in the documentation provided with this software.
07: */
08:
09: package mx4j.tools.config;
10:
11: import java.util.List;
12: import javax.management.MBeanServer;
13:
14: import org.w3c.dom.Element;
15: import org.w3c.dom.NamedNodeMap;
16:
17: /**
18: * @version $Revision: 1.3 $
19: */
20: public interface ConfigurationBuilder {
21: public static interface Node {
22: public void setAttributes(NamedNodeMap attributes)
23: throws ConfigurationException;
24:
25: public void setText(String text);
26:
27: public java.lang.Object configure(MBeanServer server)
28: throws ConfigurationException;
29:
30: public Node getParent();
31:
32: public void setParent(Node parent);
33:
34: public List getChildren();
35:
36: public void addChild(Node child);
37: }
38:
39: public static interface ObjectsHolder {
40: public Object getObject(String key);
41:
42: public Object putObject(String key, Object value);
43:
44: public boolean containsKey(String key);
45: }
46:
47: public Node createConfigurationNode(Element node)
48: throws ConfigurationException;
49: }
|