summaryrefslogtreecommitdiffstats
path: root/java/sca/modules/node-impl/src
diff options
context:
space:
mode:
authorslaws <slaws@13f79535-47bb-0310-9956-ffa450edef68>2009-09-22 12:10:18 +0000
committerslaws <slaws@13f79535-47bb-0310-9956-ffa450edef68>2009-09-22 12:10:18 +0000
commit1e2c393ad08481d370ca8120a77eeee433a327c6 (patch)
tree57c6bb595720e23e7ce9b8d08f3ce6735a695b5f /java/sca/modules/node-impl/src
parentf0625833a55060e7861287fc3a8c84d7170afc76 (diff)
Add an operation that dumps out the domain composite as a string. Am using for debugging builders where I need to see what the result of the builder processing is.
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@817626 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'java/sca/modules/node-impl/src')
-rw-r--r--java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/impl/NodeImpl.java25
1 files changed, 24 insertions, 1 deletions
diff --git a/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/impl/NodeImpl.java b/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/impl/NodeImpl.java
index 48cb5a7e07..9d8f4eeb99 100644
--- a/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/impl/NodeImpl.java
+++ b/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/impl/NodeImpl.java
@@ -19,6 +19,7 @@
package org.apache.tuscany.sca.node.impl;
+import java.io.ByteArrayOutputStream;
import java.lang.management.ManagementFactory;
import java.util.ArrayList;
import java.util.List;
@@ -26,6 +27,7 @@ import java.util.logging.Level;
import java.util.logging.Logger;
import javax.management.MBeanServer;
+import javax.xml.stream.XMLOutputFactory;
import org.apache.tuscany.sca.assembly.Component;
import org.apache.tuscany.sca.assembly.ComponentService;
@@ -35,6 +37,8 @@ import org.apache.tuscany.sca.assembly.Endpoint;
import org.apache.tuscany.sca.assembly.Service;
import org.apache.tuscany.sca.common.java.io.IOHelper;
import org.apache.tuscany.sca.contribution.Contribution;
+import org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor;
+import org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessorExtensionPoint;
import org.apache.tuscany.sca.core.ExtensionPointRegistry;
import org.apache.tuscany.sca.core.UtilityExtensionPoint;
import org.apache.tuscany.sca.core.assembly.ActivationException;
@@ -293,5 +297,24 @@ public class NodeImpl implements Node, Client {
public Composite getDomainComposite() {
return compositeActivator.getDomainComposite();
- }
+ }
+
+ public String dumpDomainComposite() {
+
+ StAXArtifactProcessorExtensionPoint xmlProcessors =
+ getExtensionPoints().getExtensionPoint(StAXArtifactProcessorExtensionPoint.class);
+ StAXArtifactProcessor<Composite> compositeProcessor =
+ xmlProcessors.getProcessor(Composite.class);
+
+ ByteArrayOutputStream bos = new ByteArrayOutputStream();
+ XMLOutputFactory outputFactory = XMLOutputFactory.newInstance();
+
+ try {
+ compositeProcessor.write(getDomainComposite(), outputFactory.createXMLStreamWriter(bos));
+ } catch(Exception ex) {
+ return ex.toString();
+ }
+
+ return bos.toString();
+ }
}