From b8a63636ff2dbea555f14b42c5a49e1555e68f85 Mon Sep 17 00:00:00 2001 From: rfeng Date: Mon, 21 Mar 2011 20:28:20 +0000 Subject: Allow the spring component to receive parent application context from the composite context git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@1083938 13f79535-47bb-0310-9956-ffa450edef68 --- .../sca/node/configuration/NodeConfiguration.java | 21 ++++++++++++++++++++- .../configuration/impl/NodeConfigurationImpl.java | 13 +++++++++++++ 2 files changed, 33 insertions(+), 1 deletion(-) (limited to 'sca-java-2.x/trunk/modules/node-api/src/main/java/org') diff --git a/sca-java-2.x/trunk/modules/node-api/src/main/java/org/apache/tuscany/sca/node/configuration/NodeConfiguration.java b/sca-java-2.x/trunk/modules/node-api/src/main/java/org/apache/tuscany/sca/node/configuration/NodeConfiguration.java index 12c6994dda..ec9148483c 100644 --- a/sca-java-2.x/trunk/modules/node-api/src/main/java/org/apache/tuscany/sca/node/configuration/NodeConfiguration.java +++ b/sca-java-2.x/trunk/modules/node-api/src/main/java/org/apache/tuscany/sca/node/configuration/NodeConfiguration.java @@ -24,6 +24,7 @@ import java.io.Reader; import java.net.URI; import java.net.URL; import java.util.List; +import java.util.Map; import javax.xml.namespace.QName; @@ -103,6 +104,24 @@ public interface NodeConfiguration { NodeConfiguration addBinding(BindingConfiguration binding); NodeConfiguration addBinding(QName bindingType, String...baseURIs); NodeConfiguration addBinding(QName bindingType, URI...baseURIs); - + List getExtensions(); + + + /** + * Allow the hosting environment to pass in a map of attributes as context + * @param name The name of the attribute + * @param value The value of the attribute + * @return + */ + Map getAttributes(); + + /** + * Configure an attribute + * @param name + * @param value + * @return + */ + NodeConfiguration setAttribute(String name, Object value); + } diff --git a/sca-java-2.x/trunk/modules/node-api/src/main/java/org/apache/tuscany/sca/node/configuration/impl/NodeConfigurationImpl.java b/sca-java-2.x/trunk/modules/node-api/src/main/java/org/apache/tuscany/sca/node/configuration/impl/NodeConfigurationImpl.java index b4ec05cae5..f3853fc4bf 100644 --- a/sca-java-2.x/trunk/modules/node-api/src/main/java/org/apache/tuscany/sca/node/configuration/impl/NodeConfigurationImpl.java +++ b/sca-java-2.x/trunk/modules/node-api/src/main/java/org/apache/tuscany/sca/node/configuration/impl/NodeConfigurationImpl.java @@ -24,7 +24,9 @@ import java.io.Reader; import java.net.URI; import java.net.URL; import java.util.ArrayList; +import java.util.HashMap; import java.util.List; +import java.util.Map; import javax.xml.namespace.QName; @@ -42,6 +44,8 @@ public class NodeConfigurationImpl implements NodeConfiguration { private List contributions = new ArrayList(); private List bindings = new ArrayList(); private List extensions = new ArrayList(); + + private transient Map attributes = new HashMap(); public String getURI() { return uri; @@ -173,4 +177,13 @@ public class NodeConfigurationImpl implements NodeConfiguration { return this; } + public Map getAttributes() { + return attributes; + } + + public NodeConfiguration setAttribute(String name, Object value) { + attributes.put(name, value); + return this; + } + } -- cgit v1.2.3