You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by js...@apache.org on 2007/10/24 22:05:50 UTC
svn commit: r587995 - in /incubator/tuscany/java/sca:
itest/callablereferences/src/test/java/org/apache/tuscany/sca/itest/callableref/
modules/binding-sca-axis2/src/test/java/org/apache/tuscany/sca/binding/sca/axis2/
modules/domain-api/src/main/java/or...
Author: jsdelfino
Date: Wed Oct 24 13:05:48 2007
New Revision: 587995
URL: http://svn.apache.org/viewvc?rev=587995&view=rev
Log:
Starting to get the store sample to use the domain/node api. Fixed the domain/node lifecycle methods as they were mixing start/stop composites and start/stop of the node itself. Fixed test cases to effectively stop/destroy the nodes in their destroy method. Moved util class to allow the store sample to use the findContribution util method.
Added:
incubator/tuscany/java/sca/modules/node-api/src/main/java/org/apache/tuscany/sca/node/util/
incubator/tuscany/java/sca/modules/node-api/src/main/java/org/apache/tuscany/sca/node/util/SCAContributionUtil.java (with props)
Removed:
incubator/tuscany/java/sca/modules/domain-impl/src/main/java/org/apache/tuscany/sca/domain/impl/SCADomainUtil.java
Modified:
incubator/tuscany/java/sca/itest/callablereferences/src/test/java/org/apache/tuscany/sca/itest/callableref/CallableReferenceRemoteTestCase.java
incubator/tuscany/java/sca/modules/binding-sca-axis2/src/test/java/org/apache/tuscany/sca/binding/sca/axis2/AsynchTestCase.java
incubator/tuscany/java/sca/modules/binding-sca-axis2/src/test/java/org/apache/tuscany/sca/binding/sca/axis2/CallbackTestCase.java
incubator/tuscany/java/sca/modules/binding-sca-axis2/src/test/java/org/apache/tuscany/sca/binding/sca/axis2/PromotionTestCase.java
incubator/tuscany/java/sca/modules/binding-sca-axis2/src/test/java/org/apache/tuscany/sca/binding/sca/axis2/SimpleTestCase.java
incubator/tuscany/java/sca/modules/binding-sca-axis2/src/test/java/org/apache/tuscany/sca/binding/sca/axis2/TestDomain.java
incubator/tuscany/java/sca/modules/binding-sca-axis2/src/test/java/org/apache/tuscany/sca/binding/sca/axis2/TestNode.java
incubator/tuscany/java/sca/modules/domain-api/src/main/java/org/apache/tuscany/sca/domain/SCADomain.java
incubator/tuscany/java/sca/modules/domain-impl/src/main/java/org/apache/tuscany/sca/domain/impl/DomainManagerNodeImpl.java
incubator/tuscany/java/sca/modules/domain-impl/src/main/java/org/apache/tuscany/sca/domain/impl/SCADomainImpl.java
incubator/tuscany/java/sca/modules/domain-impl/src/test/java/org/apache/tuscany/sca/domain/impl/DomainImplTestCase.java
incubator/tuscany/java/sca/modules/node-api/src/main/java/org/apache/tuscany/sca/node/SCANode.java
incubator/tuscany/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/impl/DomainManagerServiceImpl.java
incubator/tuscany/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/impl/NodeManagerServiceImpl.java
incubator/tuscany/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/impl/SCADomainImpl.java
incubator/tuscany/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/impl/SCANodeImpl.java
incubator/tuscany/java/sca/modules/node-impl/src/test/java/org/apache/tuscany/sca/node/impl/DomainDrivenTestCase.java
incubator/tuscany/java/sca/modules/node-impl/src/test/java/org/apache/tuscany/sca/node/impl/NodeDrivenTestCase.java
incubator/tuscany/java/sca/samples/calculator-distributed/src/main/java/node/CalculatorNode.java
incubator/tuscany/java/sca/samples/calculator-distributed/src/main/java/node/DomainNode.java
incubator/tuscany/java/sca/samples/calculator-distributed/src/test/java/calculator/DomainInMemoryTestCase.java
incubator/tuscany/java/sca/tutorial/pom.xml
incubator/tuscany/java/sca/tutorial/store-cart/pom.xml
incubator/tuscany/java/sca/tutorial/store-catalog-database/pom.xml
incubator/tuscany/java/sca/tutorial/store-catalog/pom.xml
incubator/tuscany/java/sca/tutorial/store-currency/pom.xml
incubator/tuscany/java/sca/tutorial/store-domain/src/main/java/launch/LaunchDomain.java
incubator/tuscany/java/sca/tutorial/store/pom.xml
incubator/tuscany/java/sca/tutorial/store/src/main/java/launch/Launch.java
incubator/tuscany/java/sca/tutorial/store/src/main/resources/store.composite
incubator/tuscany/java/sca/tutorial/store/src/main/resources/uiservices/store.html
Modified: incubator/tuscany/java/sca/itest/callablereferences/src/test/java/org/apache/tuscany/sca/itest/callableref/CallableReferenceRemoteTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/itest/callablereferences/src/test/java/org/apache/tuscany/sca/itest/callableref/CallableReferenceRemoteTestCase.java?rev=587995&r1=587994&r2=587995&view=diff
==============================================================================
--- incubator/tuscany/java/sca/itest/callablereferences/src/test/java/org/apache/tuscany/sca/itest/callableref/CallableReferenceRemoteTestCase.java (original)
+++ incubator/tuscany/java/sca/itest/callablereferences/src/test/java/org/apache/tuscany/sca/itest/callableref/CallableReferenceRemoteTestCase.java Wed Oct 24 13:05:48 2007
@@ -83,8 +83,8 @@
@AfterClass
public static void destroy() throws Exception {
// stop the nodes and hence the domains they contain
- nodeA.stop();
- nodeB.stop();
+ nodeA.destroy();
+ nodeB.destroy();
}
@Test
Modified: incubator/tuscany/java/sca/modules/binding-sca-axis2/src/test/java/org/apache/tuscany/sca/binding/sca/axis2/AsynchTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/binding-sca-axis2/src/test/java/org/apache/tuscany/sca/binding/sca/axis2/AsynchTestCase.java?rev=587995&r1=587994&r2=587995&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/binding-sca-axis2/src/test/java/org/apache/tuscany/sca/binding/sca/axis2/AsynchTestCase.java (original)
+++ incubator/tuscany/java/sca/modules/binding-sca-axis2/src/test/java/org/apache/tuscany/sca/binding/sca/axis2/AsynchTestCase.java Wed Oct 24 13:05:48 2007
@@ -50,8 +50,8 @@
@AfterClass
public static void destroy() throws Exception {
- nodeA.stop();
- nodeB.stop();
+ nodeA.destroy();
+ nodeB.destroy();
}
@Test
Modified: incubator/tuscany/java/sca/modules/binding-sca-axis2/src/test/java/org/apache/tuscany/sca/binding/sca/axis2/CallbackTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/binding-sca-axis2/src/test/java/org/apache/tuscany/sca/binding/sca/axis2/CallbackTestCase.java?rev=587995&r1=587994&r2=587995&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/binding-sca-axis2/src/test/java/org/apache/tuscany/sca/binding/sca/axis2/CallbackTestCase.java (original)
+++ incubator/tuscany/java/sca/modules/binding-sca-axis2/src/test/java/org/apache/tuscany/sca/binding/sca/axis2/CallbackTestCase.java Wed Oct 24 13:05:48 2007
@@ -48,8 +48,8 @@
@AfterClass
public static void destroy() throws Exception {
- nodeA.stop();
- nodeB.stop();
+ nodeA.destroy();
+ nodeB.destroy();
}
//@Test
Modified: incubator/tuscany/java/sca/modules/binding-sca-axis2/src/test/java/org/apache/tuscany/sca/binding/sca/axis2/PromotionTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/binding-sca-axis2/src/test/java/org/apache/tuscany/sca/binding/sca/axis2/PromotionTestCase.java?rev=587995&r1=587994&r2=587995&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/binding-sca-axis2/src/test/java/org/apache/tuscany/sca/binding/sca/axis2/PromotionTestCase.java (original)
+++ incubator/tuscany/java/sca/modules/binding-sca-axis2/src/test/java/org/apache/tuscany/sca/binding/sca/axis2/PromotionTestCase.java Wed Oct 24 13:05:48 2007
@@ -46,8 +46,8 @@
@AfterClass
public static void destroy() throws Exception {
- nodeA.stop();
- nodeB.stop();
+ nodeA.destroy();
+ nodeB.destroy();
}
@Test
Modified: incubator/tuscany/java/sca/modules/binding-sca-axis2/src/test/java/org/apache/tuscany/sca/binding/sca/axis2/SimpleTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/binding-sca-axis2/src/test/java/org/apache/tuscany/sca/binding/sca/axis2/SimpleTestCase.java?rev=587995&r1=587994&r2=587995&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/binding-sca-axis2/src/test/java/org/apache/tuscany/sca/binding/sca/axis2/SimpleTestCase.java (original)
+++ incubator/tuscany/java/sca/modules/binding-sca-axis2/src/test/java/org/apache/tuscany/sca/binding/sca/axis2/SimpleTestCase.java Wed Oct 24 13:05:48 2007
@@ -48,8 +48,8 @@
@AfterClass
public static void destroy() throws Exception {
- nodeA.stop();
- nodeB.stop();
+ nodeA.destroy();
+ nodeB.destroy();
}
@Test
Modified: incubator/tuscany/java/sca/modules/binding-sca-axis2/src/test/java/org/apache/tuscany/sca/binding/sca/axis2/TestDomain.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/binding-sca-axis2/src/test/java/org/apache/tuscany/sca/binding/sca/axis2/TestDomain.java?rev=587995&r1=587994&r2=587995&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/binding-sca-axis2/src/test/java/org/apache/tuscany/sca/binding/sca/axis2/TestDomain.java (original)
+++ incubator/tuscany/java/sca/modules/binding-sca-axis2/src/test/java/org/apache/tuscany/sca/binding/sca/axis2/TestDomain.java Wed Oct 24 13:05:48 2007
@@ -47,13 +47,8 @@
this.domainURI = domainURI;
}
- public void start() throws DomainException {
-
+ public void destroy() throws DomainException {
}
-
- public void stop() throws DomainException {
- }
-
public String getURI(){
return domainURI;
Modified: incubator/tuscany/java/sca/modules/binding-sca-axis2/src/test/java/org/apache/tuscany/sca/binding/sca/axis2/TestNode.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/binding-sca-axis2/src/test/java/org/apache/tuscany/sca/binding/sca/axis2/TestNode.java?rev=587995&r1=587994&r2=587995&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/binding-sca-axis2/src/test/java/org/apache/tuscany/sca/binding/sca/axis2/TestNode.java (original)
+++ incubator/tuscany/java/sca/modules/binding-sca-axis2/src/test/java/org/apache/tuscany/sca/binding/sca/axis2/TestNode.java Wed Oct 24 13:05:48 2007
@@ -123,6 +123,9 @@
public void stop()
throws NodeException {
+ }
+
+ public void destroy() throws NodeException {
try {
nodeRuntime.stop();
} catch(Exception ex) {
@@ -146,12 +149,15 @@
public void addContribution(String contributionURI, URL contributionURL, ClassLoader contributionClassLoader ) throws NodeException {
}
+
+ public void removeContribution(String contributionURI) throws NodeException {
+ }
public void removeContributions() throws NodeException {
}
- public void deployComposite(QName compositeName) throws NodeException {
+ public void addToDomainLevelComposite(QName compositeName) throws NodeException {
}
Modified: incubator/tuscany/java/sca/modules/domain-api/src/main/java/org/apache/tuscany/sca/domain/SCADomain.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/domain-api/src/main/java/org/apache/tuscany/sca/domain/SCADomain.java?rev=587995&r1=587994&r2=587995&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/domain-api/src/main/java/org/apache/tuscany/sca/domain/SCADomain.java (original)
+++ incubator/tuscany/java/sca/modules/domain-api/src/main/java/org/apache/tuscany/sca/domain/SCADomain.java Wed Oct 24 13:05:48 2007
@@ -35,15 +35,9 @@
public interface SCADomain {
/**
- * Start the SCA domain service.
+ * Destroy the SCA domain service.
*/
- public void start()
- throws DomainException;
-
- /**
- * Stop the SCA domain service.
- */
- public void stop()
+ public void destroy()
throws DomainException;
/**
Modified: incubator/tuscany/java/sca/modules/domain-impl/src/main/java/org/apache/tuscany/sca/domain/impl/DomainManagerNodeImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/domain-impl/src/main/java/org/apache/tuscany/sca/domain/impl/DomainManagerNodeImpl.java?rev=587995&r1=587994&r2=587995&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/domain-impl/src/main/java/org/apache/tuscany/sca/domain/impl/DomainManagerNodeImpl.java (original)
+++ incubator/tuscany/java/sca/modules/domain-impl/src/main/java/org/apache/tuscany/sca/domain/impl/DomainManagerNodeImpl.java Wed Oct 24 13:05:48 2007
@@ -87,11 +87,8 @@
// SCADomain API methods
- public void start() throws DomainException {
+ public void destroy() throws DomainException {
}
-
- public void stop() throws DomainException {
- }
public String getURI(){
return null;
@@ -149,6 +146,9 @@
public void stop() throws NodeException {
}
+
+ public void destroy() throws NodeException {
+ }
public String getURI(){
return null;
@@ -161,8 +161,10 @@
public void addContribution(String contributionURI, URL contributionURL) throws NodeException {
}
+ public void removeContribution(String contributionURI) throws NodeException {
+ }
- public void deployComposite(QName compositeName) throws NodeException {
+ public void addToDomainLevelComposite(QName compositeName) throws NodeException {
}
Modified: incubator/tuscany/java/sca/modules/domain-impl/src/main/java/org/apache/tuscany/sca/domain/impl/SCADomainImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/domain-impl/src/main/java/org/apache/tuscany/sca/domain/impl/SCADomainImpl.java?rev=587995&r1=587994&r2=587995&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/domain-impl/src/main/java/org/apache/tuscany/sca/domain/impl/SCADomainImpl.java (original)
+++ incubator/tuscany/java/sca/modules/domain-impl/src/main/java/org/apache/tuscany/sca/domain/impl/SCADomainImpl.java Wed Oct 24 13:05:48 2007
@@ -21,9 +21,7 @@
import java.net.URI;
import java.net.URL;
-import java.util.ArrayList;
import java.util.HashMap;
-import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;
@@ -54,8 +52,9 @@
import org.apache.tuscany.sca.host.embedded.impl.ReallySmallRuntime;
import org.apache.tuscany.sca.interfacedef.InterfaceContract;
import org.apache.tuscany.sca.interfacedef.java.JavaInterfaceFactory;
-import org.apache.tuscany.sca.node.NodeManagerService;
import org.apache.tuscany.sca.node.NodeFactoryImpl;
+import org.apache.tuscany.sca.node.NodeManagerService;
+import org.apache.tuscany.sca.node.util.SCAContributionUtil;
import org.apache.tuscany.sca.runtime.RuntimeComponent;
import org.apache.tuscany.sca.runtime.RuntimeComponentContext;
import org.apache.tuscany.sca.runtime.RuntimeComponentReference;
@@ -143,7 +142,7 @@
// Find the composite that will configure the domain
String domainCompositeName = "domain.composite";
- URL contributionURL = SCADomainUtil.findContributionFromComposite(domainClassLoader, domainCompositeName);
+ URL contributionURL = SCAContributionUtil.findContributionFromResource(domainClassLoader, domainCompositeName);
if ( contributionURL != null ){
logger.log(Level.INFO, "Domain management configured from " + contributionURL);
@@ -341,12 +340,7 @@
// SCADomain API methods
- public void start() throws DomainException {
- // TODO
- }
-
-
- public void stop() throws DomainException {
+ public void destroy() throws DomainException {
try {
// Stop the node
domainManagementRuntime.stop();
@@ -354,8 +348,7 @@
} catch(ActivationException ex) {
throw new DomainException(ex);
}
-
- }
+ }
public String getURI(){
return domainModel.getDomainURI();
Modified: incubator/tuscany/java/sca/modules/domain-impl/src/test/java/org/apache/tuscany/sca/domain/impl/DomainImplTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/domain-impl/src/test/java/org/apache/tuscany/sca/domain/impl/DomainImplTestCase.java?rev=587995&r1=587994&r2=587995&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/domain-impl/src/test/java/org/apache/tuscany/sca/domain/impl/DomainImplTestCase.java (original)
+++ incubator/tuscany/java/sca/modules/domain-impl/src/test/java/org/apache/tuscany/sca/domain/impl/DomainImplTestCase.java Wed Oct 24 13:05:48 2007
@@ -64,7 +64,7 @@
@AfterClass
public static void destroy() throws Exception {
// stop the domain
- domain.stop();
+ domain.destroy();
System.out.println("Domain stopped");
}
Modified: incubator/tuscany/java/sca/modules/node-api/src/main/java/org/apache/tuscany/sca/node/SCANode.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/node-api/src/main/java/org/apache/tuscany/sca/node/SCANode.java?rev=587995&r1=587994&r2=587995&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/node-api/src/main/java/org/apache/tuscany/sca/node/SCANode.java (original)
+++ incubator/tuscany/java/sca/modules/node-api/src/main/java/org/apache/tuscany/sca/node/SCANode.java Wed Oct 24 13:05:48 2007
@@ -59,21 +59,33 @@
public void addContribution(String contributionURI, URL contributionURL) throws NodeException;
/**
- * Deploy the named composite if it hasn't already been deployed
+ * Remove an SCA contribution from the node.
+ *
+ * @param contributionURI the URI of the contribution
+ */
+ public void removeContribution(String contributionURI) throws NodeException;
+
+ /**
+ * Add the named deployable composite to the domain level composite
*
* @param compositeQName the name of the composite to be deployed
*/
- public void deployComposite(QName compositeQName) throws NodeException;
+ public void addToDomainLevelComposite(QName compositeQName) throws NodeException;
/**
- * Start the SCA node service and all the deployed composites
+ * Start all the deployed composites
*/
public void start() throws NodeException;
/**
- * Stop the SCA node service and all of the deployed composites
+ * Stop all of the deployed composites
*/
public void stop() throws NodeException;
+ /**
+ * Destroy the node.
+ */
+ public void destroy() throws NodeException;
+
}
Added: incubator/tuscany/java/sca/modules/node-api/src/main/java/org/apache/tuscany/sca/node/util/SCAContributionUtil.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/node-api/src/main/java/org/apache/tuscany/sca/node/util/SCAContributionUtil.java?rev=587995&view=auto
==============================================================================
--- incubator/tuscany/java/sca/modules/node-api/src/main/java/org/apache/tuscany/sca/node/util/SCAContributionUtil.java (added)
+++ incubator/tuscany/java/sca/modules/node-api/src/main/java/org/apache/tuscany/sca/node/util/SCAContributionUtil.java Wed Oct 24 13:05:48 2007
@@ -0,0 +1,111 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.tuscany.sca.node.util;
+
+import java.io.File;
+import java.net.MalformedURLException;
+import java.net.URL;
+
+
+/**
+ * Utility methods to find an SCA contribution from a class or a resource.
+ *
+ * @version $Rev$ $Date$
+ */
+public class SCAContributionUtil {
+
+ /**
+ * Given a class this method finds the contribution that it belongs to.
+ * This could be either a local directory of a jar file.
+ *
+ * @param clazz
+ * @return the contribution URL
+ * @throws MalformedURLException
+ */
+ public static URL findContributionFromClass(Class<?> clazz) throws MalformedURLException {
+ return findContributionFromResource(clazz.getClassLoader(), clazz.getName().replace('.', '/') + ".class");
+ }
+
+ /**
+ * Given the path to a resource this method finds the contribution that it belongs to
+ * this could be either a local directory of a jar file.
+ *
+ * @param classLoader
+ * @param compositeString
+ * @return the contribution URL
+ * @throws MalformedURLException
+ */
+ public static URL findContributionFromResource(ClassLoader classLoader, String compositeString) throws MalformedURLException {
+
+ URL contributionURL = classLoader.getResource(compositeString);
+
+ if ( contributionURL != null ){
+ String contributionURLString = contributionURL.toExternalForm();
+ String protocol = contributionURL.getProtocol();
+
+ if ("file".equals(protocol)) {
+ // directory contribution
+ if (contributionURLString.endsWith(compositeString)) {
+ String location = contributionURLString.substring(0, contributionURLString.lastIndexOf(compositeString));
+ // workaround from evil url/uri form maven
+ contributionURL = toFile(new URL(location)).toURI().toURL();
+ }
+
+ } else if ("jar".equals(protocol)) {
+ // jar contribution
+ String location = contributionURLString.substring(4, contributionURLString.lastIndexOf("!/"));
+ // workaround for evil url/uri from maven
+ contributionURL = toFile(new URL(location)).toURI().toURL();
+ }
+ }
+
+ return contributionURL;
+ }
+
+ /**
+ * Convert from a <code>URL</code> to a <code>File</code>.
+ * <p>
+ * From version 1.1 this method will decode the URL. Syntax such as
+ * <code>file:///my%20docs/file.txt</code> will be correctly decoded to
+ * <code>/my docs/file.txt</code>.
+ *
+ * @param url the file URL to convert, null returns null
+ * @return the equivalent <code>File</code> object, or <code>null</code>
+ * if the URL's protocol is not <code>file</code>
+ * @throws IllegalArgumentException if the file is incorrectly encoded
+ */
+ private static File toFile(URL url) {
+ if (url == null || !url.getProtocol().equals("file")) {
+ return null;
+ } else {
+ String filename = url.getFile().replace('/', File.separatorChar);
+ int pos = 0;
+ while ((pos = filename.indexOf('%', pos)) >= 0) { // NOPMD
+ if (pos + 2 < filename.length()) {
+ String hexStr = filename.substring(pos + 1, pos + 3);
+ char ch = (char)Integer.parseInt(hexStr, 16);
+ filename = filename.substring(0, pos) + ch + filename.substring(pos + 3);
+ }
+ }
+ return new File(filename);
+ }
+ }
+
+}
\ No newline at end of file
Propchange: incubator/tuscany/java/sca/modules/node-api/src/main/java/org/apache/tuscany/sca/node/util/SCAContributionUtil.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/tuscany/java/sca/modules/node-api/src/main/java/org/apache/tuscany/sca/node/util/SCAContributionUtil.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Modified: incubator/tuscany/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/impl/DomainManagerServiceImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/impl/DomainManagerServiceImpl.java?rev=587995&r1=587994&r2=587995&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/impl/DomainManagerServiceImpl.java (original)
+++ incubator/tuscany/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/impl/DomainManagerServiceImpl.java Wed Oct 24 13:05:48 2007
@@ -58,7 +58,8 @@
returnValue = domainManager.registerNode(nodeURI, nodeURL);
break;
} catch(UndeclaredThrowableException ex) {
- logger.log(Level.INFO, "Trying to regsiter node " +
+ ex.printStackTrace();
+ logger.log(Level.INFO, "Trying to register node " +
nodeURI +
" at endpoint " +
nodeURL);
Modified: incubator/tuscany/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/impl/NodeManagerServiceImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/impl/NodeManagerServiceImpl.java?rev=587995&r1=587994&r2=587995&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/impl/NodeManagerServiceImpl.java (original)
+++ incubator/tuscany/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/impl/NodeManagerServiceImpl.java Wed Oct 24 13:05:48 2007
@@ -93,7 +93,7 @@
*/
public void deployComposite(String compositeName) {
try {
- node.deployComposite(QName.valueOf(compositeName));
+ node.addToDomainLevelComposite(QName.valueOf(compositeName));
} catch (Exception ex){
// TODO - sort out exceptions passing across binding.sca
logger.log(Level.SEVERE, ex.toString());
Modified: incubator/tuscany/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/impl/SCADomainImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/impl/SCADomainImpl.java?rev=587995&r1=587994&r2=587995&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/impl/SCADomainImpl.java (original)
+++ incubator/tuscany/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/impl/SCADomainImpl.java Wed Oct 24 13:05:48 2007
@@ -263,19 +263,14 @@
// API methods
- public void start() throws DomainException {
- // TODO - what happens here?
- }
-
- public void stop() throws DomainException {
+ public void destroy() throws DomainException {
try {
// Stop the domain
domainManagementRuntime.stop();
} catch (Exception ex) {
throw new DomainException(ex);
}
-
- }
+ }
public String getURI(){
return domainURI;
@@ -303,7 +298,7 @@
public void addToDomainLevelComposite(QName qname) throws DomainException {
try {
- nodeImpl.deployComposite(qname);
+ nodeImpl.addToDomainLevelComposite(qname);
} catch(Exception ex) {
new DomainException(ex);
}
@@ -319,7 +314,7 @@
public void startComposite(QName qname) throws DomainException {
try {
- nodeImpl.deployComposite(qname);
+ nodeImpl.addToDomainLevelComposite(qname);
} catch(Exception ex) {
new DomainException(ex);
}
Modified: incubator/tuscany/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/impl/SCANodeImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/impl/SCANodeImpl.java?rev=587995&r1=587994&r2=587995&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/impl/SCANodeImpl.java (original)
+++ incubator/tuscany/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/impl/SCANodeImpl.java Wed Oct 24 13:05:48 2007
@@ -224,13 +224,20 @@
}
public void stop() throws NodeException {
+ stopComposites();
+ }
+
+ public void destroy() throws NodeException {
try {
- // remove contributions
+ if (compositesToStart.size() != 0) {
+ stopComposites();
+ }
removeAllContributions();
+ nodeRuntime.stop();
} catch (Exception ex) {
throw new NodeException(ex);
}
- }
+ }
public String getURI(){
return nodeURI;
@@ -290,12 +297,18 @@
throw new NodeException(ex);
}
}
+
+ public void removeContribution(String contributionURI) throws NodeException {
+ try {
+ nodeRuntime.getContributionService().remove(contributionURI);
+ } catch (Exception ex) {
+ throw new NodeException(ex);
+ }
+ contributions.remove(contributionURI);
+ }
private void removeAllContributions() throws NodeException {
try {
- // stop any running composites
- stopComposites();
-
// Remove all contributions
for (String contributionURI : contributions.keySet()){
nodeRuntime.getContributionService().remove(contributionURI);
@@ -306,7 +319,7 @@
}
}
- public void deployComposite(QName compositeName) throws NodeException {
+ public void addToDomainLevelComposite(QName compositeName) throws NodeException {
// if the named composite is not already in the list then
// add it
if (compositesToStart.indexOf(compositeName) == -1 ){
Modified: incubator/tuscany/java/sca/modules/node-impl/src/test/java/org/apache/tuscany/sca/node/impl/DomainDrivenTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/node-impl/src/test/java/org/apache/tuscany/sca/node/impl/DomainDrivenTestCase.java?rev=587995&r1=587994&r2=587995&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/node-impl/src/test/java/org/apache/tuscany/sca/node/impl/DomainDrivenTestCase.java (original)
+++ incubator/tuscany/java/sca/modules/node-impl/src/test/java/org/apache/tuscany/sca/node/impl/DomainDrivenTestCase.java Wed Oct 24 13:05:48 2007
@@ -60,7 +60,6 @@
SCADomainFactory domainFactory = SCADomainFactory.newInstance();
domain = domainFactory.createSCADomain(DEFAULT_DOMAIN_URI);
- domain.start();
System.out.println("Setting up calculator nodes");
@@ -101,10 +100,10 @@
@AfterClass
public static void destroy() throws Exception {
// stop the nodes and hence the domains they contain
- nodeA.stop();
- nodeB.stop();
- nodeC.stop();
- domain.stop();
+ nodeA.destroy();
+ nodeB.destroy();
+ nodeC.destroy();
+ domain.destroy();
}
@Test
Modified: incubator/tuscany/java/sca/modules/node-impl/src/test/java/org/apache/tuscany/sca/node/impl/NodeDrivenTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/node-impl/src/test/java/org/apache/tuscany/sca/node/impl/NodeDrivenTestCase.java?rev=587995&r1=587994&r2=587995&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/node-impl/src/test/java/org/apache/tuscany/sca/node/impl/NodeDrivenTestCase.java (original)
+++ incubator/tuscany/java/sca/modules/node-impl/src/test/java/org/apache/tuscany/sca/node/impl/NodeDrivenTestCase.java Wed Oct 24 13:05:48 2007
@@ -81,7 +81,7 @@
// explicitly ask for composite to be started
nodeC = nodeFactory.createSCANode("nodeC", DEFAULT_DOMAIN_URI);
nodeC.addContribution("nodeC", cl.getResource("nodeC/"));
- nodeC.deployComposite(new QName("http://sample", "Calculator"));
+ nodeC.addToDomainLevelComposite(new QName("http://sample", "Calculator"));
nodeC.start();
SCADomainFinder domainFinder = SCADomainFinder.newInstance();
@@ -103,9 +103,9 @@
@AfterClass
public static void destroy() throws Exception {
// stop the nodes and hence the domains they contain
- nodeA.stop();
- nodeB.stop();
- nodeC.stop();
+ nodeA.destroy();
+ nodeB.destroy();
+ nodeC.destroy();
}
@Test
Modified: incubator/tuscany/java/sca/samples/calculator-distributed/src/main/java/node/CalculatorNode.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/samples/calculator-distributed/src/main/java/node/CalculatorNode.java?rev=587995&r1=587994&r2=587995&view=diff
==============================================================================
--- incubator/tuscany/java/sca/samples/calculator-distributed/src/main/java/node/CalculatorNode.java (original)
+++ incubator/tuscany/java/sca/samples/calculator-distributed/src/main/java/node/CalculatorNode.java Wed Oct 24 13:05:48 2007
@@ -56,7 +56,7 @@
SCANodeFactory nodeFactory = SCANodeFactory.newInstance();
SCANode node = nodeFactory.createSCANode(nodeName, domainName);
node.addContribution(nodeName, cl.getResource(nodeName + "/"));
- node.deployComposite(new QName("http://sample", "Calculator"));
+ node.addToDomainLevelComposite(new QName("http://sample", "Calculator"));
node.start();
// nodeA is the head node and runs some tests while all other nodes
@@ -94,6 +94,7 @@
// stop the node and all the domains in it
node.stop();
+ node.destroy();
} catch(Exception ex) {
System.err.println("Exception in node - " + ex.getMessage());
Modified: incubator/tuscany/java/sca/samples/calculator-distributed/src/main/java/node/DomainNode.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/samples/calculator-distributed/src/main/java/node/DomainNode.java?rev=587995&r1=587994&r2=587995&view=diff
==============================================================================
--- incubator/tuscany/java/sca/samples/calculator-distributed/src/main/java/node/DomainNode.java (original)
+++ incubator/tuscany/java/sca/samples/calculator-distributed/src/main/java/node/DomainNode.java Wed Oct 24 13:05:48 2007
@@ -36,12 +36,11 @@
try {
SCADomainFactory domainFactory = SCADomainFactory.newInstance();
SCADomain domain = domainFactory.createSCADomain(DEFAULT_DOMAIN_URI);
- domain.start();
System.out.println("Domain started (press enter to shutdown)");
System.in.read();
- domain.stop();
+ domain.destroy();
} catch (Exception e) {
e.printStackTrace();
}
Modified: incubator/tuscany/java/sca/samples/calculator-distributed/src/test/java/calculator/DomainInMemoryTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/samples/calculator-distributed/src/test/java/calculator/DomainInMemoryTestCase.java?rev=587995&r1=587994&r2=587995&view=diff
==============================================================================
--- incubator/tuscany/java/sca/samples/calculator-distributed/src/test/java/calculator/DomainInMemoryTestCase.java (original)
+++ incubator/tuscany/java/sca/samples/calculator-distributed/src/test/java/calculator/DomainInMemoryTestCase.java Wed Oct 24 13:05:48 2007
@@ -68,19 +68,19 @@
nodeA = nodeFactory.createSCANode("nodeA", DEFAULT_DOMAIN_URI);
nodeA.addContribution("nodeA", cl.getResource("nodeA/"));
- nodeA.deployComposite(new QName("http://sample", "Calculator"));
+ nodeA.addToDomainLevelComposite(new QName("http://sample", "Calculator"));
nodeA.start();
nodeB = nodeFactory.createSCANode("nodeB", DEFAULT_DOMAIN_URI);
nodeB.addContribution("nodeB", cl.getResource("nodeB/"));
- nodeB.deployComposite(new QName("http://sample", "Calculator"));
+ nodeB.addToDomainLevelComposite(new QName("http://sample", "Calculator"));
nodeB.start();
nodeC = nodeFactory.createSCANode("nodeC", DEFAULT_DOMAIN_URI);
nodeC.addContribution("nodeC", cl.getResource("nodeC/"));
- nodeC.deployComposite(new QName("http://sample", "Calculator"));
+ nodeC.addToDomainLevelComposite(new QName("http://sample", "Calculator"));
nodeC.start();
SCADomainFinder domainFinder = SCADomainFinder.newInstance();
@@ -103,8 +103,11 @@
public static void destroy() throws Exception {
// stop the nodes and hence the domains they contain
nodeA.stop();
+ nodeA.destroy();
nodeB.stop();
+ nodeB.destroy();
nodeC.stop();
+ nodeC.destroy();
}
@Test
Modified: incubator/tuscany/java/sca/tutorial/pom.xml
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/tutorial/pom.xml?rev=587995&r1=587994&r2=587995&view=diff
==============================================================================
--- incubator/tuscany/java/sca/tutorial/pom.xml (original)
+++ incubator/tuscany/java/sca/tutorial/pom.xml Wed Oct 24 13:05:48 2007
@@ -40,6 +40,7 @@
<module>store-cart</module>
<module>store-catalog</module>
<module>store-catalog-database</module>
+ <module>store-domain</module>
<module>store-currency</module>
<module>store-ui</module>
</modules>
Modified: incubator/tuscany/java/sca/tutorial/store-cart/pom.xml
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/tutorial/store-cart/pom.xml?rev=587995&r1=587994&r2=587995&view=diff
==============================================================================
--- incubator/tuscany/java/sca/tutorial/store-cart/pom.xml (original)
+++ incubator/tuscany/java/sca/tutorial/store-cart/pom.xml Wed Oct 24 13:05:48 2007
@@ -38,8 +38,15 @@
<dependencies>
<dependency>
<groupId>org.apache.tuscany.sca</groupId>
- <artifactId>tuscany-host-embedded</artifactId>
+ <artifactId>tuscany-node-api</artifactId>
<version>1.1-incubating-SNAPSHOT</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.tuscany.sca</groupId>
+ <artifactId>tuscany-node-impl</artifactId>
+ <version>1.1-incubating-SNAPSHOT</version>
+ <scope>runtime</scope>
</dependency>
<dependency>
Modified: incubator/tuscany/java/sca/tutorial/store-catalog-database/pom.xml
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/tutorial/store-catalog-database/pom.xml?rev=587995&r1=587994&r2=587995&view=diff
==============================================================================
--- incubator/tuscany/java/sca/tutorial/store-catalog-database/pom.xml (original)
+++ incubator/tuscany/java/sca/tutorial/store-catalog-database/pom.xml Wed Oct 24 13:05:48 2007
@@ -38,8 +38,15 @@
<dependencies>
<dependency>
<groupId>org.apache.tuscany.sca</groupId>
- <artifactId>tuscany-host-embedded</artifactId>
+ <artifactId>tuscany-node-api</artifactId>
<version>1.1-incubating-SNAPSHOT</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.tuscany.sca</groupId>
+ <artifactId>tuscany-node-impl</artifactId>
+ <version>1.1-incubating-SNAPSHOT</version>
+ <scope>runtime</scope>
</dependency>
<dependency>
Modified: incubator/tuscany/java/sca/tutorial/store-catalog/pom.xml
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/tutorial/store-catalog/pom.xml?rev=587995&r1=587994&r2=587995&view=diff
==============================================================================
--- incubator/tuscany/java/sca/tutorial/store-catalog/pom.xml (original)
+++ incubator/tuscany/java/sca/tutorial/store-catalog/pom.xml Wed Oct 24 13:05:48 2007
@@ -38,8 +38,15 @@
<dependencies>
<dependency>
<groupId>org.apache.tuscany.sca</groupId>
- <artifactId>tuscany-host-embedded</artifactId>
+ <artifactId>tuscany-node-api</artifactId>
<version>1.1-incubating-SNAPSHOT</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.tuscany.sca</groupId>
+ <artifactId>tuscany-node-impl</artifactId>
+ <version>1.1-incubating-SNAPSHOT</version>
+ <scope>runtime</scope>
</dependency>
<dependency>
Modified: incubator/tuscany/java/sca/tutorial/store-currency/pom.xml
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/tutorial/store-currency/pom.xml?rev=587995&r1=587994&r2=587995&view=diff
==============================================================================
--- incubator/tuscany/java/sca/tutorial/store-currency/pom.xml (original)
+++ incubator/tuscany/java/sca/tutorial/store-currency/pom.xml Wed Oct 24 13:05:48 2007
@@ -38,8 +38,15 @@
<dependencies>
<dependency>
<groupId>org.apache.tuscany.sca</groupId>
- <artifactId>tuscany-host-embedded</artifactId>
+ <artifactId>tuscany-node-api</artifactId>
<version>1.1-incubating-SNAPSHOT</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.tuscany.sca</groupId>
+ <artifactId>tuscany-node-impl</artifactId>
+ <version>1.1-incubating-SNAPSHOT</version>
+ <scope>runtime</scope>
</dependency>
<dependency>
Modified: incubator/tuscany/java/sca/tutorial/store-domain/src/main/java/launch/LaunchDomain.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/tutorial/store-domain/src/main/java/launch/LaunchDomain.java?rev=587995&r1=587994&r2=587995&view=diff
==============================================================================
--- incubator/tuscany/java/sca/tutorial/store-domain/src/main/java/launch/LaunchDomain.java (original)
+++ incubator/tuscany/java/sca/tutorial/store-domain/src/main/java/launch/LaunchDomain.java Wed Oct 24 13:05:48 2007
@@ -19,15 +19,21 @@
package launch;
+import org.apache.tuscany.sca.domain.SCADomain;
+import org.apache.tuscany.sca.domain.SCADomainFactory;
+
public class LaunchDomain {
public static void main(String[] args) throws Exception {
+
System.out.println("Starting ...");
- //SCADomain scaDomain = SCADomain.newInstance("store-currency.composite");
+ SCADomainFactory domainFactory = SCADomainFactory.newInstance();
+ SCADomain domain = domainFactory.createSCADomain("http://localhost:8877");
System.out.println("store domain controller ready for big business !!!");
System.in.read();
+
System.out.println("Stopping ...");
- scaDomain.close();
+ domain.destroy();
System.out.println();
}
}
Modified: incubator/tuscany/java/sca/tutorial/store/pom.xml
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/tutorial/store/pom.xml?rev=587995&r1=587994&r2=587995&view=diff
==============================================================================
--- incubator/tuscany/java/sca/tutorial/store/pom.xml (original)
+++ incubator/tuscany/java/sca/tutorial/store/pom.xml Wed Oct 24 13:05:48 2007
@@ -38,8 +38,15 @@
<dependencies>
<dependency>
<groupId>org.apache.tuscany.sca</groupId>
- <artifactId>tuscany-host-embedded</artifactId>
+ <artifactId>tuscany-node-api</artifactId>
<version>1.1-incubating-SNAPSHOT</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.tuscany.sca</groupId>
+ <artifactId>tuscany-node-impl</artifactId>
+ <version>1.1-incubating-SNAPSHOT</version>
+ <scope>runtime</scope>
</dependency>
<dependency>
Modified: incubator/tuscany/java/sca/tutorial/store/src/main/java/launch/Launch.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/tutorial/store/src/main/java/launch/Launch.java?rev=587995&r1=587994&r2=587995&view=diff
==============================================================================
--- incubator/tuscany/java/sca/tutorial/store/src/main/java/launch/Launch.java (original)
+++ incubator/tuscany/java/sca/tutorial/store/src/main/java/launch/Launch.java Wed Oct 24 13:05:48 2007
@@ -19,16 +19,33 @@
package launch;
-import org.apache.tuscany.sca.host.embedded.SCADomain;
+import java.net.URL;
+
+import javax.xml.namespace.QName;
+
+import org.apache.tuscany.sca.node.SCANode;
+import org.apache.tuscany.sca.node.SCANodeFactory;
+import org.apache.tuscany.sca.node.util.SCAContributionUtil;
public class Launch {
public static void main(String[] args) throws Exception {
System.out.println("Starting ...");
- SCADomain scaDomain = SCADomain.newInstance("store.composite");
+ SCANodeFactory nodeFactory = SCANodeFactory.newInstance();
+ SCANode node = nodeFactory.createSCANode("http://localhost:8086/store", "http://localhost:8877");
+
+ URL contribution = SCAContributionUtil.findContributionFromClass(Launch.class);
+ node.addContribution("http://store", contribution);
+
+ node.addToDomainLevelComposite(new QName("http://store", "store"));
+ node.start();
+
System.out.println("store.composite ready for big business !!!");
System.in.read();
+
System.out.println("Stopping ...");
- scaDomain.close();
+ node.stop();
+ node.destroy();
System.out.println();
+
}
}
Modified: incubator/tuscany/java/sca/tutorial/store/src/main/resources/store.composite
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/tutorial/store/src/main/resources/store.composite?rev=587995&r1=587994&r2=587995&view=diff
==============================================================================
--- incubator/tuscany/java/sca/tutorial/store/src/main/resources/store.composite (original)
+++ incubator/tuscany/java/sca/tutorial/store/src/main/resources/store.composite Wed Oct 24 13:05:48 2007
@@ -18,8 +18,8 @@
* under the License.
-->
<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
- xmlns:t="http://tuscany.apache.org/xmlns/sca/1.0"
- xmlns:s="http://store"
+ xmlns:t="http://tuscany.apache.org/xmlns/sca/1.0"
+ targetNamespace="http://store"
name="store">
<component name="ui">
Modified: incubator/tuscany/java/sca/tutorial/store/src/main/resources/uiservices/store.html
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/tutorial/store/src/main/resources/uiservices/store.html?rev=587995&r1=587994&r2=587995&view=diff
==============================================================================
--- incubator/tuscany/java/sca/tutorial/store/src/main/resources/uiservices/store.html (original)
+++ incubator/tuscany/java/sca/tutorial/store/src/main/resources/uiservices/store.html Wed Oct 24 13:05:48 2007
@@ -31,11 +31,14 @@
function catalog_getResponse(items) {
- var catalog = "";
- for (var i=0; i<items.String_collection.String.length; i++) {
- var item = items.String_collection.String[i]["$"];
+ var catalog = "";
+ //fixme
+ items = items.String_collection.String;
+ for (var i=0; i<items.length; i++) {
+ //fixme
+ var item = items[i]["$"];
catalog += '<input name="items" type="checkbox" value="' +
- item + '">' + item + ' <br>';
+ item + '">' + item + ' <br>';
}
document.getElementById('catalog').innerHTML=catalog;
}
@@ -47,7 +50,7 @@
for (var i=0; i<entries.length; i++) {
var item = entries[i].getElementsByTagName("content")[0].firstChild.nodeValue;
list += item + ' <br>';
- }
+ }
document.getElementById("shoppingCart").innerHTML = list;
document.getElementById('total').innerHTML = feed.getElementsByTagName("subtitle")[0].firstChild.nodeValue;
}
---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-commits-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-commits-help@ws.apache.org