From a3c48da9bb8971497d414f86e352123d95b9c3da Mon Sep 17 00:00:00 2001 From: lresende Date: Fri, 20 Nov 2009 23:53:35 +0000 Subject: Moving 2.x trunk git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@882795 13f79535-47bb-0310-9956-ffa450edef68 --- .../sca/node/equinox/launcher/Contribution.java | 48 - .../launcher/ContributionLocationHelper.java | 66 - .../equinox/launcher/DomainManagerLauncher.java | 173 --- .../sca/node/equinox/launcher/EquinoxHost.java | 655 ---------- .../node/equinox/launcher/FrameworkLauncher.java | 254 ---- .../node/equinox/launcher/LauncherException.java | 55 - .../node/equinox/launcher/NodeDaemonLauncher.java | 160 --- .../sca/node/equinox/launcher/NodeLauncher.java | 376 ------ .../sca/node/equinox/launcher/NodeLauncher2.java | 217 ---- .../node/equinox/launcher/NodeLauncherCommand.java | 57 - .../node/equinox/launcher/NodeLauncherUtil.java | 1345 -------------------- .../sca/node/equinox/launcher/NodeMain.java | 62 - .../sca/node/equinox/launcher/J2SE-1.5.profile | 150 --- .../sca/node/equinox/launcher/JavaSE-1.6.profile | 185 --- .../sca/node/equinox/launcher/axiom-api-1.2.7.MF | 47 - .../node/equinox/launcher/axis2-kernel-1.4.1.MF | 2 - .../sca/node/equinox/launcher/ode-agents-1.3.2.MF | 7 - .../node/equinox/launcher/ode-bpel-api-1.3.2.MF | 58 - .../equinox/launcher/ode-bpel-compiler-1.3.2.MF | 170 --- .../node/equinox/launcher/ode-bpel-dao-1.3.2.MF | 23 - .../node/equinox/launcher/ode-bpel-epr-1.3.2.MF | 79 -- .../node/equinox/launcher/ode-bpel-obj-1.3.2.MF | 40 - .../equinox/launcher/ode-bpel-runtime-1.3.2.MF | 256 ---- .../equinox/launcher/ode-bpel-schemas-1.3.2.MF | 40 - .../node/equinox/launcher/ode-bpel-store-1.3.2.MF | 97 -- .../equinox/launcher/ode-dao-hibernate-1.3.2.MF | 83 -- .../sca/node/equinox/launcher/ode-dao-jpa-1.3.2.MF | 44 - .../sca/node/equinox/launcher/ode-jacob-1.3.2.MF | 46 - .../node/equinox/launcher/ode-jacob-ap-1.3.2.MF | 19 - .../equinox/launcher/ode-scheduler-simple-1.3.2.MF | 24 - .../sca/node/equinox/launcher/ode-utils-1.3.2.MF | 134 -- .../node/equinox/launcher/woden-impl-dom-1.0M8.MF | 226 ---- .../sca/node/equinox/launcher/xercesImpl-2.9.0.MF | 421 ------ .../src/test/java/hello/HelloWorld.java | 30 - .../src/test/java/hello/HelloWorldClient.java | 50 - .../src/test/java/hello/HelloWorldImpl.java | 30 - .../equinox/launcher/EquinoxOSGiHostTestCase.java | 100 -- .../equinox/launcher/NodeLauncherTestCase.java | 67 - .../src/test/resources/HelloWorld.composite | 34 - 39 files changed, 5930 deletions(-) delete mode 100644 java/sca/modules/node-launcher-equinox/src/main/java/org/apache/tuscany/sca/node/equinox/launcher/Contribution.java delete mode 100644 java/sca/modules/node-launcher-equinox/src/main/java/org/apache/tuscany/sca/node/equinox/launcher/ContributionLocationHelper.java delete mode 100644 java/sca/modules/node-launcher-equinox/src/main/java/org/apache/tuscany/sca/node/equinox/launcher/DomainManagerLauncher.java delete mode 100644 java/sca/modules/node-launcher-equinox/src/main/java/org/apache/tuscany/sca/node/equinox/launcher/EquinoxHost.java delete mode 100644 java/sca/modules/node-launcher-equinox/src/main/java/org/apache/tuscany/sca/node/equinox/launcher/FrameworkLauncher.java delete mode 100644 java/sca/modules/node-launcher-equinox/src/main/java/org/apache/tuscany/sca/node/equinox/launcher/LauncherException.java delete mode 100644 java/sca/modules/node-launcher-equinox/src/main/java/org/apache/tuscany/sca/node/equinox/launcher/NodeDaemonLauncher.java delete mode 100644 java/sca/modules/node-launcher-equinox/src/main/java/org/apache/tuscany/sca/node/equinox/launcher/NodeLauncher.java delete mode 100644 java/sca/modules/node-launcher-equinox/src/main/java/org/apache/tuscany/sca/node/equinox/launcher/NodeLauncher2.java delete mode 100644 java/sca/modules/node-launcher-equinox/src/main/java/org/apache/tuscany/sca/node/equinox/launcher/NodeLauncherCommand.java delete mode 100644 java/sca/modules/node-launcher-equinox/src/main/java/org/apache/tuscany/sca/node/equinox/launcher/NodeLauncherUtil.java delete mode 100644 java/sca/modules/node-launcher-equinox/src/main/java/org/apache/tuscany/sca/node/equinox/launcher/NodeMain.java delete mode 100644 java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/J2SE-1.5.profile delete mode 100644 java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/JavaSE-1.6.profile delete mode 100644 java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/axiom-api-1.2.7.MF delete mode 100644 java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/axis2-kernel-1.4.1.MF delete mode 100644 java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-agents-1.3.2.MF delete mode 100644 java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-bpel-api-1.3.2.MF delete mode 100644 java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-bpel-compiler-1.3.2.MF delete mode 100644 java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-bpel-dao-1.3.2.MF delete mode 100644 java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-bpel-epr-1.3.2.MF delete mode 100644 java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-bpel-obj-1.3.2.MF delete mode 100644 java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-bpel-runtime-1.3.2.MF delete mode 100644 java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-bpel-schemas-1.3.2.MF delete mode 100644 java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-bpel-store-1.3.2.MF delete mode 100644 java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-dao-hibernate-1.3.2.MF delete mode 100644 java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-dao-jpa-1.3.2.MF delete mode 100644 java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-jacob-1.3.2.MF delete mode 100644 java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-jacob-ap-1.3.2.MF delete mode 100644 java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-scheduler-simple-1.3.2.MF delete mode 100644 java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-utils-1.3.2.MF delete mode 100644 java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/woden-impl-dom-1.0M8.MF delete mode 100644 java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/xercesImpl-2.9.0.MF delete mode 100644 java/sca/modules/node-launcher-equinox/src/test/java/hello/HelloWorld.java delete mode 100644 java/sca/modules/node-launcher-equinox/src/test/java/hello/HelloWorldClient.java delete mode 100644 java/sca/modules/node-launcher-equinox/src/test/java/hello/HelloWorldImpl.java delete mode 100644 java/sca/modules/node-launcher-equinox/src/test/java/org/apache/tuscany/sca/node/equinox/launcher/EquinoxOSGiHostTestCase.java delete mode 100644 java/sca/modules/node-launcher-equinox/src/test/java/org/apache/tuscany/sca/node/equinox/launcher/NodeLauncherTestCase.java delete mode 100644 java/sca/modules/node-launcher-equinox/src/test/resources/HelloWorld.composite (limited to 'java/sca/modules/node-launcher-equinox/src') diff --git a/java/sca/modules/node-launcher-equinox/src/main/java/org/apache/tuscany/sca/node/equinox/launcher/Contribution.java b/java/sca/modules/node-launcher-equinox/src/main/java/org/apache/tuscany/sca/node/equinox/launcher/Contribution.java deleted file mode 100644 index 892412b395..0000000000 --- a/java/sca/modules/node-launcher-equinox/src/main/java/org/apache/tuscany/sca/node/equinox/launcher/Contribution.java +++ /dev/null @@ -1,48 +0,0 @@ -/* - * 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.equinox.launcher; - -/** - * Represents an SCA contribution uri + location. - * - * @version $Rev$ $Date$ - */ -public final class Contribution { - private String uri; - private String location; - - /** - * Constructs a new SCA contribution. - * - * @param uri - * @param location - */ - public Contribution(String uri, String location) { - this.uri = uri; - this.location = location; - } - - public String getURI() { - return uri; - } - - public String getLocation() { - return location; - } -} \ No newline at end of file diff --git a/java/sca/modules/node-launcher-equinox/src/main/java/org/apache/tuscany/sca/node/equinox/launcher/ContributionLocationHelper.java b/java/sca/modules/node-launcher-equinox/src/main/java/org/apache/tuscany/sca/node/equinox/launcher/ContributionLocationHelper.java deleted file mode 100644 index 056ec080ba..0000000000 --- a/java/sca/modules/node-launcher-equinox/src/main/java/org/apache/tuscany/sca/node/equinox/launcher/ContributionLocationHelper.java +++ /dev/null @@ -1,66 +0,0 @@ -/* - * 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.equinox.launcher; - -import java.io.File; -import java.net.URL; -import java.security.AccessController; -import java.security.PrivilegedAction; - -import org.osgi.framework.Bundle; - -/** - * ContributionLocationHelper - * - * @version $Rev$ $Date$ - */ -public class ContributionLocationHelper { - - /** - * Returns the location of the SCA contribution containing the given class. - * - * @param anchorClass - * @return - */ - public static String getContributionLocation(final Class anchorClass) { - URL url = AccessController.doPrivileged(new PrivilegedAction() { - public URL run() { - return anchorClass.getProtectionDomain().getCodeSource().getLocation(); - } - }); - String uri = url.toString(); - return uri; - } - - /** - * Returns the location of the SCA contribution represented by the given bundle. - * - * @param anchorClass - * @return - */ - public static String getContributionLocation(final Bundle bundle) { - String uri = bundle.getLocation(); - uri = uri.substring(uri.indexOf("file:") + 5); - File file = new File(uri); - uri = file.toURI().toString(); - return uri; - } - -} diff --git a/java/sca/modules/node-launcher-equinox/src/main/java/org/apache/tuscany/sca/node/equinox/launcher/DomainManagerLauncher.java b/java/sca/modules/node-launcher-equinox/src/main/java/org/apache/tuscany/sca/node/equinox/launcher/DomainManagerLauncher.java deleted file mode 100644 index e6f59e1b07..0000000000 --- a/java/sca/modules/node-launcher-equinox/src/main/java/org/apache/tuscany/sca/node/equinox/launcher/DomainManagerLauncher.java +++ /dev/null @@ -1,173 +0,0 @@ -/* - * 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.equinox.launcher; - -import static org.apache.tuscany.sca.node.equinox.launcher.NodeLauncherUtil.domainManager; - -import java.io.IOException; -import java.util.logging.Level; -import java.util.logging.Logger; - -/** - * Simple launcher for the SCA domain manager. - * - * @version $Rev$ $Date$ - */ -public class DomainManagerLauncher { - - static final Logger logger = Logger.getLogger(DomainManagerLauncher.class.getName()); - - /** - * Constructs a new DomainManagerLauncher. - */ - private DomainManagerLauncher() { - } - - /** - * Returns a new launcher instance. - * - * @return a new launcher instance - */ - public static DomainManagerLauncher newInstance() { - return new DomainManagerLauncher(); - } - - /** - * Creates a new DomainManager. - * - * @return a new DomainManager - * @throws LauncherException - */ - public T createDomainManager() throws LauncherException { - return (T)domainManager("."); - } - - /** - * Creates a new DomainManager. - * - * @param rootDirectory the domain's root configuration directory - * - * @return a new DomainManager - * @throws LauncherException - */ - public T createDomainManager(String rootDirectory) throws LauncherException { - return (T)domainManager(rootDirectory); - } - - public static void main(String[] args) throws Exception { - logger.info("Apache Tuscany SCA Domain Manager is starting..."); - - // Create a launcher - DomainManagerLauncher launcher = newInstance(); - - EquinoxHost equinox = null; - Object domainManager = null; - ShutdownThread shutdown = null; - try { - - // Start the OSGi host - equinox = new EquinoxHost(); - equinox.start(); - - // Start the domain manager - domainManager = launcher.createDomainManager(); - try { - domainManager.getClass().getMethod("start").invoke(domainManager); - } catch (Exception e) { - logger.log(Level.SEVERE, "SCA Domain Manager could not be started", e); - throw e; - } - logger.info("SCA Domain Manager is now started."); - - // Install a shutdown hook - ShutdownThread hook = new ShutdownThread(domainManager, equinox); - Runtime.getRuntime().addShutdownHook(hook); - - logger.info("Press enter to shutdown."); - try { - System.in.read(); - } catch (IOException e) { - - // Wait forever - Object lock = new Object(); - synchronized(lock) { - lock.wait(); - } - } - - } finally { - - // Remove the shutdown hook - if (shutdown != null) { - Runtime.getRuntime().removeShutdownHook(shutdown); - } - - // Stop the domain manager and OSGi host - if (domainManager != null) { - stopDomainManager(domainManager); - } - if (equinox != null) { - equinox.stop(); - } - } - } - - - /** - * Stop the given domain manager. - * - * @param domainManager - * @throws Exception - */ - private static void stopDomainManager(Object domainManager) throws Exception { - try { - domainManager.getClass().getMethod("stop").invoke(domainManager); - logger.info("SCA Domain Manager is now stopped."); - } catch (Exception e) { - logger.log(Level.SEVERE, "SCA Domain Manager could not be stopped", e); - throw e; - } - } - - private static class ShutdownThread extends Thread { - private Object domainManager; - private EquinoxHost equinox; - - public ShutdownThread(Object domainManager, EquinoxHost equinox) { - super(); - this.domainManager = domainManager; - this.equinox = equinox; - } - - @Override - public void run() { - try { - stopDomainManager(domainManager); - } catch (Exception e) { - // Ignore - } - try { - equinox.stop(); - } catch (Exception e) { - // Ignore - } - } - } -} diff --git a/java/sca/modules/node-launcher-equinox/src/main/java/org/apache/tuscany/sca/node/equinox/launcher/EquinoxHost.java b/java/sca/modules/node-launcher-equinox/src/main/java/org/apache/tuscany/sca/node/equinox/launcher/EquinoxHost.java deleted file mode 100644 index fd4d0ee5bf..0000000000 --- a/java/sca/modules/node-launcher-equinox/src/main/java/org/apache/tuscany/sca/node/equinox/launcher/EquinoxHost.java +++ /dev/null @@ -1,655 +0,0 @@ -/* - * 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.equinox.launcher; - -import static java.lang.System.currentTimeMillis; -import static java.lang.System.setProperty; -import static org.apache.tuscany.sca.node.equinox.launcher.NodeLauncherUtil.GATEWAY_BUNDLE; -import static org.apache.tuscany.sca.node.equinox.launcher.NodeLauncherUtil.LAUNCHER_EQUINOX_LIBRARIES; -import static org.apache.tuscany.sca.node.equinox.launcher.NodeLauncherUtil.artifactId; -import static org.apache.tuscany.sca.node.equinox.launcher.NodeLauncherUtil.bundleName; -import static org.apache.tuscany.sca.node.equinox.launcher.NodeLauncherUtil.file; -import static org.apache.tuscany.sca.node.equinox.launcher.NodeLauncherUtil.fixupBundle; -import static org.apache.tuscany.sca.node.equinox.launcher.NodeLauncherUtil.jarVersion; -import static org.apache.tuscany.sca.node.equinox.launcher.NodeLauncherUtil.runtimeClasspathEntries; -import static org.apache.tuscany.sca.node.equinox.launcher.NodeLauncherUtil.string; -import static org.apache.tuscany.sca.node.equinox.launcher.NodeLauncherUtil.thirdPartyLibraryBundle; -import static org.apache.tuscany.sca.node.equinox.launcher.NodeLauncherUtil.thisBundleLocation; - -import java.io.File; -import java.io.FileInputStream; -import java.io.FileNotFoundException; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URISyntaxException; -import java.net.URL; -import java.security.AccessController; -import java.security.PrivilegedAction; -import java.util.ArrayList; -import java.util.Collection; -import java.util.Collections; -import java.util.HashMap; -import java.util.HashSet; -import java.util.List; -import java.util.Map; -import java.util.Properties; -import java.util.Set; -import java.util.UUID; -import java.util.jar.Manifest; -import java.util.logging.Level; -import java.util.logging.Logger; - -import org.osgi.framework.Bundle; -import org.osgi.framework.BundleContext; -import org.osgi.framework.BundleException; -import org.osgi.framework.Constants; -import org.osgi.framework.launch.Framework; - -/** - * Wraps the Equinox runtime. - */ -public class EquinoxHost { - static final String PROP_OSGI_CONTEXT_CLASS_LOADER_PARENT = "osgi.contextClassLoaderParent"; - - static final String PROP_OSGI_CLEAN = "osgi.clean"; - - static final String PROP_USER_NAME = "user.name"; - - private static Logger logger = Logger.getLogger(EquinoxHost.class.getName()); - - static final String PROP_INSTALL_AREA = "osgi.install.area"; - static final String PROP_CONFIG_AREA = "osgi.configuration.area"; - static final String PROP_CONFIG_AREA_DEFAULT = "osgi.configuration.area.default"; - static final String PROP_SHARED_CONFIG_AREA = "osgi.sharedConfiguration.area"; - static final String PROP_INSTANCE_AREA = "osgi.instance.area"; - static final String PROP_INSTANCE_AREA_DEFAULT = "osgi.instance.area.default"; - static final String PROP_USER_AREA = "osgi.user.area"; - static final String PROP_USER_AREA_DEFAULT = "osgi.user.area.default"; - - /** - * If the class is loaded inside OSGi, then the bundle context will be injected by the activator - */ - static BundleContext injectedBundleContext; - - static { - if (getSystemProperty("osgi.debug") != null) { - logger.setLevel(Level.FINE); - } - } - - private BundleContext bundleContext; - private Bundle launcherBundle; - private List bundleFiles = new ArrayList(); - private List bundleNames = new ArrayList(); - private Map jarFiles = new HashMap(); - private Map allBundles = new HashMap(); - private List installedBundles = new ArrayList(); - - private Set bundleLocations; - private boolean aggregateThirdPartyJars = false; - - private FrameworkLauncher frameworkLauncher = new FrameworkLauncher(); - private Framework framework; - - public EquinoxHost() { - super(); - } - - public EquinoxHost(Set urls) { - super(); - this.bundleLocations = urls; - } - - private static String getSystemProperty(final String name) { - return AccessController.doPrivileged(new PrivilegedAction() { - public String run() { - return System.getProperty(name); - } - }); - } - - private static Properties getSystemProperties() { - return AccessController.doPrivileged(new PrivilegedAction() { - public Properties run() { - Properties props = new Properties(); - for (Map.Entry e : System.getProperties().entrySet()) { - if (e.getKey() instanceof String) { - String prop = (String)e.getKey(); - if (prop.startsWith("osgi.") || prop.startsWith("eclipse.")) { - props.put(prop, e.getValue()); - } - } - } - return props; - } - }); - } - - private static void put(Properties props, String key, String value) { - if (!props.contains(key)) { - props.put(key, value); - } - } - - - /** - * Search for org/apache/tuscany/sca/node/equinox/launcher for customized MANIFEST.MF - * for a given artifact. For example, a-1.0.MF for a-1.0.jar. - * - * @param fileName - * @return - * @throws IOException - */ - private Manifest getCustomizedMF(String fileName) throws IOException { - int index = fileName.lastIndexOf('.'); - if (index == -1) { - return null; - } - String mf = fileName.substring(0, index) + ".MF"; - InputStream is = getClass().getResourceAsStream(mf); - if (is == null) { - return null; - } else { - try { - Manifest manifest = new Manifest(is); - return manifest; - } finally { - is.close(); - } - } - } - - /** - * Start the Equinox host. - * - * @return - */ - public BundleContext start() { - try { - if (injectedBundleContext == null) { - - Properties props = configureProperties(); - startFramework(props); - - } else { - - // Get bundle context from the running Eclipse instance - bundleContext = injectedBundleContext; - } - - // Determine the runtime classpath entries - Set urls; - urls = findBundleLocations(); - - // Sort out which are bundles (and not already installed) and which are just - // regular JARs - for (URL url : urls) { - File file = file(url); - Manifest manifest = getCustomizedMF(file.getName()); - String bundleName = null; - if (manifest == null) { - bundleName = bundleName(file); - } else { - if (manifest.getMainAttributes().getValue(Constants.BUNDLE_SYMBOLICNAME) == null) { - manifest = null; - } - } - if (bundleName != null) { - bundleFiles.add(url); - bundleNames.add(bundleName); - } else { - if (file.isFile()) { - jarFiles.put(url, manifest); - } - } - } - - // Get the already installed bundles - for (Bundle bundle : bundleContext.getBundles()) { - allBundles.put(bundle.getSymbolicName(), bundle); - } - - // Install the launcher bundle if necessary - String launcherBundleName = "org.apache.tuscany.sca.node.launcher.equinox"; - String launcherBundleLocation; - launcherBundle = allBundles.get(launcherBundleName); - if (launcherBundle == null) { - launcherBundleLocation = thisBundleLocation(); - if (logger.isLoggable(Level.FINE)) { - logger.fine("Installing launcher bundle: " + launcherBundleLocation); - } - fixupBundle(launcherBundleLocation); - launcherBundle = bundleContext.installBundle(launcherBundleLocation); - allBundles.put(launcherBundleName, launcherBundle); - installedBundles.add(launcherBundle); - } else { - if (logger.isLoggable(Level.FINE)) { - logger.fine("Launcher bundle is already installed: " + string(launcherBundle, false)); - } - // launcherBundleLocation = thisBundleLocation(launcherBundle); - } - - // FIXME: SDO bundles dont have the correct dependencies - setProperty("commonj.sdo.impl.HelperProvider", "org.apache.tuscany.sdo.helper.HelperProviderImpl"); - - // Install the Tuscany bundles - long start = currentTimeMillis(); - - if (logger.isLoggable(Level.FINE)) { - logger.fine("Generating third-party library bundle."); - } - long libraryStart = currentTimeMillis(); - - Set serviceProviders = new HashSet(); - if (!aggregateThirdPartyJars) { - for (Map.Entry entry : jarFiles.entrySet()) { - URL jarFile = entry.getKey(); - Manifest manifest = entry.getValue(); - Bundle bundle = null; - if (manifest == null) { - bundle = installAsBundle(jarFile, null); - } else { - bundle = installAsBundle(Collections.singleton(jarFile), manifest); - } - isServiceProvider(bundle, serviceProviders); - } - } else { - Bundle bundle = installAsBundle(jarFiles.keySet(), LAUNCHER_EQUINOX_LIBRARIES); - isServiceProvider(bundle, serviceProviders); - } - - installGatewayBundle(serviceProviders); - - if (logger.isLoggable(Level.FINE)) { - logger - .fine("Third-party library bundle installed in " + (currentTimeMillis() - libraryStart) + " ms: "); - } - - // Install all the other bundles that are not already installed - for (URL bundleFile : bundleFiles) { - fixupBundle(bundleFile.toString()); - } - for (int i = 0, n = bundleFiles.size(); i < n; i++) { - URL bundleFile = bundleFiles.get(i); - String bundleName = bundleNames.get(i); - if (bundleName.contains("org.eclipse.jdt.junit")) { - continue; - } - installBundle(bundleFile, bundleName); - } - - long end = currentTimeMillis(); - if (logger.isLoggable(Level.FINE)) { - logger.fine("Tuscany bundles are installed in " + (end - start) + " ms."); - } - - // Start the extensiblity and launcher bundles - String extensibilityBundleName = "org.apache.tuscany.sca.extensibility.equinox"; - Bundle extensibilityBundle = allBundles.get(extensibilityBundleName); - if (extensibilityBundle != null) { - if ((extensibilityBundle.getState() & Bundle.ACTIVE) == 0) { - if (logger.isLoggable(Level.FINE)) { - logger.fine("Starting bundle: " + string(extensibilityBundle, false)); - } - extensibilityBundle.start(); - } else if (logger.isLoggable(Level.FINE)) { - logger.fine("Bundle is already started: " + string(extensibilityBundle, false)); - } - } - if ((launcherBundle.getState() & Bundle.ACTIVE) == 0) { - if (logger.isLoggable(Level.FINE)) { - logger.fine("Starting bundle: " + string(launcherBundle, false)); - } - launcherBundle.start(); - } else if (logger.isLoggable(Level.FINE)) { - logger.fine("Bundle is already started: " + string(launcherBundle, false)); - } - - // Start all our bundles for now to help diagnose any class loading issues - // startBundles( bundleContext ); - return bundleContext; - - } catch (Exception e) { - throw new IllegalStateException(e); - } - } - - protected Properties configureProperties() throws IOException, FileNotFoundException { - String version = getSystemProperty("java.specification.version"); - - /** - * [rfeng] I have to remove javax.transaction.* packages from the system bundle - * See: http://www.mail-archive.com/dev@geronimo.apache.org/msg70761.html - */ - String profile = "J2SE-1.5.profile"; - if (version.startsWith("1.6")) { - profile = "JavaSE-1.6.profile"; - } - Properties props = new Properties(); - InputStream is = getClass().getResourceAsStream(profile); - if (is != null) { - props.load(is); - is.close(); - } - - props.putAll(getSystemProperties()); - - // Configure Eclipse properties - - // Use the boot classloader as the parent classloader - put(props, PROP_OSGI_CONTEXT_CLASS_LOADER_PARENT, "app"); - - // Set startup properties - put(props, PROP_OSGI_CLEAN, "true"); - - // Set location properties - // FIXME Use proper locations - String tmpDir = getSystemProperty("java.io.tmpdir"); - File root = new File(tmpDir); - // Add user name as the prefix. For multiple users on the same Lunix, - // there will be permission issue if one user creates the .tuscany folder - // first under /tmp with no write permission for others. - String userName = getSystemProperty(PROP_USER_NAME); - if (userName != null) { - root = new File(root, userName); - } - root = new File(root, ".tuscany/equinox/" + UUID.randomUUID().toString()); - if (logger.isLoggable(Level.FINE)) { - logger.fine("Equinox location: " + root); - } - - put(props, PROP_INSTANCE_AREA_DEFAULT, new File(root, "workspace").toURI().toString()); - put(props, PROP_INSTALL_AREA, new File(root, "install").toURI().toString()); - put(props, PROP_CONFIG_AREA_DEFAULT, new File(root, "config").toURI().toString()); - put(props, PROP_USER_AREA_DEFAULT, new File(root, "user").toURI().toString()); - - // Test if the configuration/config.ini or osgi.bundles has been set - // If yes, try to avoid discovery of bundles - if (bundleLocations == null) { - if (props.getProperty("osgi.bundles") != null) { - bundleLocations = Collections.emptySet(); - } else { - String config = props.getProperty(PROP_CONFIG_AREA); - File ini = new File(config, "config.ini"); - if (ini.isFile()) { - Properties iniProps = new Properties(); - iniProps.load(new FileInputStream(ini)); - if (iniProps.getProperty("osgi.bundles") != null) { - bundleLocations = Collections.emptySet(); - } - } - } - } - return props; - } - - private boolean isServiceProvider(Bundle bundle, Set serviceProviders) { - if (bundle != null) { - String export = (String)bundle.getHeaders().get(Constants.EXPORT_PACKAGE); - if (export != null && export.contains(NodeLauncherUtil.META_INF_SERVICES)) { - serviceProviders.add(bundle.getSymbolicName()); - return true; - } - } - return false; - } - - private void installGatewayBundle(Set bundles) throws IOException, BundleException { - if (allBundles.containsKey(GATEWAY_BUNDLE)) { - return; - } - if (bundles == null) { - bundles = allBundles.keySet(); - } - InputStream gateway = NodeLauncherUtil.generateGatewayBundle(bundles, null, false); - if (gateway != null) { - Bundle gatewayBundle = bundleContext.installBundle(GATEWAY_BUNDLE, gateway); - allBundles.put(NodeLauncherUtil.GATEWAY_BUNDLE, gatewayBundle); - installedBundles.add(gatewayBundle); - } - } - - /** - * Start all the bundles as a check for class loading issues - * @param bundleContext - the bundle context - */ - private void startBundles(BundleContext bundleContext) { - - for (Bundle bundle : bundleContext.getBundles()) { - // if (bundle.getSymbolicName().startsWith("org.apache.tuscany.sca")) { - if ((bundle.getState() & Bundle.ACTIVE) == 0) { - if (logger.isLoggable(Level.FINE)) { - logger.fine("Starting bundle: " + string(bundle, false)); - } // end if - try { - bundle.start(); - } catch (Exception e) { - logger.log(Level.SEVERE, e.getMessage(), e); - // throw e; - } // end try - if (logger.isLoggable(Level.FINE)) { - logger.fine("Bundle: " + string(bundle, false)); - } // end if - } // end if - // } // end if - } // end for - logger.fine("Tuscany bundles are started."); - return; - } // end startBundles - - public Bundle installAsBundle(Collection jarFiles, String libraryBundleName) throws IOException, - BundleException { - // Install a single 'library' bundle for the third-party JAR files - Bundle libraryBundle = allBundles.get(libraryBundleName); - if (libraryBundle == null) { - InputStream library = thirdPartyLibraryBundle(jarFiles, libraryBundleName, null); - libraryBundle = bundleContext.installBundle(libraryBundleName, library); - allBundles.put(libraryBundleName, libraryBundle); - installedBundles.add(libraryBundle); - } else { - if (logger.isLoggable(Level.FINE)) { - logger.fine("Third-party library bundle is already installed: " + string(libraryBundle, false)); - } - } - return libraryBundle; - } - - public Bundle installAsBundle(Collection jarFiles, Manifest manifest) throws IOException, BundleException { - String bundleName = manifest.getMainAttributes().getValue(Constants.BUNDLE_SYMBOLICNAME); - - // Install a single 'library' bundle for the third-party JAR files - Bundle libraryBundle = allBundles.get(bundleName); - if (libraryBundle == null) { - InputStream library = thirdPartyLibraryBundle(jarFiles, manifest); - libraryBundle = bundleContext.installBundle(bundleName, library); - allBundles.put(bundleName, libraryBundle); - installedBundles.add(libraryBundle); - } else { - if (logger.isLoggable(Level.FINE)) { - logger.fine("Third-party library bundle is already installed: " + string(libraryBundle, false)); - } - } - return libraryBundle; - } - - public Bundle installBundle(URL bundleFile, String bundleName) throws MalformedURLException, BundleException { - if (bundleName == null) { - try { - bundleName = bundleName(file(bundleFile)); - } catch (IOException e) { - bundleName = null; - } - } - Bundle bundle = allBundles.get(bundleName); - if (bundle == null) { - long installStart = currentTimeMillis(); - String location = bundleFile.toString(); - if (frameworkLauncher.isEquinox() && "file".equals(bundleFile.getProtocol())) { - File target = file(bundleFile); - // Use a special "reference" scheme to install the bundle as a reference - // instead of copying the bundle - location = "reference:file:/" + target.getPath(); - } - bundle = bundleContext.installBundle(location); - if (logger.isLoggable(Level.FINE)) { - logger.fine("Bundle installed in " + (currentTimeMillis() - installStart) - + " ms: " - + string(bundle, false)); - } - allBundles.put(bundleName, bundle); - installedBundles.add(bundle); - } - return bundle; - } - - public Bundle installAsBundle(URL jarFile, String symbolicName) throws IOException, BundleException { - if (symbolicName == null) { - symbolicName = LAUNCHER_EQUINOX_LIBRARIES + "." + artifactId(jarFile); - } - Bundle bundle = allBundles.get(symbolicName); - if (bundle == null) { - String version = jarVersion(jarFile); - if (logger.isLoggable(Level.FINE)) { - logger.fine("Installing third-party jar as bundle: " + jarFile); - } - InputStream is = thirdPartyLibraryBundle(Collections.singleton(jarFile), symbolicName, version); - // try/catch and output message added 10/04/2009 Mike Edwards - try { - bundle = bundleContext.installBundle(symbolicName, is); - allBundles.put(symbolicName, bundle); - installedBundles.add(bundle); - } catch (BundleException e) { - System.out - .println("EquinoxHost:installAsBundle - BundleException raised when dealing with jar " + symbolicName); - throw (e); - } // end try - // end of addition - } - return bundle; - } - - private Set findBundleLocations() throws FileNotFoundException, URISyntaxException, MalformedURLException { - if (bundleLocations == null) { - if (injectedBundleContext != null) { - - // Use classpath entries from a distribution if there is one and the modules - // directories available in a dev environment for example - bundleLocations = runtimeClasspathEntries(true, false, true); - } else { - - // Use classpath entries from a distribution if there is one and the classpath - // entries on the current application's classloader - // *** Changed by Mike Edwards, 9th April 2009 *** - // -- this place is reached when starting from within Eclipse so why use the classpath?? - // bundleLocations = runtimeClasspathEntries(true, true, false); - // Instead search the modules directory - bundleLocations = runtimeClasspathEntries(true, true, true); - } - } - return bundleLocations; - } - - /** - * Stop the Equinox host. - */ - public void stop() { - try { - - // Uninstall all the bundles we've installed - for (int i = installedBundles.size() - 1; i >= 0; i--) { - Bundle bundle = installedBundles.get(i); - try { - if (logger.isLoggable(Level.FINE)) { - logger.fine("Uninstalling bundle: " + string(bundle, false)); - } - bundle.uninstall(); - } catch (Exception e) { - logger.log(Level.SEVERE, e.getMessage(), e); - } - } - installedBundles.clear(); - - stopFramework(); - - } catch (Exception e) { - throw new IllegalStateException(e); - } - } - - /* - private void startFramework(Properties props) throws Exception { - EclipseStarter.setInitialProperties(props); - - // Test if the configuration/config.ini or osgi.bundles has been set - // If yes, try to avoid discovery of bundles - if (bundleLocations == null) { - if (props.getProperty("osgi.bundles") != null) { - bundleLocations = Collections.emptySet(); - } else { - String config = props.getProperty(PROP_CONFIG_AREA); - File ini = new File(config, "config.ini"); - if (ini.isFile()) { - Properties iniProps = new Properties(); - iniProps.load(new FileInputStream(ini)); - if (iniProps.getProperty("osgi.bundles") != null) { - bundleLocations = Collections.emptySet(); - } - } - } - } - - // Start Eclipse - bundleContext = EclipseStarter.startup(new String[] {}, null); - } - - private void stopFramework() throws Exception { - // Shutdown Eclipse if we started it ourselves - if (injectedBundleContext == null) { - EclipseStarter.shutdown(); - } - } - */ - - private void startFramework(Map configuration) throws Exception { - if (framework != null) { - throw new IllegalStateException("The OSGi framework has been started"); - } - framework = frameworkLauncher.newFramework(configuration); - framework.start(); - this.bundleContext = framework.getBundleContext(); - } - - private void stopFramework() throws Exception { - // Shutdown Eclipse if we started it ourselves - if (injectedBundleContext == null) { - framework.stop(); - framework.waitForStop(5000); - framework = null; - bundleContext = null; - } - } - - - public void setBundleLocations(Set bundleLocations) { - this.bundleLocations = bundleLocations; - } - -} diff --git a/java/sca/modules/node-launcher-equinox/src/main/java/org/apache/tuscany/sca/node/equinox/launcher/FrameworkLauncher.java b/java/sca/modules/node-launcher-equinox/src/main/java/org/apache/tuscany/sca/node/equinox/launcher/FrameworkLauncher.java deleted file mode 100644 index 414f3aae63..0000000000 --- a/java/sca/modules/node-launcher-equinox/src/main/java/org/apache/tuscany/sca/node/equinox/launcher/FrameworkLauncher.java +++ /dev/null @@ -1,254 +0,0 @@ -/* - * 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.equinox.launcher; - -import java.io.BufferedReader; -import java.io.IOException; -import java.io.InputStream; -import java.io.InputStreamReader; -import java.util.HashMap; -import java.util.Hashtable; -import java.util.Map; -import java.util.Properties; -import java.util.logging.Level; -import java.util.logging.Logger; - -import org.eclipse.osgi.framework.console.CommandProvider; -import org.osgi.framework.BundleActivator; -import org.osgi.framework.BundleContext; -import org.osgi.framework.launch.Framework; -import org.osgi.framework.launch.FrameworkFactory; - -/** - * Launcher for the OSGi framework using the framework launch APIs - */ -public class FrameworkLauncher implements BundleActivator { - private static final String FACTORY_RESOURCE = "META-INF/services/" + FrameworkFactory.class.getName(); - - private static final Logger logger = Logger.getLogger(FrameworkLauncher.class.getName()); - - private FrameworkFactory factory; - private boolean isEquinox; - - @SuppressWarnings("unchecked") - private synchronized FrameworkFactory loadFrameworkFactory() { - if (factory == null) { - try { - ClassLoader classLoader = FrameworkFactory.class.getClassLoader(); - InputStream is = classLoader.getResourceAsStream(FACTORY_RESOURCE); - if (is == null) { - classLoader = Thread.currentThread().getContextClassLoader(); - is = classLoader.getResourceAsStream(FACTORY_RESOURCE); - } - if (is == null) { - return null; - } - BufferedReader reader = null; - String line = null; - try { - reader = new BufferedReader(new InputStreamReader(is, "UTF-8")); - while (true) { - line = reader.readLine(); - if (line == null) - break; - line = line.trim(); - if (!line.startsWith("#") && !"".equals(line)) { - break; - } - } - } finally { - if (reader != null) { - try { - reader.close(); - } catch (IOException e) { - // Ignore - } - } - } - if (line != null) { - Class factoryImplClass = - (Class)Class.forName(line, false, classLoader); - factory = factoryImplClass.newInstance(); - if (factory != null && factory.getClass().getName().startsWith("org.eclipse.osgi.")) { - isEquinox = true; - } - - } - } catch (Throwable e) { - logger.log(Level.SEVERE, e.getMessage(), e); - } - } - return factory; - } - - public Framework newFramework(Map properties) { - FrameworkFactory factory = loadFrameworkFactory(); - if (factory == null) { - return null; - } - String propertyFile = null; - String factoryName = factory.getClass().getName(); - if (factoryName.startsWith("org.eclipse.osgi.")) { - propertyFile = "equinox.properties"; - } else if (factoryName.startsWith("org.apache.felix.")) { - propertyFile = "felix.properties"; - } - Map propMap = new HashMap(); - if (propertyFile != null) { - InputStream is = getClass().getResourceAsStream(propertyFile); - if (is != null) { - Properties props = new Properties(); - try { - props.load(is); - } catch (IOException e) { - logger.log(Level.WARNING, e.getMessage(), e); - } - propMap.putAll(props); - } - } - propMap.putAll(properties); - return factory.newFramework(propMap); - } - - public boolean isEquinox() { - return isEquinox; - } - - public void start(BundleContext context) throws Exception { - EquinoxHost.injectedBundleContext = context; - if (context.getClass().getName().startsWith("org.eclipse.osgi.")) { - isEquinox = true; - try { - context.registerService(CommandProvider.class.getName(), new NodeLauncherCommand(), new Hashtable()); - } catch (NoClassDefFoundError e) { - // Ignore it - } - } - } - - public void stop(BundleContext context) throws Exception { - EquinoxHost.injectedBundleContext = null; - } - - private static final String DELIM_START = "${"; - private static final String DELIM_STOP = "}"; - - /** - *

- * This method performs property variable substitution on the - * specified value. If the specified value contains the syntax - * ${<prop-name>}, where <prop-name> - * refers to either a configuration property or a system property, - * then the corresponding property value is substituted for the variable - * placeholder. Multiple variable placeholders may exist in the - * specified value as well as nested variable placeholders, which - * are substituted from inner most to outer most. Configuration - * properties override system properties. - *

- * @param val The string on which to perform property substitution. - * @param currentKey The key of the property being evaluated used to - * detect cycles. - * @param cycleMap Map of variable references used to detect nested cycles. - * @param configProps Set of configuration properties. - * @return The value of the specified string after system property substitution. - * @throws IllegalArgumentException If there was a syntax error in the - * property placeholder syntax or a recursive variable reference. - **/ - public static String substVars(String val, String currentKey, Map cycleMap, Properties configProps) - throws IllegalArgumentException { - // If there is currently no cycle map, then create - // one for detecting cycles for this invocation. - if (cycleMap == null) { - cycleMap = new HashMap(); - } - - // Put the current key in the cycle map. - cycleMap.put(currentKey, currentKey); - - // Assume we have a value that is something like: - // "leading ${foo.${bar}} middle ${baz} trailing" - - // Find the first ending '}' variable delimiter, which - // will correspond to the first deepest nested variable - // placeholder. - int stopDelim = val.indexOf(DELIM_STOP); - - // Find the matching starting "${" variable delimiter - // by looping until we find a start delimiter that is - // greater than the stop delimiter we have found. - int startDelim = val.indexOf(DELIM_START); - while (stopDelim >= 0) { - int idx = val.indexOf(DELIM_START, startDelim + DELIM_START.length()); - if ((idx < 0) || (idx > stopDelim)) { - break; - } else if (idx < stopDelim) { - startDelim = idx; - } - } - - // If we do not have a start or stop delimiter, then just - // return the existing value. - if ((startDelim < 0) && (stopDelim < 0)) { - return val; - } - // At this point, we found a stop delimiter without a start, - // so throw an exception. - else if (((startDelim < 0) || (startDelim > stopDelim)) && (stopDelim >= 0)) { - throw new IllegalArgumentException("stop delimiter with no start delimiter: " + val); - } - - // At this point, we have found a variable placeholder so - // we must perform a variable substitution on it. - // Using the start and stop delimiter indices, extract - // the first, deepest nested variable placeholder. - String variable = val.substring(startDelim + DELIM_START.length(), stopDelim); - - // Verify that this is not a recursive variable reference. - if (cycleMap.get(variable) != null) { - throw new IllegalArgumentException("recursive variable reference: " + variable); - } - - // Get the value of the deepest nested variable placeholder. - // Try to configuration properties first. - String substValue = (configProps != null) ? configProps.getProperty(variable, null) : null; - if (substValue == null) { - // Ignore unknown property values. - substValue = System.getProperty(variable, ""); - } - - // Remove the found variable from the cycle map, since - // it may appear more than once in the value and we don't - // want such situations to appear as a recursive reference. - cycleMap.remove(variable); - - // Append the leading characters, the substituted value of - // the variable, and the trailing characters to get the new - // value. - val = val.substring(0, startDelim) + substValue + val.substring(stopDelim + DELIM_STOP.length(), val.length()); - - // Now perform substitution again, since there could still - // be substitutions to make. - val = substVars(val, currentKey, cycleMap, configProps); - - // Return the value. - return val; - } - -} diff --git a/java/sca/modules/node-launcher-equinox/src/main/java/org/apache/tuscany/sca/node/equinox/launcher/LauncherException.java b/java/sca/modules/node-launcher-equinox/src/main/java/org/apache/tuscany/sca/node/equinox/launcher/LauncherException.java deleted file mode 100644 index b9bb70b5d7..0000000000 --- a/java/sca/modules/node-launcher-equinox/src/main/java/org/apache/tuscany/sca/node/equinox/launcher/LauncherException.java +++ /dev/null @@ -1,55 +0,0 @@ -/* - * 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.equinox.launcher; - - -/** - * Denotes an error launching an SCA domain manager or node. - * - * @version $Rev$ $Date$ - */ -public class LauncherException extends Exception { - private static final long serialVersionUID = 4581189418849190567L; - - public LauncherException() { - super(); - } - - /** - * @param message - * @param cause - */ - public LauncherException(String message, Throwable cause) { - super(message, cause); - } - - /** - * @param message - */ - public LauncherException(String message) { - super(message); - } - - /** - * @param cause - */ - public LauncherException(Throwable cause) { - super(cause); - } -} diff --git a/java/sca/modules/node-launcher-equinox/src/main/java/org/apache/tuscany/sca/node/equinox/launcher/NodeDaemonLauncher.java b/java/sca/modules/node-launcher-equinox/src/main/java/org/apache/tuscany/sca/node/equinox/launcher/NodeDaemonLauncher.java deleted file mode 100644 index aeb29c0789..0000000000 --- a/java/sca/modules/node-launcher-equinox/src/main/java/org/apache/tuscany/sca/node/equinox/launcher/NodeDaemonLauncher.java +++ /dev/null @@ -1,160 +0,0 @@ -/* - * 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.equinox.launcher; - -import static org.apache.tuscany.sca.node.equinox.launcher.NodeLauncherUtil.nodeDaemon; - -import java.io.IOException; -import java.util.logging.Level; -import java.util.logging.Logger; - -/** - * A launcher for the SCA Node daemon. - * - * @version $Rev$ $Date$ - */ -public class NodeDaemonLauncher { - - static final Logger logger = Logger.getLogger(NodeDaemonLauncher.class.getName()); - - /** - * Constructs a new node daemon launcher. - */ - private NodeDaemonLauncher() { - } - - /** - * Returns a new launcher instance. - * - * @return a new launcher instance - */ - public static NodeDaemonLauncher newInstance() { - return new NodeDaemonLauncher(); - } - - /** - * Creates a new node daemon. - * - * @param - * @return a new node daemon - * @throws LauncherException - */ - public T createNodeDaemon() throws LauncherException { - return (T)nodeDaemon(); - } - - public static void main(String[] args) throws Exception { - logger.info("Apache Tuscany SCA Node Daemon is starting..."); - - // Create a node launcher - NodeDaemonLauncher launcher = newInstance(); - - EquinoxHost equinox = null; - Object node = null; - ShutdownThread shutdown = null; - try { - - // Start the OSGi host - equinox = new EquinoxHost(); - equinox.start(); - - // Start the node - node = launcher.createNodeDaemon(); - try { - node.getClass().getMethod("start").invoke(node); - } catch (Exception e) { - logger.log(Level.SEVERE, "SCA Node Daemon could not be started", e); - throw e; - } - logger.info("SCA Node Daemon is now started."); - - // Install a shutdown hook - shutdown = new ShutdownThread(node, equinox); - Runtime.getRuntime().addShutdownHook(shutdown); - - logger.info("Press enter to shutdown."); - try { - System.in.read(); - } catch (IOException e) { - - // Wait forever - Object lock = new Object(); - synchronized(lock) { - lock.wait(); - } - } - } finally { - - // Remove the shutdown hook - if (shutdown != null) { - Runtime.getRuntime().removeShutdownHook(shutdown); - } - - // Stop the node - if (node != null) { - stopNode(node); - } - if (equinox != null) { - equinox.stop(); - } - } - } - - /** - * Stop the given node. - * - * @param node - * @throws Exception - */ - private static void stopNode(Object node) throws Exception { - try { - node.getClass().getMethod("stop").invoke(node); - logger.info("SCA Node Daemon is now stopped."); - } catch (Exception e) { - logger.log(Level.SEVERE, "SCA Node Daemon could not be stopped", e); - throw e; - } - } - - private static class ShutdownThread extends Thread { - private Object node; - private EquinoxHost equinox; - - public ShutdownThread(Object node, EquinoxHost equinox) { - super(); - this.node = node; - this.equinox = equinox; - } - - @Override - public void run() { - try { - stopNode(node); - } catch (Exception e) { - // Ignore - } - try { - equinox.stop(); - } catch (Exception e) { - // Ignore - } - } - } -} diff --git a/java/sca/modules/node-launcher-equinox/src/main/java/org/apache/tuscany/sca/node/equinox/launcher/NodeLauncher.java b/java/sca/modules/node-launcher-equinox/src/main/java/org/apache/tuscany/sca/node/equinox/launcher/NodeLauncher.java deleted file mode 100644 index 79aedc81c4..0000000000 --- a/java/sca/modules/node-launcher-equinox/src/main/java/org/apache/tuscany/sca/node/equinox/launcher/NodeLauncher.java +++ /dev/null @@ -1,376 +0,0 @@ -/* - * 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.equinox.launcher; - -import static org.apache.tuscany.sca.node.equinox.launcher.NodeLauncherUtil.node; - -import java.io.File; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; -import java.util.List; -import java.util.logging.Level; -import java.util.logging.Logger; - -import org.apache.commons.cli.CommandLine; -import org.apache.commons.cli.CommandLineParser; -import org.apache.commons.cli.HelpFormatter; -import org.apache.commons.cli.Option; -import org.apache.commons.cli.Options; -import org.apache.commons.cli.PosixParser; -import org.osgi.framework.BundleContext; - -/** - * A launcher for SCA nodes. - * - * Agruments: - * [-config ]: The configuration folder for Equinox - * [-bundles ]: A list of bundles to be installed - * [-c ]: The composite URI - * [-t ]: Time to live in milliseconds before the node is started - * contribution1 ... contributionN: A list of contribution files or URLs - * - * @version $Rev$ $Date$ - */ -public class NodeLauncher { - - static final Logger logger = Logger.getLogger(NodeLauncher.class.getName()); - private EquinoxHost equinoxHost; - private BundleContext bundleContext; - - /** - * Constructs a new node launcher. - */ - private NodeLauncher() { - equinoxHost = new EquinoxHost(); - bundleContext = equinoxHost.start(); - } - - /** - * Returns a new launcher instance. - * - * @return a new launcher instance - */ - public static NodeLauncher newInstance() { - return new NodeLauncher(); - } - - /** - * Creates a new SCA node from the configuration URL - * - * @param configurationURL the URL of the node configuration which is the ATOM feed - * that contains the URI of the composite and a collection of URLs for the contributions - * - * @return a new SCA node. - * @throws LauncherException - */ - public T createNode(String configurationURL) throws LauncherException { - return (T)node(configurationURL, null, null, null, bundleContext); - } - - /** - * Creates a new SCA OSGi Node. - * - * @param compositeURI the URI of the composite to use - * @param contributions the URI of the contributions that provides the composites and related - * artifacts. If the list is empty, then we will use the thread context classloader to discover - * the contribution on the classpath - * - * @return a new SCA node. - * @throws LauncherException - */ - public T createNode(String compositeURI, Contribution... contributions) throws LauncherException { - return (T)node(null, compositeURI, null, contributions, bundleContext); - } - - /** - * Creates a new SCA OSGi Node. - * - * @param compositeURI the URI of the composite to use - * @param compositeContent the XML content of the composite to use - * @param contributions the URI of the contributions that provides the composites and related artifacts - * @return a new SCA node. - * @throws LauncherException - */ - public T createNode(String compositeURI, String compositeContent, Contribution... contributions) - throws LauncherException { - return (T)node(null, compositeURI, compositeContent, contributions, bundleContext); - } - - public static void main(String[] args) throws Exception { - CommandLineParser parser = new PosixParser(); - Options options = getCommandLineOptions(); - CommandLine cli = parser.parse(options, args); - - Object node = null; - ShutdownThread shutdown = null; - EquinoxHost equinox = null; - try { - - if (cli.hasOption("config")) { - System.setProperty("osgi.configuration.area", cli.getOptionValue("config")); - } - - while (true) { - if (cli.hasOption("node")) { - // Create a node from a configuration URI - String configurationURI = cli.getOptionValue("node"); - logger.info("SCA Node configuration: " + configurationURI); - - // Create a node launcher - NodeLauncher launcher = newInstance(); - equinox = launcher.equinoxHost; - - node = launcher.createNode(configurationURI); - } - else if (cli.hasOption("bundles")) { - /** - * osgi.bundles - * The comma-separated list of bundles which are automatically installed and optionally started once the system is up - * and running. Each entry is of the form: - * [@ [] [":start"]] - * If the start-level (>0 integer) is omitted then the framework will use the default start level for the bundle. - * If the "start" tag is added then the bundle will be marked as started after being installed. Simple bundle locations are - * interepreted as relative to the framework's parent directory. The start-level indicates the OSGi start level at which the - * bundle should run. If this value is not set, the system computes an appropriate default. - */ - String bundles = cli.getOptionValue("bundles"); - if (bundles != null) { - System.setProperty("osgi.bundles", cli.getOptionValue("bundles")); - } - - // Create a node launcher - NodeLauncher launcher = newInstance(); - equinox = launcher.equinoxHost; - - /* - List bundleFiles = cli.getArgList(); - for (String bf : bundleFiles) { - File f = new File(bf); - equinox.installBundle(f.toURI().toURL(), null); - } - for (Bundle b : launcher.bundleContext.getBundles()) { - try { - if (b.getHeaders().get(Constants.FRAGMENT_HOST) == null) { - // Start the non-fragment bundle - b.start(); - } - } catch (Exception e) { - logger.severe(NodeLauncherUtil.string(b, false) + " " + e.getMessage()); - // logger.log(Level.SEVERE, e.getMessage(), e); - } - } - */ - - } - else { - // Create a node from a composite URI and a contribution location - String compositeURI = cli.getOptionValue("composite"); - List contribs = cli.getArgList(); - Contribution[] contributions = null; - if (!contribs.isEmpty()) { - contributions = new Contribution[contribs.size()]; - int index = 0; - for (String contrib : contribs) { - logger.info("SCA contribution: " + contrib); - URL url = null; - try { - url = new URL(contrib); - } catch (MalformedURLException e) { - url = new File(contrib).toURI().toURL(); - } - contributions[index] = new Contribution("contribution-" + index, url.toString()); - index++; - } - } else { - HelpFormatter formatter = new HelpFormatter(); - formatter.setSyntaxPrefix("Usage: "); - formatter.printHelp("java " + NodeLauncher.class.getName() - + " [-config ]" - + " [-c ]" - + " [-b ]" - + " [-t ]" - + " contribution1 ... contributionN", options); - return; - } - // Create a node launcher - logger.info("SCA composite: " + compositeURI); - NodeLauncher launcher = newInstance(); - equinox = launcher.equinoxHost; - node = launcher.createNode(compositeURI, contributions); - } - - if (node != null) { - logger.info("Apache Tuscany SCA Node is starting..."); - - // Start the node - try { - node.getClass().getMethod("start").invoke(node); - } catch (Exception e) { - logger.log(Level.SEVERE, "SCA Node could not be started", e); - throw e; - } - logger.info("SCA Node is now started."); - } - // Install a shutdown hook - shutdown = new ShutdownThread(node, equinox); - Runtime.getRuntime().addShutdownHook(shutdown); - - long ttl = Long.parseLong(cli.getOptionValue("ttl", "-1")); - if (ttl >= 0) { - logger.info("Waiting for " + ttl + " milliseconds ..."); - Thread.sleep(ttl); - break; // Exit - } - - // Wait until the "Enter" is pressed - logger.info("Press 'q' to quit, 'r' to restart."); - int k = 0; - try { - while ((k != 'q') && (k != 'r')) { - k = System.in.read(); - } - } catch (IOException e) { - - // Wait forever - Object lock = new Object(); - synchronized (lock) { - lock.wait(); - } - } - - // Stop the node - if (node != null) { - Object n = node; - node = null; - stopNode(n); - } - - // Quit - if (k == 'q') { - break; - } - - } - } finally { - - // Remove the shutdown hook - if (shutdown != null) { - Runtime.getRuntime().removeShutdownHook(shutdown); - } - - // Stop the node - if (node != null) { - destroyNode(node); - } - if (equinox != null) { - equinox.stop(); - } - } - } - - static Options getCommandLineOptions() { - Options options = new Options(); - Option opt1 = new Option("c", "composite", true, "URI for the composite"); - opt1.setArgName("compositeURI"); - options.addOption(opt1); - Option opt2 = new Option("n", "node", true, "URI for the node configuration"); - opt2.setArgName("nodeConfigurationURI"); - options.addOption(opt2); - Option opt3 = new Option("config", "configuration", true, "Configuration"); - opt3.setArgName("equinoxConfiguration"); - options.addOption(opt3); - Option opt4 = new Option("t", "ttl", true, "Time to live"); - opt4.setArgName("timeToLiveInMilliseconds"); - // opt4.setType(long.class); - options.addOption(opt4); - - Option opt5 = new Option("b", "bundles", false, "OSGi bundles"); - opt4.setArgName("osgiBundles"); - options.addOption(opt5); - - return options; - } - - public void destroy() { - if (equinoxHost != null) { - equinoxHost.stop(); - bundleContext = null; - } - } - - /** - * Stop the given node. - * - * @param node - * @throws Exception - */ - private static void destroyNode(Object node) throws Exception { - try { - node.getClass().getMethod("stop").invoke(node); - node.getClass().getMethod("destroy").invoke(node); - logger.info("SCA Node is now stopped."); - } catch (Exception e) { - logger.log(Level.SEVERE, "SCA Node could not be stopped", e); - throw e; - } - } - - private static class ShutdownThread extends Thread { - private Object node; - private EquinoxHost equinox; - - public ShutdownThread(Object node, EquinoxHost equinox) { - super(); - this.node = node; - this.equinox = equinox; - } - - @Override - public void run() { - try { - destroyNode(node); - } catch (Exception e) { - // Ignore - } - try { - equinox.stop(); - } catch (Exception e) { - // Ignore - } - } - } - - /** - * Stop the given node. - * - * @param node - * @throws Exception - */ - private static void stopNode(Object node) throws Exception { - try { - node.getClass().getMethod("stop").invoke(node); - logger.info("SCA Node is now stopped."); - } catch (Exception e) { - logger.log(Level.SEVERE, "SCA Node could not be stopped", e); - throw e; - } - } -} diff --git a/java/sca/modules/node-launcher-equinox/src/main/java/org/apache/tuscany/sca/node/equinox/launcher/NodeLauncher2.java b/java/sca/modules/node-launcher-equinox/src/main/java/org/apache/tuscany/sca/node/equinox/launcher/NodeLauncher2.java deleted file mode 100644 index 14018a7af5..0000000000 --- a/java/sca/modules/node-launcher-equinox/src/main/java/org/apache/tuscany/sca/node/equinox/launcher/NodeLauncher2.java +++ /dev/null @@ -1,217 +0,0 @@ -/* - * 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.equinox.launcher; - -import static org.apache.tuscany.sca.node.equinox.launcher.NodeLauncherUtil.node; - -import java.io.File; -import java.io.IOException; -import java.util.logging.Level; -import java.util.logging.Logger; - -import org.osgi.framework.BundleContext; - -/** - * A launcher for SCA nodes. - * - * @version $Rev$ $Date$ - */ -public class NodeLauncher2 { - - static final Logger logger = Logger.getLogger(NodeLauncher2.class.getName()); - private EquinoxHost equinoxHost; - private BundleContext bundleContext; - - /** - * Constructs a new node launcher. - */ - private NodeLauncher2() { - equinoxHost = new EquinoxHost(); - bundleContext = equinoxHost.start(); - } - - /** - * Returns a new launcher instance. - * - * @return a new launcher instance - */ - public static NodeLauncher2 newInstance() { - return new NodeLauncher2(); - } - - /** - * Creates a new SCA node from the configuration URL - * - * @param configurationURL the URL of the node configuration which is the ATOM feed - * that contains the URI of the composite and a collection of URLs for the contributions - * - * @return a new SCA node. - * @throws LauncherException - */ - public T createNode(String configurationURL) throws LauncherException { - return (T)node(configurationURL, null, null, null, bundleContext); - } - - /** - * Creates a new SCA OSGi Node. - * - * @param compositeURI the URI of the composite to use - * @param contributions the URI of the contributions that provides the composites and related - * artifacts. If the list is empty, then we will use the thread context classloader to discover - * the contribution on the classpath - * - * @return a new SCA node. - * @throws LauncherException - */ - public T createNode(String compositeURI, Contribution... contributions) throws LauncherException { - return (T)node(null, compositeURI, null, contributions, bundleContext); - } - - /** - * Creates a new SCA OSGi Node. - * - * @param compositeURI the URI of the composite to use - * @param compositeContent the XML content of the composite to use - * @param contributions the URI of the contributions that provides the composites and related artifacts - * @return a new SCA node. - * @throws LauncherException - */ - public T createNode(String compositeURI, String compositeContent, Contribution... contributions) - throws LauncherException { - return (T)node(null, compositeURI, compositeContent, contributions, bundleContext); - } - - public static void main(String[] args) throws Exception { - logger.info("Apache Tuscany SCA Node is starting..."); - - // Create a node launcher - NodeLauncher2 launcher = newInstance(); - - EquinoxHost equinox = launcher.equinoxHost; - Object node = null; - ShutdownThread shutdown = null; - try { - - Contribution[] contributions = new Contribution[args.length]; - for (int i=0; i]: The configuration folder for Equinox\n" - // + " [-bundles ]: A list of bundles to be installed\n" - + "\t[-c ]: The composite URI\n" - + "\t[-t ]: Time to live in milliseconds before the node is stopped\n" - + "\tcontribution1 ... contributionN: A list of contribution files or URLs\n"; - } - - public void _tuscany(CommandInterpreter ci) throws Exception { - List args = new ArrayList(); - while (true) { - String arg = ci.nextArgument(); - if (arg == null) { - break; - } - args.add(arg); - } - NodeLauncher.main(args.toArray(new String[args.size()])); - } - -} diff --git a/java/sca/modules/node-launcher-equinox/src/main/java/org/apache/tuscany/sca/node/equinox/launcher/NodeLauncherUtil.java b/java/sca/modules/node-launcher-equinox/src/main/java/org/apache/tuscany/sca/node/equinox/launcher/NodeLauncherUtil.java deleted file mode 100644 index 939372d782..0000000000 --- a/java/sca/modules/node-launcher-equinox/src/main/java/org/apache/tuscany/sca/node/equinox/launcher/NodeLauncherUtil.java +++ /dev/null @@ -1,1345 +0,0 @@ -/* - * 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.equinox.launcher; - -import static org.osgi.framework.Constants.ACTIVATION_LAZY; -import static org.osgi.framework.Constants.BUNDLE_ACTIVATIONPOLICY; -import static org.osgi.framework.Constants.BUNDLE_CLASSPATH; -import static org.osgi.framework.Constants.BUNDLE_MANIFESTVERSION; -import static org.osgi.framework.Constants.BUNDLE_NAME; -import static org.osgi.framework.Constants.BUNDLE_SYMBOLICNAME; -import static org.osgi.framework.Constants.BUNDLE_VENDOR; -import static org.osgi.framework.Constants.BUNDLE_VERSION; -import static org.osgi.framework.Constants.DYNAMICIMPORT_PACKAGE; -import static org.osgi.framework.Constants.EXPORT_PACKAGE; -import static org.osgi.framework.Constants.REQUIRE_BUNDLE; -import static org.osgi.framework.Constants.RESOLUTION_DIRECTIVE; -import static org.osgi.framework.Constants.RESOLUTION_OPTIONAL; -import static org.osgi.framework.Constants.VISIBILITY_DIRECTIVE; -import static org.osgi.framework.Constants.VISIBILITY_REEXPORT; - -import java.io.ByteArrayInputStream; -import java.io.ByteArrayOutputStream; -import java.io.File; -import java.io.FileInputStream; -import java.io.FileNotFoundException; -import java.io.FileOutputStream; -import java.io.FilenameFilter; -import java.io.IOException; -import java.io.InputStream; -import java.io.OutputStream; -import java.io.Reader; -import java.lang.reflect.Constructor; -import java.lang.reflect.InvocationTargetException; -import java.lang.reflect.Method; -import java.net.MalformedURLException; -import java.net.URI; -import java.net.URISyntaxException; -import java.net.URL; -import java.net.URLClassLoader; -import java.security.AccessController; -import java.security.PrivilegedAction; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashSet; -import java.util.List; -import java.util.Set; -import java.util.StringTokenizer; -import java.util.jar.Attributes; -import java.util.jar.JarFile; -import java.util.jar.JarInputStream; -import java.util.jar.JarOutputStream; -import java.util.jar.Manifest; -import java.util.logging.Level; -import java.util.logging.Logger; -import java.util.regex.Matcher; -import java.util.regex.Pattern; -import java.util.zip.ZipEntry; -import java.util.zip.ZipInputStream; - -import org.osgi.framework.Bundle; -import org.osgi.framework.BundleContext; -import org.osgi.framework.BundleException; -import org.osgi.framework.Constants; - -/** - * Common functions and constants used by the admin components. - * - * @version $Rev$ $Date$ - */ -final class NodeLauncherUtil { - private static final String NODE_API_BUNDLE = "org.apache.tuscany.sca.node.api"; - - private static final Logger logger = Logger.getLogger(NodeLauncherUtil.class.getName()); - - static final String META_INF_SERVICES = "META-INF.services;partial=true;mandatory:=partial"; - static final String LAUNCHER_EQUINOX_LIBRARIES = "org.apache.tuscany.sca.node.launcher.equinox.libraries"; - static final String GATEWAY_BUNDLE = "org.apache.tuscany.sca.gateway"; - - private static final String NODE_FACTORY = "org.apache.tuscany.sca.node.NodeFactory"; - - private static final String DOMAIN_MANAGER_LAUNCHER_BOOTSTRAP = - "org.apache.tuscany.sca.domain.manager.launcher.DomainManagerLauncherBootstrap"; - - private static final String NODE_IMPLEMENTATION_DAEMON_BOOTSTRAP = - "org.apache.tuscany.sca.implementation.node.launcher.NodeImplementationDaemonBootstrap"; - - private static final String TUSCANY_HOME = "TUSCANY_HOME"; - private static final String TUSCANY_PATH = "TUSCANY_PATH"; - - /** - * Creates a new node. - * - * @param configurationURI - * @param compositeURI - * @param compositeContent - * @param contributions - * @param contributionClassLoader - * @param bundleContext - * @throws LauncherException - */ - static Object node(String configurationURI, - String compositeURI, - String compositeContent, - Contribution[] contributions, - BundleContext bundleContext) throws LauncherException { - try { - - // Get the node runtime bundle. - Bundle bundle = null; - for (Bundle b : bundleContext.getBundles()) { - if (NODE_API_BUNDLE.equals(b.getSymbolicName())) { - bundle = b; - break; - } - } - if (bundle == null) { - throw new IllegalStateException("Bundle " + NODE_API_BUNDLE + " is not installed"); - } - - // Use Java reflection to create the node as only the runtime class - // loader knows the runtime classes required by the node - Class bootstrapClass = bundle.loadClass(NODE_FACTORY); - - Object node = createNode(bootstrapClass, configurationURI, compositeURI, compositeContent, contributions); - - // If the SCANodeFactory interface is available in the current classloader, create - // an SCANode proxy around the node we've just create - try { - Class type = Class.forName(NODE_FACTORY); - type = type.getDeclaredClasses()[0]; - return type.getMethod("createProxy", Class.class, Object.class).invoke(null, type, node); - } catch (ClassNotFoundException e) { - // Ignore - } - return node; - - } catch (Exception e) { - NodeLauncher.logger.log(Level.SEVERE, "SCA Node could not be created", e); - throw new LauncherException(e); - } - } - - private static Object createNode(Class bootstrapClass, - String configurationURI, - String compositeURI, - String compositeContent, - Contribution[] contributions) throws NoSuchMethodException, - IllegalAccessException, InvocationTargetException, MalformedURLException { - Method newInstance = bootstrapClass.getMethod("newInstance"); - Object nodeFactory = newInstance.invoke(null); - - Object node; - if (configurationURI != null) { - - // NodeFactory.createNode(URL) - Method create = bootstrapClass.getMethod("createNode", URL.class); - node = create.invoke(nodeFactory, new URL(configurationURI)); - - } else if (compositeContent != null) { - - // NodeFactory.createNode(Reader, Stringp[], String[]) - Method create = bootstrapClass.getMethod("createNode", Reader.class, String[].class, String[].class); - String[] uris = new String[contributions.length]; - String[] locations = new String[contributions.length]; - for (int i = 0; i < contributions.length; i++) { - uris[i] = contributions[i].getURI(); - locations[i] = contributions[i].getLocation(); - } - node = create.invoke(nodeFactory, compositeContent, uris, locations); - - } else { - - // NodeFactory.createNode(String, Stringp[], String[]) - Method create = bootstrapClass.getMethod("createNode", String.class, String[].class, String[].class); - String[] uris = new String[contributions.length]; - String[] locations = new String[contributions.length]; - for (int i = 0; i < contributions.length; i++) { - uris[i] = contributions[i].getURI(); - locations[i] = contributions[i].getLocation(); - } - node = create.invoke(nodeFactory, compositeURI, uris, locations); - } - return node; - } - - /** - * Creates a new node daemon. - * - * @throws LauncherException - */ - static Object nodeDaemon() throws LauncherException { - ClassLoader tccl = Thread.currentThread().getContextClassLoader(); - try { - - // Use Java reflection to create the node daemon as only the runtime class - // loader knows the runtime classes required by the node - String className = NODE_IMPLEMENTATION_DAEMON_BOOTSTRAP; - Class bootstrapClass; - bootstrapClass = Class.forName(className, false, tccl); - Object bootstrap = bootstrapClass.getConstructor().newInstance(); - - Object nodeDaemon = bootstrapClass.getMethod("getNode").invoke(bootstrap); - return nodeDaemon; - - } catch (Exception e) { - NodeDaemonLauncher.logger.log(Level.SEVERE, "SCA Node Daemon could not be created", e); - throw new LauncherException(e); - } finally { - Thread.currentThread().setContextClassLoader(tccl); - } - } - - /** - * Creates a new domain manager. - * - * @throws LauncherException - */ - static Object domainManager(String rootDirectory) throws LauncherException { - ClassLoader tccl = Thread.currentThread().getContextClassLoader(); - try { - - // Use Java reflection to create the node daemon as only the runtime class - // loader knows the runtime classes required by the node - String className = DOMAIN_MANAGER_LAUNCHER_BOOTSTRAP; - Class bootstrapClass; - bootstrapClass = Class.forName(className, false, tccl); - Constructor constructor = bootstrapClass.getConstructor(String.class); - Object bootstrap = constructor.newInstance(rootDirectory); - - Object domainManager = bootstrapClass.getMethod("getNode").invoke(bootstrap); - return domainManager; - - } catch (Exception e) { - DomainManagerLauncher.logger.log(Level.SEVERE, "SCA Domain Manager could not be created", e); - throw new LauncherException(e); - } finally { - Thread.currentThread().setContextClassLoader(tccl); - } - } - - /** - * starting with -, then some digits, then . or - or _, then some digits again - * - */ - // Mike Edwards 13/04/2009 - this original pattern allows for any number of repeated - // groups of digits, so that 1.2.3.4 is legal, for example. The problem with this is - // that OSGi only deals with a maximum of 3 groups of digits... - // private static Pattern pattern = Pattern.compile("-(\\d)+((\\.|-|_)(\\d)+)*"); - // - // This updated version restricts the allowed patterns to a maximum of 3 groups of - // digits so that "1", "1.2" and "1.2.3" are allowed but not "1.2.3.4" etc - private static Pattern pattern = Pattern.compile("-(\\d)+((\\.|-|_)(\\d)+){0,2}"); - - /** - * Returns the version number to use for the given JAR file. - * - * @param jarFile - * @return - */ - static String jarVersion(URL jarFile) { - String name = jarFile.getFile(); - int index = name.lastIndexOf('/'); - if (index != -1) { - // Find the last segment - name = name.substring(index + 1); - } - index = name.lastIndexOf('.'); - if (index != -1) { - // Trim the extension - name = name.substring(0, index); - } - - Matcher matcher = pattern.matcher(name); - String version = "0.0.0"; - if (matcher.find()) { - version = matcher.group(); - // Remove the leading "-" character - version = version.substring(1); - // The Pattern above allows the version string to contain "-" and "_" as digit separators. - // OSGi only allows for "." as a separator thus any "-" and "_" characters in the version string must be replaced by "." - version = version.replace('-', '.'); - version = version.replace('_', '.'); - } - return version; - } - - static String artifactId(URL jarFile) { - String name = jarFile.getFile(); - int index = name.lastIndexOf('/'); - if (index != -1) { - // Find the last segment - name = name.substring(index + 1); - } - index = name.lastIndexOf('.'); - if (index != -1) { - // Trim the extension - name = name.substring(0, index); - } - - Matcher matcher = pattern.matcher(name); - if (matcher.find()) { - return name.substring(0, matcher.start()); - } else { - return name; - } - } - - /** - * Add the packages found in the given JAR to a set. - * - * @param jarFile - * @param packages - * @throws IOException - */ - private static void addPackages(URL jarFile, Set packages, String version) throws IOException { - if (version == null) { - version = ";version=" + jarVersion(jarFile); - } else { - version = ";version=" + version; - } - File file = file(jarFile); - if (file.isDirectory()) { - List classFiles = listClassFiles(file); - for (String cls : classFiles) { - int index = cls.lastIndexOf('/'); - if (index == -1) { - // Default package cannot be exported - continue; - } - String pkg = cls.substring(0, index); - pkg = pkg.replace('/', '.') + version; - // Export META-INF.services - if ("META-INF.services".equals(pkg)) { - packages.add(META_INF_SERVICES); - } else { - packages.add(pkg); - } - } - } else if (file.isFile()) { - ZipInputStream is = new ZipInputStream(new FileInputStream(file)); - ZipEntry entry; - while ((entry = is.getNextEntry()) != null) { - String entryName = entry.getName(); - // Export split packages for META-INF/services - if(entryName.startsWith("META-INF/services/")) { - packages.add("META-INF.services" + ";partial=true;mandatory:=partial"); - } - if (!entry.isDirectory() && entryName != null - && entryName.length() > 0 - && !entryName.startsWith(".") - && entryName.endsWith(".class") // Exclude resources from Export-Package - && entryName.lastIndexOf("/") > 0) { - String pkg = entryName.substring(0, entryName.lastIndexOf("/")).replace('/', '.') + version; - packages.add(pkg); - } - } - is.close(); - } - } - - private static List listClassFiles(File directory) { - List artifacts = new ArrayList(); - traverse(artifacts, directory, directory); - // Add META-INF/services to be exported - if (new File(directory, "META-INF/services").isDirectory()) { - artifacts.add("META-INF/services/"); - } - return artifacts; - } - - /** - * Recursively traverse a root directory - * - * @param fileList - * @param file - * @param root - * @throws IOException - */ - private static void traverse(List fileList, File file, File root) { - if (file.isFile() && file.getName().endsWith(".class")) { - fileList.add(root.toURI().relativize(file.toURI()).toString()); - } else if (file.isDirectory()) { - String uri = root.toURI().relativize(file.toURI()).toString(); - if (uri.endsWith("/")) { - uri = uri.substring(0, uri.length() - 1); - } - fileList.add(uri); - - File[] files = file.listFiles(); - for (File f : files) { - if (!f.getName().startsWith(".")) { - traverse(fileList, f, root); - } - } - } - } - - /** - * Finds the OSGi manifest file for a JAR file, where the manifest file is held in a META-INF directory - * alongside the JAR - * @param jarURL - The URL of the JAR file - * @return - a Manifest object corresponding to the manifest file, or NULL if there is no OSGi manifest - */ - static private Manifest findOSGiManifest(URL jarURL) { - try { - File jarFile = new File(jarURL.toURI()); - File theManifestFile = new File(jarFile.getParent(), "META-INF/MANIFEST.MF"); - if (theManifestFile.exists()) { - // Create manifest object by reading the manifest file - Manifest manifest = new Manifest(new FileInputStream(theManifestFile)); - // Check that this manifest file has the necessary OSGi metadata - String bundleName = manifest.getMainAttributes().getValue(BUNDLE_SYMBOLICNAME); - if (bundleName != null) { - return manifest; - } // end if - } // end if - } catch (Exception e) { - // Could not read the manifest - continue - } - return null; - } // end findOSGiManifest - - /** - * Generate a manifest from a list of third-party JAR files. - * - * @param jarFiles - * @param bundleSymbolicName The Bundle-SymbolicName - * @param bundleVersion The Bundle-Version - * @return - * @throws IllegalStateException - */ - static private Manifest thirdPartyLibraryBundleManifest(Collection jarFiles, - String bundleSymbolicName, - String bundleVersion) throws IllegalStateException { - try { - - // List exported packages and bundle classpath entries - StringBuffer classpath = new StringBuffer(); - StringBuffer exports = new StringBuffer(); - StringBuffer imports = new StringBuffer(); - Set packages = new HashSet(); - - for (URL jarFile : jarFiles) { - addPackages(jarFile, packages, bundleVersion); - classpath.append("\"external:"); - classpath.append(file(jarFile).getPath().replace(File.separatorChar, '/')); - classpath.append("\","); - } - - Set importPackages = new HashSet(); - for (String pkg : packages) { - - String importPackage = pkg; - int index = pkg.indexOf(';'); - if (index != -1) { - importPackage = pkg.substring(0, index); - } - if (!importPackages.contains(importPackage)) { - // Exclude META-INF.services - if (!"META-INF.services".equals(importPackage)) { - imports.append(pkg); - imports.append(','); - } - importPackages.add(importPackage); - exports.append(pkg); - exports.append(','); - } else { - logger.warning("Duplicate package skipped: " + pkg); - } - } - - // Create a manifest - Manifest manifest = new Manifest(); - Attributes attributes = manifest.getMainAttributes(); - attributes.putValue("Manifest-Version", "1.0"); - attributes.putValue(BUNDLE_MANIFESTVERSION, "2"); - - if (bundleVersion == null) { - bundleVersion = "0.0.0"; - } - attributes.putValue(Constants.BUNDLE_VERSION, bundleVersion); - if (bundleSymbolicName == null) { - bundleSymbolicName = LAUNCHER_EQUINOX_LIBRARIES; - } - attributes.putValue(BUNDLE_SYMBOLICNAME, bundleSymbolicName); - if (exports.length() > 0) { - attributes.putValue(EXPORT_PACKAGE, exports.substring(0, exports.length() - 1)); - } - /* - if (imports.length() > 0) { - attributes.putValue(IMPORT_PACKAGE, imports.substring(0, imports.length() - 1)); - } - */ - if (classpath.length() > 0) { - attributes.putValue(BUNDLE_CLASSPATH, classpath.substring(0, classpath.length() - 1)); - } - // The system bundle has incomplete javax.transaction* packages exported - attributes.putValue(DYNAMICIMPORT_PACKAGE, "javax.transaction;version=\"1.1\",javax.transaction.xa;version=\"1.1\",*"); - - return manifest; - } catch (IOException e) { - throw new IllegalStateException(e); - } - } - - /** - * Generates a library bundle from a list of third-party JARs. - * - * @param jarFiles - * @param bundleSymbolicName The Bundle-SymbolicName - * @param bundleVersion The Bundle-Version - * @return - * @throws IOException - */ - static InputStream thirdPartyLibraryBundle(Collection jarFiles, String bundleSymbolicName, String bundleVersion) - throws IOException { - ByteArrayOutputStream bos = new ByteArrayOutputStream(); - Manifest mf = thirdPartyLibraryBundleManifest(jarFiles, bundleSymbolicName, bundleVersion); - JarOutputStream jos = new JarOutputStream(bos, mf); - jos.close(); - return new ByteArrayInputStream(bos.toByteArray()); - } - - static InputStream thirdPartyLibraryBundle(Collection jarFiles, Manifest manifest) throws IOException { - ByteArrayOutputStream bos = new ByteArrayOutputStream(); - StringBuffer classpath = new StringBuffer(); - for (URL jarFile : jarFiles) { - classpath.append("\"external:"); - classpath.append(file(jarFile).getPath().replace(File.separatorChar, '/')); - classpath.append("\","); - } - - if (classpath.length() > 0) { - manifest.getMainAttributes().putValue(BUNDLE_CLASSPATH, classpath.substring(0, classpath.length() - 1)); - } - - JarOutputStream jos = new JarOutputStream(bos, manifest); - jos.close(); - return new ByteArrayInputStream(bos.toByteArray()); - } - - /** - * Returns the location of this bundle. - * - * @return - * @throws IOException - */ - static String thisBundleLocation() throws IOException, URISyntaxException { - String resource = NodeLauncherUtil.class.getName().replace('.', '/') + ".class"; - URL url = NodeLauncherUtil.class.getClassLoader().getResource(resource); - if (url == null) { - throw new FileNotFoundException(resource); - } - URI uri = toURI(url); - - String scheme = uri.getScheme(); - if (scheme.equals("jar")) { - String path = uri.toString().substring(4); - int i = path.indexOf("!/"); - path = path.substring(0, i); - return path; - } else { - String path = uri.toString(); - path = path.substring(0, path.length() - resource.length()); - return path; - } - } - - static URI toURI(URL url) { - File file = file(url); - if (file != null) { - return file.toURI(); - } else { - return createURI(url.toString()); - } - } - - /** - * Escape the space in URL string - * @param uri - * @return - */ - static URI createURI(String uri) { - if (uri == null) { - return null; - } - if (uri.indexOf('%') != -1) { - // Avoid double-escaping - return URI.create(uri); - } - int index = uri.indexOf(':'); - String scheme = null; - String ssp = uri; - if (index != -1) { - scheme = uri.substring(0, index); - ssp = uri.substring(index + 1); - } - try { - return new URI(scheme, ssp, null); - } catch (URISyntaxException e) { - throw new IllegalArgumentException(e); - } - } - - /** - * Returns the location of this bundle. - * - * @param bundle - * @return - * @throws IOException - */ - static String thisBundleLocation(Bundle bundle) throws IOException, URISyntaxException, ClassNotFoundException { - String resource = NodeLauncherUtil.class.getName(); - Class clazz = bundle.loadClass(NodeLauncherUtil.class.getName()); - URL url = clazz.getProtectionDomain().getCodeSource().getLocation(); - if (url == null) { - throw new FileNotFoundException(resource); - } - URI uri = toURI(url); - - String scheme = uri.getScheme(); - if (scheme.equals("jar")) { - String path = uri.toString().substring(4); - int i = path.indexOf("!/"); - path = path.substring(0, i); - return path; - } else { - String path = uri.toString(); - //path = path.substring(0, path.length() - resource.length()); - return path; - } - } - - /** - * Install the given bundle. - * - * @param bundleContext - * @param location - * @throws BundleException - * @throws IOException - */ - static void fixupBundle(String location) throws BundleException, IOException { - File target = file(new URL(location)); - if (!target.exists()) { - return; - } - location = target.toURI().toString(); - - // For development mode, copy the MANIFEST.MF file to the bundle location as it's - // initially outside of target/classes, at the root of the project. - if (location.endsWith("/target/classes/")) { - File targetManifest = new File(target, "META-INF/MANIFEST.MF"); - File sourceManifest = new File(target.getParentFile().getParentFile(), "META-INF/MANIFEST.MF"); - if (!sourceManifest.isFile()) { - return; - } - targetManifest.getParentFile().mkdirs(); - OutputStream os = new FileOutputStream(targetManifest); - InputStream is = new FileInputStream(sourceManifest); - byte[] buf = new byte[2048]; - for (;;) { - int l = is.read(buf); - if (l == -1) { - break; - } - os.write(buf, 0, l); - } - is.close(); - os.close(); - } - } - - /** - * Returns a string representation of the given bundle. - * - * @param b - * @param verbose - * @return - */ - static String string(Bundle bundle, boolean verbose) { - StringBuffer sb = new StringBuffer(); - sb.append(bundle.getBundleId()).append(" ").append(bundle.getSymbolicName()); - int s = bundle.getState(); - if ((s & Bundle.UNINSTALLED) != 0) { - sb.append(" UNINSTALLED"); - } - if ((s & Bundle.INSTALLED) != 0) { - sb.append(" INSTALLED"); - } - if ((s & Bundle.RESOLVED) != 0) { - sb.append(" RESOLVED"); - } - if ((s & Bundle.STARTING) != 0) { - sb.append(" STARTING"); - } - if ((s & Bundle.STOPPING) != 0) { - sb.append(" STOPPING"); - } - if ((s & Bundle.ACTIVE) != 0) { - sb.append(" ACTIVE"); - } - - if (verbose) { - sb.append(" ").append(bundle.getLocation()); - sb.append(" ").append(bundle.getHeaders()); - } - return sb.toString(); - } - - /** - * Returns the name of a bundle, or null if the given file is not a bundle. - * - * @param file - * @return - * @throws IOException - */ - static String bundleName(File file) throws IOException { - if (!file.exists()) { - return null; - } - String bundleName = null; - if (file.isDirectory()) { - File mf = new File(file, "META-INF/MANIFEST.MF"); - if (mf.isFile()) { - Manifest manifest = new Manifest(new FileInputStream(mf)); - bundleName = manifest.getMainAttributes().getValue(BUNDLE_SYMBOLICNAME); - } else { - if (file.toURI().getPath().endsWith("/target/classes/")) { - // Development mode, MANIFEST.MF is outside the bundle location - mf = new File(file.getParentFile().getParentFile(), "META-INF/MANIFEST.MF"); - if (mf.isFile()) { - Manifest manifest = new Manifest(new FileInputStream(mf)); - bundleName = manifest.getMainAttributes().getValue(BUNDLE_SYMBOLICNAME); - } - } - } - } else { - JarFile jar = new JarFile(file, false); - Manifest manifest = jar.getManifest(); - if (manifest != null) { - bundleName = manifest.getMainAttributes().getValue(BUNDLE_SYMBOLICNAME); - } - jar.close(); - } - if (bundleName == null) { - return bundleName; - } - int sc = bundleName.indexOf(';'); - if (sc != -1) { - bundleName = bundleName.substring(0, sc); - } - return bundleName; - } - - /** - * Collect JAR files in the given directory. - * - * @param directory - * @param urls - * @param filter - * @throws MalformedURLException - */ - private static void collectClasspathEntries(File directory, Set urls, FilenameFilter filter, boolean recursive) - throws MalformedURLException { - File[] files = directory.listFiles(filter); - if (files != null) { - int count = 0; - for (File file : files) { - if (recursive && file.isDirectory()) { - collectClasspathEntries(file, urls, filter, recursive); - } else { - urls.add(file.toURI().toURL()); - count++; - } - } - if (count != 0) { - logger.fine("Runtime classpath: " + count - + " JAR" - + (count > 1 ? "s" : "") - + " from " - + directory.toString()); - } - } - } - - /** - * Collect development .../ target/classes directories in the given directory. - * - * @param directory - * @param urls - * @param filter - * @throws MalformedURLException - */ - private static void collectTargetClassesClasspathEntries(File directory, Set urls, FilenameFilter filter) - throws MalformedURLException { - File[] files = directory.listFiles(); - if (files != null) { - int count = 0; - for (File file : files) { - if (!file.isDirectory()) { - continue; - } - File target = new File(file, "target"); - if (!target.isDirectory()) { - continue; - } - File classes = new File(target, "classes"); - if (classes.isDirectory() && filter.accept(target, "classes")) { - urls.add(classes.toURI().toURL()); - count++; - } - } - if (count != 0 && logger.isLoggable(Level.FINE)) { - logger.fine("Runtime classpath: " + count - + " classes folder" - + (count > 1 ? "s" : "") - + " from " - + directory.toString()); - } - } - } - - /** - * Collect JAR files under the given distribution directory. - * - * @param directory - * @param jarDirectoryURLs - * @param jarURLs - * @param filter - * @throws MalformedURLException - */ - private static void collectDistributionClasspathEntries(String directory, - Set jarDirectoryURLs, - Set jarURLs, - FilenameFilter filter) throws MalformedURLException { - File directoryFile = new File(directory); - URL directoryURL = directoryFile.toURI().toURL(); - if (!jarDirectoryURLs.contains(directoryURL) && directoryFile.exists()) { - - // Collect files under the given directory - jarDirectoryURLs.add(directoryURL); - collectClasspathEntries(directoryFile, jarURLs, filter, false); - - // Collect files under /modules - File modulesDirectory = new File(directoryFile, "modules"); - URL modulesDirectoryURL = modulesDirectory.toURI().toURL(); - if (!jarDirectoryURLs.contains(modulesDirectoryURL) && modulesDirectory.exists()) { - jarDirectoryURLs.add(modulesDirectoryURL); - collectClasspathEntries(modulesDirectory, jarURLs, filter, true); - } - - // Collect files under /lib - File libDirectory = new File(directoryFile, "lib"); - URL libDirectoryURL = libDirectory.toURI().toURL(); - if (!jarDirectoryURLs.contains(libDirectoryURL) && libDirectory.exists()) { - jarDirectoryURLs.add(libDirectoryURL); - collectClasspathEntries(libDirectory, jarURLs, filter, true); - } - } - } - - private static boolean isMavenTestMode() { - return getProperty("surefire.test.class.path") != null || getProperty("surefire.real.class.path") != null - || getProperty("localRepository") != null; - } - - /** - * Determine the Tuscany runtime classpath entries. - * - * @param useDistribution - * @param useAppClasspath - * @param useModulesDirectory - * @return - */ - static Set runtimeClasspathEntries(boolean useDistribution, - boolean useAppClasspath, - boolean useModulesDirectory) throws FileNotFoundException, - URISyntaxException, MalformedURLException { - - // Build list of runtime JARs - Set jarDirectoryURLs = new HashSet(); - Set jarURLs = new HashSet(); - - // Determine the path to the launcher class - URI uri; - try { - uri = codeLocation(NodeLauncherUtil.class); - } catch (Exception e) { - uri = URI.create(""); - } - - // If the launcher class is in a JAR, add all runtime JARs from directory containing - // that JAR (e.g. the Tuscany modules directory) as well as the ../modules and - // ../lib directories - if (uri.getPath().endsWith(".jar")) { - if (useDistribution) { - - File file = new File(uri); - if (file.exists()) { - File jarDirectory = file.getParentFile(); - if (jarDirectory != null && jarDirectory.exists()) { - - // Collect JAR files from the directory containing the input JAR - // (e.g. the Tuscany modules directory) - URL jarDirectoryURL = jarDirectory.toURI().toURL(); - jarDirectoryURLs.add(jarDirectoryURL); - collectClasspathEntries(jarDirectory, jarURLs, new StandAloneJARFileNameFilter(), true); - - File homeDirectory = jarDirectory.getParentFile(); - if (homeDirectory != null && homeDirectory.exists()) { - collectDistributionClasspathEntries(homeDirectory.getAbsolutePath(), - jarDirectoryURLs, - jarURLs, - new StandAloneJARFileNameFilter()); - } - } - } - } - } else if (uri.getPath().endsWith("/target/classes/")) { - - // Development mode, we're running off classes in a workspace - // and not from Maven surefire, collect all bundles in the workspace - if (useModulesDirectory) { - if (!isMavenTestMode()) { - File file = new File(uri); - if (file.exists()) { - File moduleDirectory = file.getParentFile().getParentFile(); - if (moduleDirectory != null) { - File modulesDirectory = moduleDirectory.getParentFile(); - if (modulesDirectory != null && modulesDirectory.exists() - && modulesDirectory.getName().equals("modules")) { - collectDevelopmentClasspathEntries(modulesDirectory.getAbsolutePath(), - jarDirectoryURLs, - jarURLs, - new StandAloneDevelopmentClassesFileNameFilter()); - // Added Mike Edwards, 09/04/2009 - // Get hold of the Libraries that are used by the Tuscany modules - collectDevelopmentLibraryEntries(modulesDirectory, jarDirectoryURLs, jarURLs); - } // end if - } - } - } - } - } - - // Look for a TUSCANY_HOME system property or environment variable - // Add all the JARs found under $TUSCANY_HOME, $TUSCANY_HOME/modules - // and $TUSCANY_HOME/lib - if (useDistribution) { - String home = getProperty(TUSCANY_HOME); - if (home != null && home.length() != 0) { - logger.info(TUSCANY_HOME + ": " + home); - collectDistributionClasspathEntries(home, jarDirectoryURLs, jarURLs, new StandAloneJARFileNameFilter()); - } - - // Look for a TUSCANY_PATH system property or environment variable - // Add all the JARs found under $TUSCANY_PATH, $TUSCANY_PATH/modules - // and $TUSCANY_PATH/lib - String ext = getProperty(TUSCANY_PATH); - if (ext != null && ext.length() != 0) { - logger.info(TUSCANY_PATH + ": " + ext); - String separator = getProperty("path.separator"); - for (StringTokenizer tokens = new StringTokenizer(ext, separator); tokens.hasMoreTokens();) { - collectDistributionClasspathEntries(tokens.nextToken(), - jarDirectoryURLs, - jarURLs, - new StandAloneJARFileNameFilter()); - } - } - } - - // Add the classpath entries from the current classloader - if (useAppClasspath) { - collectClassLoaderClasspathEntries(jarURLs, NodeLauncherUtil.class.getClassLoader()); - } - - return jarURLs; - - } - - /** - * Returns the JAR files on the classpath used by the given classloader. - * - * @param classLoader - * @return - */ - static List jarFilesOnClasspath(ClassLoader classLoader) { - Set entries = new HashSet(); - collectClassLoaderClasspathEntries(entries, classLoader); - return new ArrayList(entries); - } - - private static String getProperty(final String prop) { - return AccessController.doPrivileged(new PrivilegedAction() { - public String run() { - String value = System.getProperty(prop); - if (value == null || value.length() == 0) { - return System.getenv(prop); - } else { - return value; - } - } - }); - } - - /** - * Collect JARs on the classpath of a URLClassLoader. - * - * @param urls - * @param cl - */ - private static void collectClassLoaderClasspathEntries(Set urls, ClassLoader cl) { - if (cl == null) { - return; - } - - int count = urls.size(); - // Collect JARs from the URLClassLoader's classpath - if (cl instanceof URLClassLoader) { - URL[] jarURLs = ((URLClassLoader)cl).getURLs(); - if (jarURLs != null) { - for (URL jarURL : jarURLs) { - urls.add(jarURL); - try { - urls.addAll(manifestClassPath(jarURL)); - } catch (Exception e) { - logger.log(Level.SEVERE, e.getMessage(), e); - } - } - count = urls.size() - count; - - if (count != 0 && logger.isLoggable(Level.FINE)) { - logger.fine("Runtime classpath: " + count - + " JAR" - + (count > 1 ? "s" : "") - + " from application classpath."); - } - } - } - } - - static Set manifestClassPath(URL jarFile) throws Exception { - Set urls = new HashSet(); - if (jarFile != null) { - Manifest mf = null; - if ("file".equals(jarFile.getProtocol())) { - File f = file(jarFile); - if (f.isDirectory()) { - File mfFile = new File(f, "META-INF/MANIFEST.MF"); - if (mfFile.isFile()) { - FileInputStream is = new FileInputStream(mfFile); - mf = new Manifest(is); - is.close(); - } - } else if (f.isFile()) { - JarInputStream jar = new JarInputStream(jarFile.openStream()); - mf = jar.getManifest(); - jar.close(); - } - } - if (mf != null) { - String cp = mf.getMainAttributes().getValue("Class-Path"); - if (cp != null) { - StringTokenizer st = new StringTokenizer(cp); - while (st.hasMoreTokens()) { - URL entry = new URL(jarFile.toURI().toURL(), st.nextToken()).toURI().toURL(); - urls.add(entry); - } - } - } - } - return urls; - } - - /** - * A file name filter used to filter JAR files. - */ - private static class StandAloneJARFileNameFilter implements FilenameFilter { - - public boolean accept(File dir, String name) { - name = name.toLowerCase(); - - if (new File(dir, name).isDirectory()) { - return true; - } - - // Filter out the Tomcat and Webapp hosts - if (name.startsWith("tuscany-host-tomcat") || name.startsWith("tuscany-host-webapp")) { - //FIXME This is temporary - return false; - } - - // Include JAR and MAR files - if (name.endsWith(".jar")) { - return true; - } - if (name.endsWith(".mar")) { - return true; - } - return false; - } - } - - /** - * A file name filter used to filter target/classes directories. - */ - private static class StandAloneDevelopmentClassesFileNameFilter implements FilenameFilter { - - public boolean accept(File dir, String name) { - name = name.toLowerCase(); - if (dir.getName().equals("target") && name.equals("classes")) { - - // Filter out the Tomcat and Webapp hosts - String dirPath = dir.getAbsolutePath(); - if (dirPath.endsWith("host-tomcat/target") || dirPath.endsWith("host-webapp/target")) { - //FIXME This is temporary - return false; - } - return true; - } - - // Filter out the Tomcat and Webapp hosts - if (name.startsWith("tuscany-host-tomcat") || name.startsWith("tuscany-host-webapp")) { - //FIXME This is temporary - return false; - } - - // Include JAR and MAR files - if (name.endsWith(".jar")) { - return true; - } - if (name.endsWith(".mar")) { - return true; - } - return false; - } - } - - /** - * A file name filter used to filter JAR files. - */ - private static class WebAppJARFileNameFilter extends StandAloneJARFileNameFilter { - - @Override - public boolean accept(File dir, String name) { - if (!super.accept(dir, name)) { - return false; - } - name = name.toLowerCase(); - - // Exclude servlet-api JARs - if (name.startsWith("servlet-api")) { - return false; - } - - // Exclude the Tomcat and Jetty hosts - if (name.startsWith("tuscany-host-tomcat") || name.startsWith("tuscany-host-jetty")) { - //FIXME This is temporary - return false; - } - - return true; - } - } - - /** - * A file name filter used to filter the libraries in the \java\sca\distribution\all\target\modules - * directory - */ - private static class DistributionLibsFileNameFilter implements FilenameFilter { - - public boolean accept(File dir, String name) { - name = name.toLowerCase(); - - // Include subdirectories - if (new File(dir, name).isDirectory()) { - return true; - } - - // Filter out the Tuscany jars - since the development versions of these are used - // from the \target\classes directories... - if (name.startsWith("tuscany")) { - return false; - } - - // Include JAR and MAR files - if (name.endsWith(".jar")) { - return true; - } - if (name.endsWith(".mar")) { - return true; - } - return false; - } // end accept - } // end DistributionLibsFileNameFilter - - /** - * Returns the File object representing the given URL. - * - * @param url - * @return - */ - static File file(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) { - 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); - } - } - - /** - * Returns the location of the classpath entry, JAR, WAR etc. containing the given class. - * - * @param clazz - * @return - */ - static private URI codeLocation(Class clazz) { - URL url = clazz.getProtectionDomain().getCodeSource().getLocation(); - return toURI(url); - } - - /** - * Collect JAR files under the given distribution directory. - * - * @param directory - * @param jarDirectoryURLs - * @param jarURLs - * @param filter - * @throws MalformedURLException - */ - private static void collectDevelopmentClasspathEntries(String directory, - Set jarDirectoryURLs, - Set jarURLs, - FilenameFilter filter) throws MalformedURLException { - File directoryFile = new File(directory); - URL directoryURL = directoryFile.toURI().toURL(); - if (!jarDirectoryURLs.contains(directoryURL) && directoryFile.exists()) { - - // Collect files under the given directory - jarDirectoryURLs.add(directoryURL); - collectTargetClassesClasspathEntries(directoryFile, jarURLs, filter); - - } - } // end collectDevelopmentClasspathEntries - - /** - * Collect the dependent Library JAR files for the development use of Tuscany - * It is assumed that these live in the \java\sca\distribution\all\target\modules - * directory, where the development modules live in \java\sca\modules, but that - * same directory also contains prebuilt versions of the Tuscany JARs, which must be - * filtered out so as not to clash with the development versions of the code - * - * @param directory - the \java\sca\modules directory - * @param jarDirectoryURLs - * @param jarURLs - * @throws MalformedURLException - */ - private static void collectDevelopmentLibraryEntries(File modulesDirectory, - Set jarDirectoryURLs, - Set jarURLs) throws MalformedURLException { - // Get the \java\sca directory - File rootDirectory = modulesDirectory.getParentFile(); - // Get the \java\sca\distribution\all\target\modules - String sep = File.separator; - File libsDirectory = new File(rootDirectory, "distribution" + sep + "all" + sep + "target" + sep + "modules"); - URL libsURL = libsDirectory.toURI().toURL(); - if (!jarDirectoryURLs.contains(libsURL) && libsDirectory.exists()) { - // Collect files under the libs module directory - jarDirectoryURLs.add(libsURL); - collectClasspathEntries(libsDirectory, jarURLs, new DistributionLibsFileNameFilter(), true); - } // end if - } // end collectDevelopmentLibraryEntries - - /** - * Generate a gateway bundle that aggregate other bundles to handle split packages - * @param bundleSymbolicNames - * @throws FileNotFoundException - * @throws IOException - */ - static InputStream generateGatewayBundle(Collection bundleSymbolicNames, String bundleVersion, boolean reexport) - throws IOException { - Manifest manifest = new Manifest(); - Attributes attrs = manifest.getMainAttributes(); - StringBuffer requireBundle = new StringBuffer(); - for (String name : new HashSet(bundleSymbolicNames)) { - requireBundle.append(name).append(";").append(RESOLUTION_DIRECTIVE).append(":=") - .append(RESOLUTION_OPTIONAL); - if (reexport) { - requireBundle.append(";").append(VISIBILITY_DIRECTIVE).append(":=").append(VISIBILITY_REEXPORT); - } - requireBundle.append(","); - } - int len = requireBundle.length(); - if (len > 0 && requireBundle.charAt(len - 1) == ',') { - requireBundle.deleteCharAt(len - 1); - attrs.putValue(REQUIRE_BUNDLE, requireBundle.toString()); - attrs.putValue("Manifest-Version", "1.0"); - attrs.putValue("Implementation-Vendor", "The Apache Software Foundation"); - attrs.putValue("Implementation-Vendor-Id", "org.apache"); - if (bundleVersion != null) { - attrs.putValue(BUNDLE_VERSION, bundleVersion); - } - attrs.putValue(BUNDLE_MANIFESTVERSION, "2"); - attrs.putValue(BUNDLE_SYMBOLICNAME, GATEWAY_BUNDLE); - attrs.putValue(BUNDLE_NAME, "Apache Tuscany SCA Gateway Bundle"); - attrs.putValue(BUNDLE_VENDOR, "The Apache Software Foundation"); - attrs.putValue(EXPORT_PACKAGE, "META-INF.services"); - attrs.putValue(DYNAMICIMPORT_PACKAGE, "*"); - attrs.putValue(BUNDLE_ACTIVATIONPOLICY, ACTIVATION_LAZY); - ByteArrayOutputStream bos = new ByteArrayOutputStream(); - JarOutputStream jos = new JarOutputStream(bos, manifest); - jos.close(); - return new ByteArrayInputStream(bos.toByteArray()); - } else { - return null; - } - } - -} diff --git a/java/sca/modules/node-launcher-equinox/src/main/java/org/apache/tuscany/sca/node/equinox/launcher/NodeMain.java b/java/sca/modules/node-launcher-equinox/src/main/java/org/apache/tuscany/sca/node/equinox/launcher/NodeMain.java deleted file mode 100644 index 4b4c4a8978..0000000000 --- a/java/sca/modules/node-launcher-equinox/src/main/java/org/apache/tuscany/sca/node/equinox/launcher/NodeMain.java +++ /dev/null @@ -1,62 +0,0 @@ -/* - * 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.equinox.launcher; - -import org.apache.commons.cli.CommandLine; -import org.apache.commons.cli.CommandLineParser; -import org.apache.commons.cli.Option; -import org.apache.commons.cli.OptionGroup; -import org.apache.commons.cli.Options; -import org.apache.commons.cli.PosixParser; - - -/** - * Main class for this JAR. - * With a "-nodeDaemon or -nd" this class launches the SCA Node Daemon. - * With a "-domainManager or -dm" argument it launches the SCA domain admin node. - * With any other argument it launches an SCA Node. - * - * @version $Rev$ $Date$ - */ -public class NodeMain { - - public static void main(String[] args) throws Exception { - CommandLineParser parser = new PosixParser(); - Options options = new Options(); - OptionGroup group = new OptionGroup(); - group.addOption(new Option("dm", "domainManager", false, "Domain Manager")); - group.addOption(new Option("nd", "nodeDaemon", false, "Node Domain")); - options.addOptionGroup(group); - - // Add options from NodeLauncher to avoid UnrecognizedOptionException - for (Object o : NodeLauncher.getCommandLineOptions().getOptions()) { - options.addOption((Option)o); - } - - CommandLine cli = parser.parse(options, args); - if (cli.hasOption("nd")) { - NodeDaemonLauncher.main(args); - } else if (cli.hasOption("dm")) { - DomainManagerLauncher.main(args); - } else { - NodeLauncher.main(args); - } - } -} diff --git a/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/J2SE-1.5.profile b/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/J2SE-1.5.profile deleted file mode 100644 index 3814b42d00..0000000000 --- a/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/J2SE-1.5.profile +++ /dev/null @@ -1,150 +0,0 @@ -# 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. -org.osgi.framework.system.packages = \ - javax.accessibility,\ - javax.activity,\ - javax.crypto,\ - javax.crypto.interfaces,\ - javax.crypto.spec,\ - javax.imageio,\ - javax.imageio.event,\ - javax.imageio.metadata,\ - javax.imageio.plugins.bmp,\ - javax.imageio.plugins.jpeg,\ - javax.imageio.spi,\ - javax.imageio.stream,\ - javax.management,\ - javax.management.loading,\ - javax.management.modelmbean,\ - javax.management.monitor,\ - javax.management.openmbean,\ - javax.management.relation,\ - javax.management.remote,\ - javax.management.remote.rmi,\ - javax.management.timer,\ - javax.naming,\ - javax.naming.directory,\ - javax.naming.event,\ - javax.naming.ldap,\ - javax.naming.spi,\ - javax.net,\ - javax.net.ssl,\ - javax.print,\ - javax.print.attribute,\ - javax.print.attribute.standard,\ - javax.print.event,\ - javax.rmi,\ - javax.rmi.CORBA,\ - javax.rmi.ssl,\ - javax.security.auth,\ - javax.security.auth.callback,\ - javax.security.auth.kerberos,\ - javax.security.auth.login,\ - javax.security.auth.spi,\ - javax.security.auth.x500,\ - javax.security.cert,\ - javax.security.sasl,\ - javax.sound.midi,\ - javax.sound.midi.spi,\ - javax.sound.sampled,\ - javax.sound.sampled.spi,\ - javax.sql,\ - javax.sql.rowset,\ - javax.sql.rowset.serial,\ - javax.sql.rowset.spi,\ - javax.swing,\ - javax.swing.border,\ - javax.swing.colorchooser,\ - javax.swing.event,\ - javax.swing.filechooser,\ - javax.swing.plaf,\ - javax.swing.plaf.basic,\ - javax.swing.plaf.metal,\ - javax.swing.plaf.multi,\ - javax.swing.plaf.synth,\ - javax.swing.table,\ - javax.swing.text,\ - javax.swing.text.html,\ - javax.swing.text.html.parser,\ - javax.swing.text.rtf,\ - javax.swing.tree,\ - javax.swing.undo,\ - javax.transaction,\ - javax.transaction.xa,\ - javax.xml,\ - javax.xml.datatype,\ - javax.xml.namespace,\ - javax.xml.parsers,\ - javax.xml.transform,\ - javax.xml.transform.dom,\ - javax.xml.transform.sax,\ - javax.xml.transform.stream,\ - javax.xml.validation,\ - javax.xml.xpath,\ - org.ietf.jgss,\ - org.omg.CORBA,\ - org.omg.CORBA_2_3,\ - org.omg.CORBA_2_3.portable,\ - org.omg.CORBA.DynAnyPackage,\ - org.omg.CORBA.ORBPackage,\ - org.omg.CORBA.portable,\ - org.omg.CORBA.TypeCodePackage,\ - org.omg.CosNaming,\ - org.omg.CosNaming.NamingContextExtPackage,\ - org.omg.CosNaming.NamingContextPackage,\ - org.omg.Dynamic,\ - org.omg.DynamicAny,\ - org.omg.DynamicAny.DynAnyFactoryPackage,\ - org.omg.DynamicAny.DynAnyPackage,\ - org.omg.IOP,\ - org.omg.IOP.CodecFactoryPackage,\ - org.omg.IOP.CodecPackage,\ - org.omg.Messaging,\ - org.omg.PortableInterceptor,\ - org.omg.PortableInterceptor.ORBInitInfoPackage,\ - org.omg.PortableServer,\ - org.omg.PortableServer.CurrentPackage,\ - org.omg.PortableServer.POAManagerPackage,\ - org.omg.PortableServer.POAPackage,\ - org.omg.PortableServer.portable,\ - org.omg.PortableServer.ServantLocatorPackage,\ - org.omg.SendingContext,\ - org.omg.stub.java.rmi,\ - org.w3c.dom,\ - org.w3c.dom.bootstrap,\ - org.w3c.dom.events,\ - org.w3c.dom.ls,\ - org.xml.sax,\ - org.xml.sax.ext,\ - org.xml.sax.helpers -org.osgi.framework.bootdelegation = \ - javax.*,\ - org.ietf.jgss,\ - org.omg.*,\ - org.w3c.*,\ - org.xml.*,\ - sun.*,\ - com.sun.* -org.osgi.framework.executionenvironment = \ - OSGi/Minimum-1.0,\ - OSGi/Minimum-1.1,\ - JRE-1.1,\ - J2SE-1.2,\ - J2SE-1.3,\ - J2SE-1.4,\ - J2SE-1.5 -osgi.java.profile.name = J2SE-1.5 diff --git a/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/JavaSE-1.6.profile b/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/JavaSE-1.6.profile deleted file mode 100644 index 816e7c44f4..0000000000 --- a/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/JavaSE-1.6.profile +++ /dev/null @@ -1,185 +0,0 @@ -# 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. -org.osgi.framework.system.packages = \ - javax.accessibility,\ - javax.activation,\ - javax.activity,\ - javax.annotation,\ - javax.annotation.processing,\ - javax.crypto,\ - javax.crypto.interfaces,\ - javax.crypto.spec,\ - javax.imageio,\ - javax.imageio.event,\ - javax.imageio.metadata,\ - javax.imageio.plugins.bmp,\ - javax.imageio.plugins.jpeg,\ - javax.imageio.spi,\ - javax.imageio.stream,\ - javax.jws,\ - javax.jws.soap,\ - javax.lang.model,\ - javax.lang.model.element,\ - javax.lang.model.type,\ - javax.lang.model.util,\ - javax.management,\ - javax.management.loading,\ - javax.management.modelmbean,\ - javax.management.monitor,\ - javax.management.openmbean,\ - javax.management.relation,\ - javax.management.remote,\ - javax.management.remote.rmi,\ - javax.management.timer,\ - javax.naming,\ - javax.naming.directory,\ - javax.naming.event,\ - javax.naming.ldap,\ - javax.naming.spi,\ - javax.net,\ - javax.net.ssl,\ - javax.print,\ - javax.print.attribute,\ - javax.print.attribute.standard,\ - javax.print.event,\ - javax.rmi,\ - javax.rmi.CORBA,\ - javax.rmi.ssl,\ - javax.script,\ - javax.security.auth,\ - javax.security.auth.callback,\ - javax.security.auth.kerberos,\ - javax.security.auth.login,\ - javax.security.auth.spi,\ - javax.security.auth.x500,\ - javax.security.cert,\ - javax.security.sasl,\ - javax.sound.midi,\ - javax.sound.midi.spi,\ - javax.sound.sampled,\ - javax.sound.sampled.spi,\ - javax.sql,\ - javax.sql.rowset,\ - javax.sql.rowset.serial,\ - javax.sql.rowset.spi,\ - javax.swing,\ - javax.swing.border,\ - javax.swing.colorchooser,\ - javax.swing.event,\ - javax.swing.filechooser,\ - javax.swing.plaf,\ - javax.swing.plaf.basic,\ - javax.swing.plaf.metal,\ - javax.swing.plaf.multi,\ - javax.swing.plaf.synth,\ - javax.swing.table,\ - javax.swing.text,\ - javax.swing.text.html,\ - javax.swing.text.html.parser,\ - javax.swing.text.rtf,\ - javax.swing.tree,\ - javax.swing.undo,\ - javax.tools,\ - javax.transaction,\ - javax.transaction.xa,\ - javax.xml,\ - javax.xml.bind,\ - javax.xml.bind.annotation,\ - javax.xml.bind.annotation.adapters,\ - javax.xml.bind.attachment,\ - javax.xml.bind.helpers,\ - javax.xml.bind.util,\ - javax.xml.crypto,\ - javax.xml.crypto.dom,\ - javax.xml.crypto.dsig,\ - javax.xml.crypto.dsig.dom,\ - javax.xml.crypto.dsig.keyinfo,\ - javax.xml.crypto.dsig.spec,\ - javax.xml.datatype,\ - javax.xml.namespace,\ - javax.xml.parsers,\ - javax.xml.soap,\ - javax.xml.stream,\ - javax.xml.stream.events,\ - javax.xml.stream.util,\ - javax.xml.transform,\ - javax.xml.transform.dom,\ - javax.xml.transform.sax,\ - javax.xml.transform.stax,\ - javax.xml.transform.stream,\ - javax.xml.validation,\ - javax.xml.ws,\ - javax.xml.ws.handler,\ - javax.xml.ws.handler.soap,\ - javax.xml.ws.http,\ - javax.xml.ws.soap,\ - javax.xml.ws.spi,\ - javax.xml.xpath,\ - org.ietf.jgss,\ - org.omg.CORBA,\ - org.omg.CORBA_2_3,\ - org.omg.CORBA_2_3.portable,\ - org.omg.CORBA.DynAnyPackage,\ - org.omg.CORBA.ORBPackage,\ - org.omg.CORBA.portable,\ - org.omg.CORBA.TypeCodePackage,\ - org.omg.CosNaming,\ - org.omg.CosNaming.NamingContextExtPackage,\ - org.omg.CosNaming.NamingContextPackage,\ - org.omg.Dynamic,\ - org.omg.DynamicAny,\ - org.omg.DynamicAny.DynAnyFactoryPackage,\ - org.omg.DynamicAny.DynAnyPackage,\ - org.omg.IOP,\ - org.omg.IOP.CodecFactoryPackage,\ - org.omg.IOP.CodecPackage,\ - org.omg.Messaging,\ - org.omg.PortableInterceptor,\ - org.omg.PortableInterceptor.ORBInitInfoPackage,\ - org.omg.PortableServer,\ - org.omg.PortableServer.CurrentPackage,\ - org.omg.PortableServer.POAManagerPackage,\ - org.omg.PortableServer.POAPackage,\ - org.omg.PortableServer.portable,\ - org.omg.PortableServer.ServantLocatorPackage,\ - org.omg.SendingContext,\ - org.omg.stub.java.rmi,\ - org.w3c.dom,\ - org.w3c.dom.bootstrap,\ - org.w3c.dom.events,\ - org.w3c.dom.ls,\ - org.xml.sax,\ - org.xml.sax.ext,\ - org.xml.sax.helpers -org.osgi.framework.bootdelegation = \ - javax.*,\ - org.ietf.jgss,\ - org.omg.*,\ - org.w3c.*,\ - org.xml.*,\ - sun.*,\ - com.sun.* -org.osgi.framework.executionenvironment = \ - OSGi/Minimum-1.0,\ - OSGi/Minimum-1.1,\ - JRE-1.1,\ - J2SE-1.2,\ - J2SE-1.3,\ - J2SE-1.4,\ - J2SE-1.5,\ - JavaSE-1.6 -osgi.java.profile.name = JavaSE-1.6 diff --git a/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/axiom-api-1.2.7.MF b/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/axiom-api-1.2.7.MF deleted file mode 100644 index 41dcb9390e..0000000000 --- a/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/axiom-api-1.2.7.MF +++ /dev/null @@ -1,47 +0,0 @@ -Manifest-Version: 1.0 -Bundle-ManifestVersion: 2 -Bundle-Name: Axiom API -Bundle-SymbolicName: org.apache.ws.commons.axiom.axiom-api -Bundle-Version: 1.2.7 -Bundle-ClassPath: axiom-api-1.2.7.jar -Bundle-Vendor: Apache Software Foundation -Export-Package: org.apache.axiom.attachments, - org.apache.axiom.attachments.impl, - org.apache.axiom.attachments.lifecycle, - org.apache.axiom.attachments.lifecycle.impl, - org.apache.axiom.attachments.utils, - org.apache.axiom.om, - org.apache.axiom.om.ds, - org.apache.axiom.om.ds.custombuilder, - org.apache.axiom.om.impl, - org.apache.axiom.om.impl.builder, - org.apache.axiom.om.impl.exception, - org.apache.axiom.om.impl.serialize, - org.apache.axiom.om.impl.traverse, - org.apache.axiom.om.impl.util, - org.apache.axiom.om.util, - org.apache.axiom.om.xpath, - org.apache.axiom.soap, - org.apache.axiom.soap.impl.builder -Archiver-Version: Plexus Archiver -Build-Jdk: 1.5.0_15 -Bundle-DocURL: http://www.apache.org/ -Bundle-License: http://www.apache.org/licenses/LICENSE-2.0.txt -Built-By: dims -Import-Package: javax.activation, - javax.mail, - javax.mail.internet, - javax.xml.namespace, - javax.xml.stream, - org.apache.axiom.om.impl.dom.factory;resolution:=optional, - org.apache.axiom.om.impl.llom.factory;resolution:=optional, - org.apache.axiom.soap.impl.dom.factory;resolution:=optional, - org.apache.axiom.soap.impl.llom.soap11;resolution:=optional, - org.apache.axiom.soap.impl.llom.soap12;resolution:=optional, - org.apache.commons.logging, - org.jaxen;resolution:=optional, - org.jaxen.saxpath;resolution:=optional, - org.jaxen.util;resolution:=optional, - org.w3c.dom, - org.xml.sax, - org.xml.sax.helpers diff --git a/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/axis2-kernel-1.4.1.MF b/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/axis2-kernel-1.4.1.MF deleted file mode 100644 index 58630c02ef..0000000000 --- a/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/axis2-kernel-1.4.1.MF +++ /dev/null @@ -1,2 +0,0 @@ -Manifest-Version: 1.0 - diff --git a/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-agents-1.3.2.MF b/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-agents-1.3.2.MF deleted file mode 100644 index 17e352ad0f..0000000000 --- a/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-agents-1.3.2.MF +++ /dev/null @@ -1,7 +0,0 @@ -Manifest-Version: 1.0 -Export-Package: org.apache.ode.agents.memory;version="1.3.2" -Bundle-Version: 1.3.2 -Bundle-Name: ode-agents -Bundle-ManifestVersion: 2 -Premain-Class: org.apache.ode.agents.memory.SizingAgent -Bundle-SymbolicName: ode-agents diff --git a/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-bpel-api-1.3.2.MF b/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-bpel-api-1.3.2.MF deleted file mode 100644 index c25ac992e1..0000000000 --- a/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-bpel-api-1.3.2.MF +++ /dev/null @@ -1,58 +0,0 @@ -Manifest-Version: 1.0 -Export-Package: org.apache.ode.bpel.bdi.breaks;version="1.3.2", - org.apache.ode.bpel.common;version="1.3.2"; - uses:="org.apache.ode.utils, - javax.xml.namespace, - org.apache.ode.utils.stl, - org.apache.ode.utils.msg, - org.apache.commons.logging, - org.apache.ode.bpel.pmapi", - org.apache.ode.bpel.evar;version="1.3.2"; - uses:="org.w3c.dom,javax.xml.namespace", - org.apache.ode.bpel.evt;version="1.3.2"; - uses:="org.apache.ode.utils, - javax.xml.namespace, - org.apache.ode.bpel.common, - org.w3c.dom", - org.apache.ode.bpel.explang;version="1.3.2"; - uses:="org.apache.ode.bpel.common, - org.apache.ode.bpel.o, - org.w3c.dom, - javax.xml.namespace, - org.apache.ode.utils.xsd", - org.apache.ode.bpel.iapi;version="1.3.2"; - uses:="javax.wsdl, - javax.xml.namespace, - org.apache.ode.bpel.evt, - org.apache.ode.bpel.bdi.breaks, - org.apache.ode.utils, - org.w3c.dom", - org.apache.ode.bpel.jmx;version="1.3.2"; - uses:="javax.management,org.apache.ode.bpel.evt, - javax.management.openmbean", - org.apache.ode.bpel.pmapi;version="1.3.2"; - uses:="org.apache.ode.bpel.bdi.breaks, - org.apache.ode.bpel.common, - org.apache.ode.bpel.o, - javax.xml.namespace, - org.w3c.dom" -Implementation-Title: Apache ODE -Implementation-Version: 1.3.2 -Bundle-Name: ode-bpel-api -Implementation-Vendor: Apache Software Foundation -Bundle-Version: 1.3.2 -Build-Jdk: 1.6.0_13 -Bundle-ManifestVersion: 2 -Bundle-SymbolicName: ode-bpel-api -Import-Package: javax.management, - javax.management.openmbean, - javax.wsdl, - javax.xml.namespace, - org.apache.commons.logging, - org.apache.ode.bpel.o;version="1.3.2", - org.apache.ode.utils;version="1.3.2", - org.apache.ode.utils.msg;version="1.3.2", - org.apache.ode.utils.stl;version="1.3.2", - org.apache.ode.utils.xsd;version="1.3.2", - org.w3c.dom - diff --git a/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-bpel-compiler-1.3.2.MF b/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-bpel-compiler-1.3.2.MF deleted file mode 100644 index 2a42b9e941..0000000000 --- a/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-bpel-compiler-1.3.2.MF +++ /dev/null @@ -1,170 +0,0 @@ -Manifest-Version: 1.0 -Export-Package: org.apache.ode.bpel.compiler;version="1.3.2"; - uses:="org.apache.ode.bpel.compiler.api, - org.apache.ode.bpel.compiler.bom, - org.apache.ode.bpel.o, - org.apache.ode.utils.msg, - org.apache.commons.logging, - org.apache.ode.utils, - org.w3c.dom, - javax.xml.namespace, - org.apache.ode.utils.xsl, - net.sf.saxon, - org.xml.sax, - javax.xml.transform, - org.apache.ode.utils.stl, - javax.wsdl, - org.apache.ode.utils.xsd, - org.apache.ode.utils.fs, - org.apache.xerces.xni.parser, - javax.xml.transform.dom, - org.apache.ode.bpel.compiler.wsdl, - javax.wsdl.xml, - javax.wsdl.factory, - org.apache.ode.bpel.elang.xpath10.compiler, - javax.wsdl.extensions, - org.apache.xerces.xni", - org.apache.ode.bpel.compiler.api;version="1.3.2"; - uses:="org.apache.ode.utils.msg, - org.apache.ode.bpel.compiler.bom, - org.apache.ode.utils, - org.apache.ode.bpel.o, - javax.wsdl, - javax.xml.namespace", - org.apache.ode.bpel.compiler.bom;version="1.3.2"; - uses:="org.w3c.dom, - javax.xml.namespace, - org.apache.ode.utils.stl, - org.apache.ode.bpel.compiler.api, - org.apache.ode.utils, - javax.wsdl.extensions, - org.apache.commons.logging, - org.xml.sax, - org.apache.xml.utils, - org.xml.sax.helpers", - org.apache.ode.bpel.compiler.wsdl;version="1.3.2"; - uses:="org.apache.ode.utils.msg, - org.apache.ode.bpel.compiler.bom, - javax.wsdl.extensions, - org.apache.ode.utils, - com.ibm.wsdl.util.xml, - org.w3c.dom, - javax.xml.namespace, - javax.wsdl, - org.apache.ode.utils.stl, - javax.wsdl.xml, - javax.wsdl.factory, - com.ibm.wsdl.xml", - org.apache.ode.bpel.elang.xpath10.compiler;version="1.3.2"; - uses:="org.apache.ode.bpel.compiler.api, - org.jaxen, - org.apache.ode.utils.xsl, - org.apache.ode.utils.msg, - javax.xml.namespace, - org.apache.ode.bpel.elang.xpath10.o, - org.apache.ode.utils, - javax.xml.transform, - org.apache.ode.bpel.o, - org.jaxen.expr, - org.apache.ode.bpel.compiler.bom, - net.sf.saxon, - org.jaxen.saxpath.helpers, - org.jaxen.saxpath, - org.w3c.dom, - org.apache.commons.logging, - javax.xml.transform.stream", - org.apache.ode.bpel.elang.xpath20.compiler;version="1.3.2"; - uses:="org.apache.ode.utils, - javax.xml.xpath, - org.apache.ode.bpel.elang.xpath10.compiler, - org.apache.ode.bpel.compiler.api, - org.apache.ode.utils.xsl, - org.apache.ode.bpel.elang.xpath10.o, - javax.xml.transform, - org.apache.ode.bpel.o, - org.apache.ode.bpel.elang.xpath20.o, - javax.xml.namespace, - org.apache.ode.utils.msg, - org.w3c.dom, - net.sf.saxon.xpath, - net.sf.saxon.trans, - net.sf.saxon.expr, - net.sf.saxon.functions, - net.sf.saxon, - org.apache.commons.logging, - org.apache.ode.bpel.compiler.bom, - net.sf.saxon.om", - org.apache.ode.bpel.elang.xquery10.compiler;version="1.3.2"; - uses:="javax.xml.xpath, - org.apache.ode.bpel.elang.xpath20.compiler, - org.apache.ode.utils, - net.sf.saxon.dom, - net.sf.saxon.om, - net.sf.saxon.expr, - org.w3c.dom, - javax.xml.namespace, - org.apache.xml.utils, - org.apache.ode.utils.xsl, - org.apache.commons.logging, - org.apache.ode.utils.msg, - org.apache.ode.bpel.compiler.bom, - org.apache.ode.bpel.elang.xquery10.o, - org.apache.ode.bpel.elang.xpath20.o, - net.sf.saxon, - org.apache.ode.bpel.elang.xpath10.compiler, - org.apache.ode.bpel.compiler.api, - org.apache.ode.bpel.elang.xpath10.o, - javax.xml.transform, - org.apache.ode.bpel.o, - javax.xml.xquery, - net.sf.saxon.xqj" -Implementation-Title: Apache ODE -Implementation-Version: 1.3.2 -Bundle-Name: ode-bpel-compiler -Implementation-Vendor: Apache Software Foundation -Bundle-Version: 1.3.2 -Build-Jdk: 1.6.0_13 -Bundle-ManifestVersion: 2 -Bundle-SymbolicName: ode-bpel-compiler -Import-Package: com.ibm.wsdl.util.xml, - com.ibm.wsdl.xml, - javax.wsdl, - javax.wsdl.extensions, - javax.wsdl.factory, - javax.wsdl.xml, - javax.xml.namespace, - javax.xml.transform, - javax.xml.transform.dom, - javax.xml.transform.stream, - javax.xml.xpath, - javax.xml.xquery, - net.sf.saxon, - net.sf.saxon.dom, - net.sf.saxon.expr, - net.sf.saxon.functions, - net.sf.saxon.om, - net.sf.saxon.trans, - net.sf.saxon.xpath, - net.sf.saxon.xqj, - org.apache.commons.logging, - org.apache.ode.bpel.elang.xpath10.o;version="1.3.2", - org.apache.ode.bpel.elang.xpath20.o;version="1.3.2", - org.apache.ode.bpel.elang.xquery10.o;version="1.3.2", - org.apache.ode.bpel.o;version="1.3.2", - org.apache.ode.utils;version="1.3.2", - org.apache.ode.utils.fs;version="1.3.2", - org.apache.ode.utils.msg;version="1.3.2", - org.apache.ode.utils.stl;version="1.3.2", - org.apache.ode.utils.xsd;version="1.3.2", - org.apache.ode.utils.xsl;version="1.3.2", - org.apache.xerces.xni, - org.apache.xerces.xni.parser, - org.apache.xml.utils, - org.jaxen, - org.jaxen.expr, - org.jaxen.saxpath, - org.jaxen.saxpath.helpers, - org.w3c.dom, - org.xml.sax, - org.xml.sax.helpers - diff --git a/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-bpel-dao-1.3.2.MF b/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-bpel-dao-1.3.2.MF deleted file mode 100644 index 9e6388278b..0000000000 --- a/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-bpel-dao-1.3.2.MF +++ /dev/null @@ -1,23 +0,0 @@ -Manifest-Version: 1.0 -Export-Package: org.apache.ode.bpel.dao;version="1.3.2"; - uses:="org.w3c.dom, - org.apache.ode.bpel.common, - org.apache.ode.bpel.evt, - javax.xml.namespace, - javax.sql, - org.apache.ode.bpel.iapi" -Implementation-Title: Apache ODE -Implementation-Version: 1.3.2 -Bundle-Name: ode-bpel-dao -Implementation-Vendor: Apache Software Foundation -Bundle-Version: 1.3.2 -Build-Jdk: 1.6.0_13 -Bundle-ManifestVersion: 2 -Bundle-SymbolicName: ode-bpel-dao -Import-Package: javax.sql, - javax.xml.namespace, - org.apache.ode.bpel.common;version="1.3.2", - org.apache.ode.bpel.evt;version="1.3.2", - org.apache.ode.bpel.iapi;version="1.3.2", - org.w3c.dom - diff --git a/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-bpel-epr-1.3.2.MF b/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-bpel-epr-1.3.2.MF deleted file mode 100644 index 4159636f83..0000000000 --- a/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-bpel-epr-1.3.2.MF +++ /dev/null @@ -1,79 +0,0 @@ -Manifest-Version: 1.0 -Export-Package: org.apache.ode.bpel.common.evt;version="1.3.2"; - uses:="org.apache.commons.logging, - org.apache.ode.bpel.iapi, - org.apache.ode.bpel.evt, - org.apache.commons.lang", - org.apache.ode.bpel.epr;version="1.3.2"; - uses:="org.apache.commons.logging, - org.apache.ode.utils, - org.w3c.dom, - javax.xml.namespace, - org.apache.ode.bpel.iapi", - org.apache.ode.il;version="1.3.2"; - uses:="javax.xml.stream, - org.apache.commons.logging, - org.apache.xmlbeans, - org.apache.ode.bpel.pmapi, - org.apache.axiom.om.impl.builder, - org.w3c.dom, - javax.xml.namespace, - org.apache.axiom.om, - javax.transaction, - org.apache.geronimo.transaction.manager, - org.apache.ode.bpel.iapi, - javax.xml.transform, - org.apache.ode.utils", - org.apache.ode.il.config;version="1.3.2"; - uses:="org.apache.commons.logging,org.apache.ode.utils", - org.apache.ode.il.dbutil;version="1.3.2"; - uses:="org.apache.ode.il.config, - org.apache.geronimo.connector.outbound.connectionmanagerconfig, - javax.naming, - org.apache.ode.utils.msg, - org.apache.commons.logging, - org.apache.ode.bpel.dao, - org.apache.geronimo.connector.outbound.connectiontracking, - javax.resource.spi, - javax.sql, - org.apache.ode.utils, - javax.transaction, - org.apache.derby.jdbc, - org.apache.geronimo.transaction.manager, - org.apache.geronimo.connector.outbound, - org.tranql.connector.jdbc" -Implementation-Title: Apache ODE -Implementation-Version: 1.3.2 -Bundle-Name: ode-bpel-epr -Implementation-Vendor: Apache Software Foundation -Bundle-Version: 1.3.2 -Build-Jdk: 1.6.0_13 -Bundle-ManifestVersion: 2 -Bundle-SymbolicName: ode-bpel-epr -Import-Package: javax.naming, - javax.resource.spi, - javax.sql, - javax.transaction;version="1.1", - javax.xml.namespace, - javax.xml.stream, - javax.xml.transform, - org.apache.axiom.om, - org.apache.axiom.om.impl.builder, - org.apache.commons.lang, - org.apache.commons.logging, - org.apache.derby.jdbc, - org.apache.geronimo.connector.outbound, - org.apache.geronimo.connector.outbound.connectionmanagerconfig, - org.apache.geronimo.connector.outbound.connectiontracking, - org.apache.geronimo.transaction.manager, - org.apache.ode.bpel.dao;version="1.3.2", - org.apache.ode.dao.jpa;version="1.3.2", - org.apache.ode.bpel.evt;version="1.3.2", - org.apache.ode.bpel.iapi;version="1.3.2", - org.apache.ode.bpel.pmapi;version="1.3.2", - org.apache.ode.utils, - org.apache.ode.utils.msg, - org.apache.xmlbeans, - org.tranql.connector.jdbc, - org.w3c.dom - diff --git a/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-bpel-obj-1.3.2.MF b/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-bpel-obj-1.3.2.MF deleted file mode 100644 index 862d40c55f..0000000000 --- a/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-bpel-obj-1.3.2.MF +++ /dev/null @@ -1,40 +0,0 @@ -Manifest-Version: 1.0 -Export-Package: org.apache.ode.bpel.elang.xpath10.o;version="1.3.2"; - uses:="org.apache.ode.bpel.o, - org.apache.ode.utils, - javax.xml.namespace", - org.apache.ode.bpel.elang.xpath20.o;version="1.3.2"; - uses:="org.apache.ode.bpel.elang.xpath10.o, - org.apache.ode.bpel.o, - net.sf.saxon.expr, - javax.xml.namespace", - org.apache.ode.bpel.elang.xquery10.o;version="1.3.2"; - uses:="org.apache.ode.bpel.o, - org.apache.ode.bpel.elang.xpath20.o, - javax.xml.namespace", - org.apache.ode.bpel.o;version="1.3.2"; - uses:="javax.xml.namespace, - org.apache.ode.utils, - org.w3c.dom, - org.xml.sax, - javax.wsdl, - org.apache.ode.utils.stl" -Implementation-Title: Apache ODE -Implementation-Version: 1.3.2 -Bundle-Name: ode-bpel-obj -Implementation-Vendor: Apache Software Foundation -Bundle-Version: 1.3.2 -Build-Jdk: 1.6.0_13 -Bundle-ManifestVersion: 2 -Bundle-SymbolicName: ode-bpel-obj -Import-Package: javax.wsdl, - javax.xml.namespace, - com.ibm.wsdl.util.xml, - com.ibm.wsdl.xml, - com.ibm.wsdl, - net.sf.saxon.expr, - org.apache.ode.utils;version="1.3.2", - org.apache.ode.utils.stl;version="1.3.2", - org.w3c.dom, - org.xml.sax - diff --git a/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-bpel-runtime-1.3.2.MF b/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-bpel-runtime-1.3.2.MF deleted file mode 100644 index 15dc8ebe30..0000000000 --- a/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-bpel-runtime-1.3.2.MF +++ /dev/null @@ -1,256 +0,0 @@ -Manifest-Version: 1.0 -Export-Package: org.apache.ode.bpel.elang.xpath10.runtime;version="1.3.2"; - uses:="org.jaxen.dom, - org.w3c.dom, - org.apache.commons.logging, - org.apache.ode.bpel.common, - org.apache.ode.bpel.elang.xpath10.o, - org.apache.ode.bpel.explang, - org.jaxen, - org.apache.ode.bpel.o, - org.apache.ode.utils.xsl, - javax.xml.transform.dom, - javax.xml.namespace, - javax.xml.transform, - org.apache.ode.utils, - net.sf.saxon.dom, - org.apache.ode.utils.xsd, - net.sf.saxon, - org.apache.ode.utils.fs, - javax.xml.transform.stream", - org.apache.ode.bpel.elang.xpath20.runtime;version="1.3.2"; - uses:="javax.xml.xpath, - org.apache.ode.bpel.common, - org.apache.ode.utils, - javax.xml.namespace, - org.w3c.dom, - org.apache.commons.httpclient, - org.apache.commons.logging, - net.sf.saxon.value, - org.apache.ode.bpel.elang.xpath20.o, - org.apache.ode.bpel.explang, - net.sf.saxon.dom, - org.apache.ode.bpel.o, - net.sf.saxon.type, - javax.xml.transform, - org.apache.ode.utils.xsl, - javax.xml.transform.dom, - org.apache.ode.bpel.elang.xpath10.o, - net.sf.saxon.trans, - org.apache.ode.utils.xsd, - net.sf.saxon, - org.apache.ode.bpel.elang.xpath20.compiler, - net.sf.saxon.xpath, - net.sf.saxon.pattern, - net.sf.saxon.om, - net.sf.saxon.expr, - org.apache.ode.utils.fs, - javax.xml.transform.stream", - org.apache.ode.bpel.elang.xquery10.runtime;version="1.3.2"; - uses:="javax.xml.xpath, - org.apache.ode.utils, - net.sf.saxon.dom, - org.apache.ode.bpel.elang.xpath20.runtime, - net.sf.saxon.om, - net.sf.saxon.expr, - org.w3c.dom, - javax.xml.namespace, - org.apache.ode.utils.xsl, - net.sf.saxon.value, - org.apache.commons.logging, - org.apache.ode.utils.xsd, - org.apache.ode.bpel.common, - net.sf.saxon.trans, - org.apache.ode.bpel.elang.xquery10.o, - org.apache.ode.bpel.elang.xpath20.o, - net.sf.saxon, - org.apache.ode.bpel.elang.xpath10.o, - org.apache.ode.bpel.elang.xpath20.compiler, - javax.xml.transform, - org.apache.ode.bpel.explang, - org.apache.ode.bpel.o, - javax.xml.xquery, - net.sf.saxon.xqj", - org.apache.ode.bpel.engine;version="1.3.2"; - uses:="org.apache.ode.bpel.dao, - org.apache.commons.logging, - org.apache.ode.bpel.iapi, - javax.xml.namespace, - org.apache.ode.utils.msg, - org.apache.ode.bpel.runtime, - org.w3c.dom, - javax.wsdl, - org.apache.ode.utils, - org.apache.ode.bpel.intercept, - org.apache.ode.bpel.o, - org.apache.ode.bpel.evt, - org.apache.ode.bpel.common, - org.apache.ode.bpel.pmapi, - org.apache.ode.bpel.bdi.breaks, - org.apache.ode.bpel.runtime.breaks, - org.apache.ode.utils.uuid, - org.apache.ode.jacob.soup, - org.apache.ode.bpel.engine.extvar, - org.apache.ode.bpel.runtime.channels, - org.apache.ode.agents.memory, - org.apache.ode.bpel.explang, - org.apache.ode.jacob, - org.apache.ode.bpel.evar, - org.apache.ode.bpel.memdao, - org.apache.ode.jacob.vpu, - org.apache.ode.utils.stl, - org.apache.ode.utils.xsl, - org.apache.ode.bpel.engine.migration, - org.apache.commons.collections.comparators, - org.apache.xmlbeans, - org.apache.ode.bpel.evtproc, - javax.management", - org.apache.ode.bpel.engine.extvar;version="1.3.2"; - uses:="org.w3c.dom, - javax.xml.namespace, - org.apache.ode.utils, - org.apache.ode.bpel.iapi, - org.apache.ode.bpel.evar, - org.apache.commons.logging, - org.apache.ode.bpel.o", - org.apache.ode.bpel.engine.migration;version="1.3.2"; - uses:="org.apache.commons.logging, - org.apache.ode.bpel.dao, - org.apache.ode.bpel.engine, - org.apache.ode.bpel.common, - org.apache.ode.bpel.iapi, - org.apache.ode.bpel.o, - javax.xml.namespace, - javax.wsdl, - org.apache.ode.bpel.runtime, - org.apache.ode.jacob.soup, - org.apache.ode.jacob.vpu, - javax.sql, - org.apache.ode.utils", - org.apache.ode.bpel.evtproc;version="1.3.2"; - uses:="org.apache.ode.bpel.pmapi, - org.apache.ode.bpel.iapi, - org.apache.ode.bpel.evt", - org.apache.ode.bpel.extvar.jdbc;version="1.3.2"; - uses:="org.apache.ode.utils, - org.apache.ode.bpel.evar, - javax.xml.namespace, - org.w3c.dom, - org.apache.commons.logging, - javax.sql, - javax.naming", - org.apache.ode.bpel.intercept;version="1.3.2"; - uses:="org.apache.ode.bpel.iapi, - javax.xml.namespace, - org.apache.ode.bpel.dao, - org.apache.ode.bpel.engine", - org.apache.ode.bpel.memdao;version="1.3.2"; - uses:="org.apache.ode.bpel.dao, - javax.sql, - org.apache.ode.bpel.iapi, - org.apache.ode.bpel.common, - org.apache.ode.utils.stl, - org.apache.ode.bpel.evt, - org.apache.commons.logging, - javax.xml.namespace, - org.apache.ode.utils, - org.w3c.dom", - org.apache.ode.bpel.runtime;version="1.3.2"; - uses:="org.apache.ode.bpel.o, - org.apache.ode.jacob, - org.apache.commons.logging, - org.apache.ode.bpel.common, - org.apache.ode.bpel.explang, - org.apache.ode.bpel.evar, - org.apache.ode.bpel.runtime.channels, - org.w3c.dom, - org.apache.ode.bpel.evt, - javax.xml.namespace, - org.apache.ode.utils.msg, - org.apache.ode.utils, - org.apache.ode.jacob.vpu, - javax.wsdl, - org.apache.ode.utils.xsd, - org.apache.ode.utils.stl, - org.apache.ode.bpel.iapi", - org.apache.ode.bpel.runtime.breaks;version="1.3.2"; - uses:="org.apache.ode.bpel.bdi.breaks, - org.apache.ode.bpel.evt", - org.apache.ode.bpel.runtime.channels;version="1.3.2"; - uses:="org.apache.ode.jacob, - org.apache.commons.logging, - org.apache.ode.utils, - org.apache.ode.bpel.o, - org.w3c.dom, - javax.xml.namespace", - org.apache.ode.bpel.runtime.explang.konst;version="1.3.2"; - uses:="org.apache.ode.utils.xsd, - org.apache.ode.bpel.common, - org.apache.ode.bpel.explang, - org.apache.ode.bpel.o, - org.w3c.dom", - org.apache.ode.bpel.runtime.monitor;version="1.3.2"; - uses:="org.apache.ode.bpel.common, - org.apache.ode.bpel.o", - org.apache.ode.bpel.runtime.msgs;version="1.3.2"; - uses:="org.apache.ode.utils.msg" -Implementation-Title: Apache ODE -Implementation-Version: 1.3.2 -Bundle-Name: ode-bpel-runtime -Implementation-Vendor: Apache Software Foundation -Bundle-Version: 1.3.2 -Build-Jdk: 1.6.0_13 -Bundle-ManifestVersion: 2 -Bundle-SymbolicName: ode-bpel-runtime -Import-Package: javax.management, - javax.naming, - javax.sql, - javax.wsdl, - javax.xml.namespace, - javax.xml.transform, - javax.xml.transform.dom, - javax.xml.transform.stream, - javax.xml.xpath, - javax.xml.xquery, - net.sf.saxon, - net.sf.saxon.dom, - net.sf.saxon.expr, - net.sf.saxon.om, - net.sf.saxon.pattern, - net.sf.saxon.trans, - net.sf.saxon.type, - net.sf.saxon.value, - net.sf.saxon.xpath, - net.sf.saxon.xqj, - org.apache.commons.collections.comparators, - org.apache.commons.httpclient, - org.apache.commons.logging, - org.apache.ode.agents.memory;version="1.3.2", - org.apache.ode.bpel.bdi.breaks;version="1.3.2", - org.apache.ode.bpel.common;version="1.3.2", - org.apache.ode.bpel.dao;version="1.3.2", - org.apache.ode.bpel.elang.xpath10.o;version="1.3.2", - org.apache.ode.bpel.elang.xpath20.compiler;version="1.3.2", - org.apache.ode.bpel.elang.xpath20.o;version="1.3.2", - org.apache.ode.bpel.elang.xquery10.o;version="1.3.2", - org.apache.ode.bpel.evar;version="1.3.2", - org.apache.ode.bpel.evt;version="1.3.2", - org.apache.ode.bpel.explang;version="1.3.2", - org.apache.ode.bpel.iapi;version="1.3.2", - org.apache.ode.bpel.o;version="1.3.2", - org.apache.ode.bpel.pmapi;version="1.3.2", - org.apache.ode.jacob;version="1.3.2", - org.apache.ode.jacob.soup;version="1.3.2", - org.apache.ode.jacob.vpu;version="1.3.2", - org.apache.ode.utils;version="1.3.2", - org.apache.ode.utils.fs;version="1.3.2", - org.apache.ode.utils.msg;version="1.3.2", - org.apache.ode.utils.stl;version="1.3.2", - org.apache.ode.utils.uuid;version="1.3.2", - org.apache.ode.utils.xsd;version="1.3.2", - org.apache.ode.utils.xsl;version="1.3.2", - org.apache.xmlbeans, - org.jaxen, - org.jaxen.dom, - org.w3c.dom - diff --git a/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-bpel-schemas-1.3.2.MF b/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-bpel-schemas-1.3.2.MF deleted file mode 100644 index 82f4a2732a..0000000000 --- a/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-bpel-schemas-1.3.2.MF +++ /dev/null @@ -1,40 +0,0 @@ -Manifest-Version: 1.0 -Export-Package: org.apache.ode.bpel.dd;version="1.3.2"; - uses:="javax.xml.stream, - org.apache.xmlbeans, - org.w3c.dom, - org.apache.xmlbeans.xml.stream, - javax.xml.namespace", - org.apache.ode.bpel.dd.impl;version="1.3.2"; - uses:="org.apache.xmlbeans.impl.values, - org.apache.xmlbeans, - org.apache.ode.bpel.dd, - javax.xml.namespace", - org.apache.ode.bpel.pmapi;version="1.3.2"; - uses:="javax.xml.stream, - org.apache.xmlbeans, - org.w3c.dom, - org.apache.xmlbeans.xml.stream, - javax.xml.namespace", - org.apache.ode.bpel.pmapi.impl;version="1.3.2"; - uses:="org.apache.xmlbeans.impl.values, - org.apache.xmlbeans, - org.apache.ode.bpel.pmapi, - javax.xml.namespace" -Private-Package: . -Implementation-Title: Apache ODE -Implementation-Version: 1.3.2 -Bundle-Name: ode-bpel-schemas -Implementation-Vendor: Apache Software Foundation -Bundle-Version: 1.3.2 -Build-Jdk: 1.6.0_13 -Bundle-ManifestVersion: 2 -Import-Package: javax.xml.namespace, - javax.xml.stream, - org.apache.xmlbeans, - org.apache.xmlbeans.impl.values, - org.apache.xmlbeans.xml.stream, - org.w3c.dom -Bundle-SymbolicName: ode-bpel-schemas -Fragment-Host: ode-bpel-compiler;version="1.3.2" - diff --git a/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-bpel-store-1.3.2.MF b/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-bpel-store-1.3.2.MF deleted file mode 100644 index 5e15e872e5..0000000000 --- a/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-bpel-store-1.3.2.MF +++ /dev/null @@ -1,97 +0,0 @@ -Manifest-Version: 1.0 -Export-Package: org.apache.ode.store;version="1.3.2"; - uses:="javax.xml.namespace, - org.apache.commons.logging, - org.apache.ode.bpel.compiler, - org.apache.ode.utils, - javax.wsdl.factory, - org.apache.xmlbeans, - org.apache.ode.utils.fs, - org.apache.ode.bpel.iapi, - javax.wsdl, - org.apache.ode.bpel.compiler.wsdl, - javax.wsdl.xml, - org.apache.ode.bpel.dd, - org.apache.ode.bpel.o, - org.apache.xerces.xni.parser, - org.apache.xerces.xni, - org.apache.ode.bpel.compiler.api, - org.apache.ode.utils.msg, - org.w3c.dom, - org.apache.ode.bpel.evt, - org.hsqldb.jdbc, - org.apache.ode.store.hib, - org.apache.ode.il.config, - javax.sql, - org.apache.ode.store.jpa", - org.apache.ode.store.hib;version="1.3.2"; - uses:="org.apache.ode.store, - org.apache.commons.logging, - org.hibernate, - javax.xml.namespace, - org.hibernate.connection, - javax.sql, - org.apache.ode.utils.msg, - org.hibernate.cfg, - org.apache.ode.bpel.iapi, - org.hibernate.dialect, - org.hibernate.classic, - org.apache.ode.daohib, - org.apache.ode.utils, - javax.transaction, - org.apache.ode.utils.stl", - org.apache.ode.store.jpa;version="1.3.2"; - uses:="org.apache.ode.store, - org.apache.commons.logging, - javax.persistence, - javax.sql, - javax.transaction, - org.apache.ode.dao.jpa, - org.apache.ode.utils.stl, - javax.xml.namespace, - org.apache.openjpa.util, - org.apache.ode.bpel.iapi, - org.apache.openjpa.enhance" -Implementation-Title: Apache ODE -Implementation-Version: 1.3.2 -Bundle-Name: ode-bpel-store -Implementation-Vendor: Apache Software Foundation -Bundle-Version: 1.3.2 -Build-Jdk: 1.6.0_13 -Bundle-ManifestVersion: 2 -Bundle-SymbolicName: ode-bpel-store -Import-Package: javax.persistence, - javax.sql, - javax.transaction;version="1.1", - javax.wsdl, - javax.wsdl.factory, - javax.wsdl.xml, - javax.xml.namespace, - org.apache.commons.logging, - org.apache.ode.bpel.compiler;version="1.3.2", - org.apache.ode.bpel.compiler.api;version="1.3.2", - org.apache.ode.bpel.compiler.wsdl;version="1.3.2", - org.apache.ode.bpel.dd;version="1.3.2", - org.apache.ode.bpel.evt;version="1.3.2", - org.apache.ode.bpel.iapi;version="1.3.2", - org.apache.ode.bpel.o;version="1.3.2", - org.apache.ode.dao.jpa;version="1.3.2", - org.apache.ode.daohib;resolution:=optional, - org.apache.ode.il.config;version="1.3.2", - org.apache.ode.utils;version="1.3.2", - org.apache.ode.utils.fs;version="1.3.2", - org.apache.ode.utils.msg;version="1.3.2", - org.apache.ode.utils.stl;version="1.3.2", - org.apache.openjpa.enhance, - org.apache.openjpa.util, - org.apache.xerces.xni, - org.apache.xerces.xni.parser, - org.apache.xmlbeans, - org.hibernate;resolution:=optional, - org.hibernate.cfg;resolution:=optional, - org.hibernate.classic;resolution:=optional, - org.hibernate.connection;resolution:=optional, - org.hibernate.dialect;resolution:=optional, - org.hsqldb.jdbc;resolution:=optional, - org.w3c.dom - diff --git a/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-dao-hibernate-1.3.2.MF b/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-dao-hibernate-1.3.2.MF deleted file mode 100644 index 7621f3c99f..0000000000 --- a/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-dao-hibernate-1.3.2.MF +++ /dev/null @@ -1,83 +0,0 @@ -Manifest-Version: 1.0 -Export-Package: org.apache.ode.daohib;version="1.3.2"; - uses:="org.hibernate.connection, - org.hibernate, - org.apache.ode.utils, - javax.transaction, - org.hibernate.transaction, - org.hibernate.classic, - org.apache.commons.logging, - javax.sql, - org.hibernate.cfg, - org.apache.ode.utils.uuid, - org.apache.ode.daohib.bpel.hobj", - org.apache.ode.daohib.bpel;version="1.3.2"; - uses:="org.apache.ode.bpel.dao, - org.apache.ode.daohib, - org.apache.ode.utils, - org.apache.ode.daohib.bpel.hobj, - org.w3c.dom, - org.xml.sax, - org.hibernate.dialect, - org.apache.commons.logging, - org.hibernate, - javax.sql, - javax.transaction, - org.apache.ode.bpel.common, - org.apache.ode.utils.stl, - org.apache.ode.bpel.evt, - org.apache.ode.ql.tree, - org.apache.ode.ql.tree.nodes, - javax.xml.namespace, - org.hibernate.criterion, - org.apache.ode.ql.eval.skel, - org.apache.ode.daohib.bpel.ql, - org.apache.ode.bpel.iapi, - org.hibernate.transform", - org.apache.ode.daohib.bpel.hobj;version="1.3.2"; - uses:="javax.xml.namespace", - org.apache.ode.daohib.bpel.ql;version="1.3.2"; - uses:="org.hibernate, - org.hibernate.criterion, - org.apache.ode.daohib.bpel.hobj, - org.apache.ode.ql.tree.nodes, - org.apache.ode.ql.eval.skel, - org.apache.commons.lang, - org.apache.ode.ql.tree, - org.apache.ode.ql, - org.apache.ode.utils" -Implementation-Title: Apache ODE -Implementation-Version: 1.3.2 -Bundle-Name: ode-dao-hibernate -Implementation-Vendor: Apache Software Foundation -Bundle-Version: 1.3.2 -Build-Jdk: 1.6.0_13 -Bundle-ManifestVersion: 2 -Bundle-SymbolicName: ode-dao-hibernate -Import-Package: javax.sql, - javax.transaction;version="1.1", - javax.xml.namespace, - org.apache.commons.lang, - org.apache.commons.logging, - org.apache.ode.bpel.common;version="1.3.2", - org.apache.ode.bpel.dao;version="1.3.2", - org.apache.ode.bpel.evt;version="1.3.2", - org.apache.ode.bpel.iapi;version="1.3.2", - org.apache.ode.ql;version="1.3.2", - org.apache.ode.ql.eval.skel;version="1.3.2", - org.apache.ode.ql.tree;version="1.3.2", - org.apache.ode.ql.tree.nodes;version="1.3.2", - org.apache.ode.utils;version="1.3.2", - org.apache.ode.utils.stl;version="1.3.2", - org.apache.ode.utils.uuid;version="1.3.2", - org.hibernate;resolution:=optional, - org.hibernate.cfg;resolution:=optional, - org.hibernate.classic;resolution:=optional, - org.hibernate.connection;resolution:=optional, - org.hibernate.criterion;resolution:=optional, - org.hibernate.dialect;resolution:=optional, - org.hibernate.transaction;resolution:=optional, - org.hibernate.transform;resolution:=optional, - org.w3c.dom, - org.xml.sax - diff --git a/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-dao-jpa-1.3.2.MF b/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-dao-jpa-1.3.2.MF deleted file mode 100644 index a0cf9a138b..0000000000 --- a/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-dao-jpa-1.3.2.MF +++ /dev/null @@ -1,44 +0,0 @@ -Manifest-Version: 1.0 -Export-Package: org.apache.ode.dao.jpa;version="1.3.2"; - uses:="org.apache.ode.bpel.dao, - org.apache.ode.utils, - org.apache.openjpa.util, - org.apache.openjpa.enhance, - javax.persistence, - org.w3c.dom, - javax.transaction, - org.apache.commons.logging, - javax.sql, - org.apache.ode.bpel.common, - javax.xml.namespace, - org.apache.openjpa.persistence, - org.apache.ode.bpel.evt, - org.apache.openjpa.ee, - org.apache.ode.utils.uuid, - org.apache.ode.bpel.iapi" -Implementation-Title: Apache ODE -Implementation-Version: 1.3.2 -Bundle-Name: ode-dao-jpa -Implementation-Vendor: Apache Software Foundation -Bundle-Version: 1.3.2 -Build-Jdk: 1.6.0_13 -Bundle-ManifestVersion: 2 -Bundle-SymbolicName: ode-dao-jpa -Import-Package: javax.persistence, - javax.sql, - javax.transaction;version="1.1", - javax.xml.namespace, - org.apache.commons.logging, - org.apache.ode.bpel.common;version="1.3.2", - org.apache.ode.bpel.dao;version="1.3.2", - org.apache.ode.bpel.evt;version="1.3.2", - org.apache.ode.bpel.iapi;version="1.3.2", - org.apache.ode.utils;version="1.3.2", - org.apache.ode.utils.uuid;version="1.3.2", - org.apache.openjpa.ee, - org.apache.openjpa.enhance, - org.apache.openjpa.persistence, - org.apache.openjpa.util, - org.w3c.dom -Eclipse-RegisterBuddy: org.apache.openjpa.openjpa - diff --git a/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-jacob-1.3.2.MF b/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-jacob-1.3.2.MF deleted file mode 100644 index da2344cd8d..0000000000 --- a/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-jacob-1.3.2.MF +++ /dev/null @@ -1,46 +0,0 @@ -Manifest-Version: 1.0 -Export-Package: org.apache.ode.jacob;version="1.3.2"; - uses:="org.apache.commons.logging, - org.apache.ode.jacob.vpu,org.apache.ode.utils", - org.apache.ode.jacob.classgen.testtypes;version="1.3.2", - org.apache.ode.jacob.examples.cell;version="1.3.2"; - uses:="org.apache.ode.jacob, - org.apache.commons.logging", - org.apache.ode.jacob.examples.eratosthenes;version="1.3.2"; - uses:="org.apache.ode.jacob, - org.apache.commons.logging, - org.apache.ode.jacob.soup, - org.apache.ode.jacob.vpu", - org.apache.ode.jacob.examples.sequence;version="1.3.2"; - uses:="org.apache.ode.jacob", - org.apache.ode.jacob.examples.synch;version="1.3.2"; - uses:="org.apache.ode.jacob, - org.apache.commons.logging, - org.apache.ode.jacob.soup, - org.apache.ode.jacob.vpu", - org.apache.ode.jacob.soup;version="1.3.2"; - uses:="org.apache.ode.utils, - org.apache.ode.jacob", - org.apache.ode.jacob.vpu;version="1.3.2"; - uses:="org.apache.ode.jacob, - org.apache.ode.jacob.soup, - org.apache.ode.utils, - org.apache.commons.logging, - org.apache.ode.utils.msg" -Implementation-Title: Apache ODE -Implementation-Version: 1.3.2 -Bundle-Name: ode-jacob -Implementation-Vendor: Apache Software Foundation -Bundle-Version: 1.3.2 -Build-Jdk: 1.6.0_13 -Bundle-ManifestVersion: 2 -Bundle-SymbolicName: ode-jacob -Import-Package: org.apache.commons.logging, - org.apache.ode.utils;version="1.3.2", - org.apache.ode.utils.msg;version="1.3.2", - org.apache.ode.bpel.common;version="1.3.2", - org.apache.ode.bpel.o;version="1.3.2", - org.apache.ode.bpel.engine;version="1.3.2", - org.apache.ode.bpel.runtime.channels;version="1.3.2", - org.apache.ode.bpel.runtime;version="1.3.2" - diff --git a/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-jacob-ap-1.3.2.MF b/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-jacob-ap-1.3.2.MF deleted file mode 100644 index 5bacdc2f0f..0000000000 --- a/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-jacob-ap-1.3.2.MF +++ /dev/null @@ -1,19 +0,0 @@ -Manifest-Version: 1.0 -Export-Package: org.apache.ode.jacob.ap;version="1.3.2"; - uses:="com.sun.mirror.declaration, - com.sun.mirror.type, - com.sun.mirror.apt, - com.sun.mirror.util" -Implementation-Title: Apache ODE -Implementation-Version: 1.3.2 -Bundle-Name: ode-jacob-ap -Implementation-Vendor: Apache Software Foundation -Bundle-Version: 1.3.2 -Build-Jdk: 1.6.0_13 -Bundle-ManifestVersion: 2 -Bundle-SymbolicName: ode-jacob-ap -Import-Package: com.sun.mirror.apt;resolution:=optional, - com.sun.mirror.declaration;resolution:=optional, - com.sun.mirror.type;resolution:=optional, - com.sun.mirror.util;resolution:=optional - diff --git a/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-scheduler-simple-1.3.2.MF b/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-scheduler-simple-1.3.2.MF deleted file mode 100644 index 3154af5838..0000000000 --- a/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-scheduler-simple-1.3.2.MF +++ /dev/null @@ -1,24 +0,0 @@ -Manifest-Version: 1.0 -Export-Package: org.apache.ode.scheduler.simple;version="1.3.2"; - uses:="org.apache.commons.logging, - javax.sql, - org.apache.ode.utils, - org.apache.ode.utils.stl, - javax.transaction, - org.apache.ode.bpel.iapi" -Private-Package: . -Implementation-Title: Apache ODE -Implementation-Version: 1.3.2 -Bundle-Name: ode-scheduler-simple -Implementation-Vendor: Apache Software Foundation -Bundle-Version: 1.3.2 -Build-Jdk: 1.6.0_13 -Bundle-ManifestVersion: 2 -Import-Package: javax.sql, - javax.transaction;version="1.1", - org.apache.commons.logging, - org.apache.ode.bpel.iapi;version="1.3.2", - org.apache.ode.utils;version="1.3.2", - org.apache.ode.utils.stl;version="1.3.2" -Bundle-SymbolicName: ode-scheduler-simple - diff --git a/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-utils-1.3.2.MF b/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-utils-1.3.2.MF deleted file mode 100644 index 687d102cd9..0000000000 --- a/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/ode-utils-1.3.2.MF +++ /dev/null @@ -1,134 +0,0 @@ -Manifest-Version: 1.0 -Export-Package: org.apache.ode.utils;version="1.3.2"; - uses:="org.apache.commons.logging, - javax.xml.parsers, - javax.xml.transform.dom, - org.w3c.dom, - javax.xml.namespace, - org.xml.sax, - javax.xml.stream, - org.w3c.dom.ls, - javax.xml.transform, - javax.xml.transform.stream, - org.apache.xml.serialize, - org.apache.xerces.dom, - net.sf.saxon.om, - javax.xml.transform.sax, - org.apache.ode.utils.sax, - org.apache.commons.collections.map, - javax.sql, - org.apache.ode.utils.stl, - org.apache.axis2.util, - org.apache.axis2.transport.http, - org.apache.axis2.client, - org.apache.commons.httpclient.params, - org.apache.commons.httpclient, - org.apache.commons.httpclient.util, - org.apache.ode.utils.msg, - org.apache.xerces.jaxp, - org.apache.xerces.parsers", - org.apache.ode.utils.cli;version="1.3.2"; - uses:="org.apache.ode.utils.fs, - org.apache.ode.utils.msg, - org.apache.log4j, - org.apache.ode.utils", - org.apache.ode.utils.fs;version="1.3.2"; - uses:="org.apache.commons.logging, - org.apache.ode.utils", - org.apache.ode.utils.http;version="1.3.2", - org.apache.ode.utils.jmx;version="1.3.2"; - uses:="javax.management, - org.apache.commons.logging, - org.apache.ode.utils", - org.apache.ode.utils.msg;version="1.3.2", - org.apache.ode.utils.rmi;version="1.3.2"; - uses:="org.apache.commons.logging", - org.apache.ode.utils.sax;version="1.3.2"; - uses:="org.xml.sax, - org.apache.commons.logging, - org.apache.ode.utils.msg", - org.apache.ode.utils.stl;version="1.3.2", - org.apache.ode.utils.trax;version="1.3.2"; - uses:="org.apache.commons.logging, - javax.xml.transform", - org.apache.ode.utils.uuid;version="1.3.2"; - uses:="org.apache.ode.utils", - org.apache.ode.utils.wsdl;version="1.3.2"; - uses:="org.apache.ode.utils.msg, - org.w3c.dom, - javax.xml.namespace, - javax.wsdl.extensions.http, - org.apache.ode.utils.stl, - javax.wsdl.extensions.soap, - javax.wsdl, - javax.wsdl.extensions.mime, - javax.wsdl.extensions, - org.apache.ode.utils", - org.apache.ode.utils.xml.capture;version="1.3.2"; - uses:="org.xml.sax, - org.apache.commons.logging, - org.apache.ode.utils", - org.apache.ode.utils.xsd;version="1.3.2"; - uses:="org.apache.commons.logging, - org.apache.ode.utils, - org.apache.ode.utils.fs, - org.apache.xerces.xni, - org.apache.xerces.xni.parser, - org.apache.ode.utils.msg, - javax.xml.namespace, - org.apache.xerces.xs, - org.w3c.dom.ls, - org.apache.xerces.dom, - org.w3c.dom, - org.apache.xerces.impl.xs", - org.apache.ode.utils.xsl;version="1.3.2"; - uses:="org.apache.commons.collections.map, - javax.xml.transform, - javax.xml.transform.stream, - javax.xml.transform.dom, - org.w3c.dom, - javax.xml.namespace" -Implementation-Title: Apache ODE -Implementation-Version: 1.3.2 -Bundle-Name: ode-utils -Implementation-Vendor: Apache Software Foundation -Bundle-Version: 1.3.2 -Build-Jdk: 1.6.0_13 -Bundle-ManifestVersion: 2 -Bundle-SymbolicName: ode-utils -Import-Package: javax.management, - javax.sql, - javax.wsdl, - javax.wsdl.extensions, - javax.wsdl.extensions.http, - javax.wsdl.extensions.mime, - javax.wsdl.extensions.soap, - javax.xml.namespace, - javax.xml.parsers, - javax.xml.stream, - javax.xml.transform, - javax.xml.transform.dom, - javax.xml.transform.sax, - javax.xml.transform.stream, - net.sf.saxon.om, - org.apache.axis2.client, - org.apache.axis2.transport.http, - org.apache.axis2.util, - org.apache.commons.collections.map, - org.apache.commons.httpclient, - org.apache.commons.httpclient.params, - org.apache.commons.httpclient.util, - org.apache.commons.logging, - org.apache.log4j, - org.apache.xerces.dom, - org.apache.xerces.impl.xs, - org.apache.xerces.jaxp, - org.apache.xerces.parsers, - org.apache.xerces.xni, - org.apache.xerces.xni.parser, - org.apache.xerces.xs, - org.apache.xml.serialize, - org.w3c.dom, - org.w3c.dom.ls, - org.xml.sax - diff --git a/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/woden-impl-dom-1.0M8.MF b/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/woden-impl-dom-1.0M8.MF deleted file mode 100644 index c15bce67b6..0000000000 --- a/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/woden-impl-dom-1.0M8.MF +++ /dev/null @@ -1,226 +0,0 @@ -Manifest-Version: 1.0 -Archiver-Version: Plexus Archiver -Built-By: dims -Build-Jdk: 1.4.2_17 -Bundle-License: http://www.apache.org/licenses/LICENSE-2.0.txt -Import-Package: com.ibm.wsdl.util, - com.ibm.wsdl.util.xml, - javax.wsdl, - javax.wsdl.extensions, - javax.wsdl.extensions.soap, - javax.wsdl.factory, - javax.wsdl.xml, - javax.xml.namespace, - javax.xml.parsers, - org.apache.woden;version="1.0", - org.apache.woden.internal;version="1.0.0", - org.apache.woden.internal.resolver;version="1.0.0", - org.apache.woden.internal.schema;version="1.0.0", - org.apache.woden.internal.util;version="1.0.0", - org.apache.woden.internal.util.dom;version="1.0.0", - org.apache.woden.internal.wsdl20;version="1.0.0", - org.apache.woden.internal.wsdl20.assertions;version="1.0.0", - org.apache.woden.internal.wsdl20.extensions;version="1.0.0", - org.apache.woden.internal.wsdl20.extensions.http;version="1.0.0", - org.apache.woden.internal.wsdl20.extensions.rpc;version="1.0.0", - org.apache.woden.internal.wsdl20.extensions.soap;version="1.0.0", - org.apache.woden.internal.wsdl20.validation;version="1.0.0", - org.apache.woden.internal.xml;version="1.0.0", - org.apache.woden.internal.xpointer;version="1.0.0", - org.apache.woden.resolver;version="1.0", - org.apache.woden.schema;version="1.0", - org.apache.woden.tool.converter;version="1.0.0", - org.apache.woden.types;version="1.0", - org.apache.woden.wsdl20;version="1.0", - org.apache.woden.wsdl20.enumeration;version="1.0", - org.apache.woden.wsdl20.extensions;version="1.0", - org.apache.woden.wsdl20.extensions.http;version="1.0", - org.apache.woden.wsdl20.extensions.rpc;version="1.0", - org.apache.woden.wsdl20.extensions.soap;version="1.0", - org.apache.woden.wsdl20.fragids;version="1.0", - org.apache.woden.wsdl20.validation;version="1.0", - org.apache.woden.wsdl20.xml;version="1.0", - org.apache.woden.xml;version="1.0", - org.apache.woden.xpointer;version="1.0", - org.apache.ws.commons.schema, - org.apache.ws.commons.schema.resolver, - org.apache.ws.commons.schema.utils, - org.apache.xerces.parsers, - org.apache.xml.serialize, - org.w3c.dom, - org.xml.sax -Export-Package: javax.xml.namespace, - org.apache.woden.internal;version="1.0.0"; - uses:="org.apache.woden.wsdl20, - org.apache.woden.schema, - org.apache.xerces.parsers, - javax.xml.namespace, - org.apache.woden.xml, - org.apache.woden.wsdl20.extensions, - org.apache.woden.resolver, - org.apache.woden.internal.schema, - javax.xml.parsers, - org.apache.woden.wsdl20.xml, - org.xml.sax, - org.apache.ws.commons.schema, - org.w3c.dom, - org.apache.woden, - org.apache.woden.internal.wsdl20, - org.apache.woden.internal.xpointer, - org.apache.woden.internal.util.dom, - org.apache.ws.commons.schema.resolver, - org.apache.woden.internal.wsdl20.extensions, - org.apache.woden.xpointer, - org.apache.woden.internal.wsdl20.validation, - org.apache.woden.wsdl20.enumeration, - org.apache.woden.types, - org.apache.woden.internal.resolver, - org.apache.woden.internal.util", - org.apache.woden.internal.resolver;version="1.0.0"; - uses:="org.apache.ws.commons.schema.resolver, - org.xml.sax, - org.apache.xml.serialize, - org.w3c.dom, - org.apache.woden, - org.apache.woden.resolver, - org.apache.woden.internal.util", - org.apache.woden.internal.schema;version="1.0.0"; - uses:="org.apache.woden.schema, - org.apache.ws.commons.schema, - javax.xml.namespace, - org.apache.woden", - org.apache.woden.internal.util;version="1.0.0", - org.apache.woden.internal.util.dom;version="1.0.0"; - uses:="javax.xml.namespace, - org.w3c.dom, - org.apache.woden, - org.apache.woden.internal.util", - org.apache.woden.internal.wsdl20;version="1.0.0"; - uses:="org.apache.woden.wsdl20, - org.apache.woden.schema, - org.apache.woden.wsdl20.extensions.rpc, - org.apache.ws.commons.schema, - javax.xml.namespace, - org.apache.woden.xml, - org.apache.woden, - org.apache.woden.wsdl20.extensions, - org.apache.woden.wsdl20.fragids, - org.apache.woden.internal, - org.apache.woden.internal.wsdl20.extensions, - org.apache.ws.commons.schema.utils, - org.apache.woden.internal.schema, - org.apache.woden.wsdl20.enumeration, - org.apache.woden.wsdl20.xml, - org.apache.woden.types", - org.apache.woden.internal.wsdl20.assertions;version="1.0.0"; - uses:="org.apache.woden.wsdl20, - org.apache.woden.wsdl20.validation, - javax.xml.namespace, - org.apache.woden.wsdl20.xml, - org.apache.woden, - org.apache.woden.resolver, - org.apache.woden.internal", - org.apache.woden.internal.wsdl20.extensions;version="1.0.0"; - uses:="org.apache.woden.wsdl20, - org.apache.woden.wsdl20.extensions.http, - org.apache.woden.internal.wsdl20.extensions.http, - org.apache.woden.internal.xml, - org.apache.woden.internal.wsdl20.extensions.soap, - org.apache.woden.wsdl20.extensions.rpc, - javax.xml.namespace, - org.apache.woden.xml, - org.apache.woden, - org.apache.woden.wsdl20.extensions, - org.apache.woden.internal.wsdl20.extensions.rpc, - org.apache.woden.wsdl20.xml, - org.apache.woden.wsdl20.extensions.soap, - org.apache.woden.internal.util", - org.apache.woden.internal.wsdl20.extensions.http;version="1.0.0"; - uses:="org.apache.woden.wsdl20, - org.apache.woden.wsdl20.extensions.http, - org.apache.woden.internal.xml, - org.apache.ws.commons.schema, - javax.xml.namespace, - org.apache.woden.xml, - org.apache.woden.internal.wsdl20, - org.apache.woden, - org.apache.woden.wsdl20.extensions, - org.apache.woden.internal, - org.apache.woden.internal.wsdl20.extensions, - org.apache.woden.wsdl20.xml", - org.apache.woden.internal.wsdl20.extensions.rpc;version="1.0.0"; - uses:="org.apache.woden.wsdl20, - org.apache.woden.wsdl20.extensions.rpc, - javax.xml.namespace, - org.apache.woden.xml, - org.apache.woden.wsdl20.xml, - org.apache.woden, - org.apache.woden.wsdl20.extensions", - org.apache.woden.internal.wsdl20.extensions.soap;version="1.0.0"; - uses:="org.apache.woden.wsdl20, - org.apache.woden.wsdl20.extensions.http, - org.apache.woden.internal.xml, - org.apache.ws.commons.schema, - javax.xml.namespace, - org.apache.woden.xml, - org.apache.woden, - org.apache.woden.internal.wsdl20, - org.apache.woden.wsdl20.extensions, - org.apache.woden.internal, - org.apache.woden.internal.wsdl20.extensions, - org.apache.woden.wsdl20.xml, - org.apache.woden.wsdl20.extensions.soap", - org.apache.woden.internal.wsdl20.validation;version="1.0.0"; - uses:="org.apache.woden.wsdl20, - org.apache.woden.wsdl20.validation, - org.apache.woden.schema, - org.apache.woden.internal.wsdl20.assertions, - org.apache.ws.commons.schema, - javax.xml.namespace, - org.apache.woden, - org.apache.woden.wsdl20.extensions, - org.apache.woden.resolver, - org.apache.woden.internal, - org.apache.woden.types, - org.apache.woden.wsdl20.xml", - org.apache.woden.internal.xml;version="1.0.0"; - uses:="org.apache.woden.wsdl20.extensions.http, - org.apache.woden.wsdl20.extensions.rpc, - javax.xml.namespace, - org.apache.woden.xml, - org.apache.woden, - org.apache.woden.internal.util, - org.apache.woden.internal", - org.apache.woden.internal.xpointer;version="1.0.0"; - uses:="org.apache.woden.xpointer, - org.apache.woden.types, - org.w3c.dom, - org.apache.woden, - org.apache.woden.internal", - org.apache.woden.tool.converter;version="1.0.0"; - uses:="javax.wsdl, - javax.wsdl.extensions, - javax.wsdl.extensions.soap, - javax.wsdl.xml, - javax.wsdl.factory, - javax.xml.namespace, - com.ibm.wsdl.util, - com.ibm.wsdl.util.xml" -Bundle-Version: 1.0.0 -Bundle-Description: The Woden project is a subproject of the Apache We - b Services Project to develop a Java class library for reading, ma - nipulating, creating and writing WSDL documents, initially to supp - ort WSDL 2.0 but with the longer term aim of supporting past, present - and future versions of WSDL. There are two main deliverables: - an API and an implementation. The Woden API consists of a set of J - ava interfaces. The WSDL 2.0-specific portion of the Woden API confor - ms to the W3C WSDL 2.0 specification. The implementation will be a - high performance implementation directly usable in other Apache p - rojects such as Axis2. -Bundle-Name: Woden - DOM -Bundle-DocURL: http://www.apache.org/ -Bundle-ManifestVersion: 2 -Bundle-Vendor: Apache Software Foundation -Bundle-SymbolicName: org.apache.woden.woden-impl-dom - - diff --git a/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/xercesImpl-2.9.0.MF b/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/xercesImpl-2.9.0.MF deleted file mode 100644 index c113563aed..0000000000 --- a/java/sca/modules/node-launcher-equinox/src/main/resources/org/apache/tuscany/sca/node/equinox/launcher/xercesImpl-2.9.0.MF +++ /dev/null @@ -1,421 +0,0 @@ -Manifest-Version: 1.0 -Export-Package: org.apache.html.dom;version="2.9.0"; - uses:="org.apache.xerces.dom, - org.w3c.dom.html, - org.w3c.dom, - org.xml.sax", - org.apache.wml;version="2.9.0"; - uses:="org.w3c.dom", - org.apache.wml.dom;version="2.9.0"; - uses:="org.apache.wml, - org.apache.xerces.dom,org.w3c.dom", - org.apache.xerces.dom;version="2.9.0"; - uses:="org.apache.xerces.parsers, - org.apache.xerces.dom3.as, - org.w3c.dom, - org.apache.xerces.impl.xs, - org.apache.xerces.xs, - org.apache.xerces.xni, - org.apache.xerces.impl.dv.xs, - org.apache.xerces.impl, - org.apache.xerces.impl.dtd, - org.apache.xerces.util, - org.w3c.dom.ls, - org.apache.xml.serialize, - org.w3c.dom.events, - org.apache.xerces.xni.grammars, - org.apache.xerces.xni.parser, - org.apache.xerces.impl.validation, - org.apache.xerces.impl.dv, - org.apache.xerces.impl.msg, - org.apache.xerces.impl.xs.util, - org.apache.xerces.dom.events, - org.w3c.dom.traversal, - org.w3c.dom.ranges", - org.apache.xerces.dom.events;version="2.9.0"; - uses:="org.w3c.dom.events,org.w3c.dom", - org.apache.xerces.dom3.as;version="2.9.0"; - uses:="org.w3c.dom,org.w3c.dom.ls", - org.apache.xerces.impl;version="2.9.0"; - uses:="org.apache.xerces.xni.grammars, - org.apache.xerces.xni, - org.apache.xerces.xni.parser, - org.apache.xerces.util, - org.apache.xerces.impl.dtd, - org.apache.xerces.impl.io, - org.apache.xerces.impl.validation, - org.xml.sax", - org.apache.xerces.impl.dtd;version="2.9.0"; - uses:="org.apache.xerces.util, - org.apache.xerces.xni, - org.apache.xerces.impl.validation, - org.apache.xerces.xni.grammars, - org.apache.xerces.impl.dv, - org.apache.xerces.impl.dtd.models, - org.apache.xerces.xni.parser, - org.apache.xerces.impl, - org.apache.xerces.impl.msg", - org.apache.xerces.impl.dtd.models;version="2.9.0"; - uses:="org.apache.xerces.xni", - org.apache.xerces.impl.dv;version="2.9.0"; - uses:="org.apache.xerces.util, - org.apache.xerces.xs, - org.apache.xerces.impl.xs.util", - org.apache.xerces.impl.dv.dtd;version="2.9.0"; - uses:="org.apache.xerces.impl.dv, - org.apache.xerces.util", - org.apache.xerces.impl.dv.util;version="2.9.0"; - uses:="org.apache.xerces.xs, - org.apache.xerces.xs.datatypes", - org.apache.xerces.impl.dv.xs;version="2.9.0"; - uses:="org.apache.xerces.xs.datatypes, - javax.xml.datatype, - org.apache.xerces.jaxp.datatype, - org.apache.xerces.impl.dv, - org.apache.xerces.util, - org.apache.xerces.impl.dv.util, - org.apache.xerces.xs, - org.apache.xerces.xni, - javax.xml.namespace, - org.apache.xerces.impl.xs, - org.apache.xerces.impl.xs.util, - org.apache.xerces.impl.xpath.regex, - org.w3c.dom", - org.apache.xerces.impl.io;version="2.9.0"; - uses:="org.apache.xerces.util, - org.apache.xerces.impl.msg", - org.apache.xerces.impl.msg;version="2.9.0"; - uses:="org.apache.xerces.util", - org.apache.xerces.impl.validation;version="2.9.0"; - uses:="org.apache.xerces.util, - org.apache.xerces.impl.dv, - org.apache.xerces.xni", - org.apache.xerces.impl.xpath;version="2.9.0"; - uses:="org.apache.xerces.util, - org.apache.xerces.xni", - org.apache.xerces.impl.xpath.regex;version="2.9.0", - org.apache.xerces.impl.xs;version="2.9.0"; - uses:="org.apache.xerces.xs, - org.apache.xerces.impl.xs.util, - org.apache.xerces.impl.dv, - org.apache.xerces.util, - org.apache.xerces.xni.grammars, - org.apache.xerces.parsers, - org.apache.xerces.xni, - org.apache.xerces.xni.parser, - org.xml.sax, - org.apache.xerces.impl.xs.identity, - org.w3c.dom, - org.apache.xerces.impl.xs.opti, - org.apache.xerces.impl.xs.traversers, - org.w3c.dom.ls, - org.apache.xerces.impl.xs.models, - org.apache.xerces.dom, - org.apache.xerces.impl, - javax.xml.namespace, - org.apache.xerces.impl.validation, - org.apache.xerces.impl.dv.xs", - org.apache.xerces.impl.xs.identity;version="2.9.0"; - uses:="org.apache.xerces.xs, - org.apache.xerces.impl.xs.util, - org.apache.xerces.impl.xpath, - org.apache.xerces.util, - org.apache.xerces.xni, - org.apache.xerces.impl.xs", - org.apache.xerces.impl.xs.models;version="2.9.0"; - uses:="org.apache.xerces.xs, - org.apache.xerces.impl.dtd.models, - org.apache.xerces.impl.xs, - org.apache.xerces.util, - org.apache.xerces.xni.parser, - org.apache.xerces.impl, - org.apache.xerces.xni", - org.apache.xerces.impl.xs.opti;version="2.9.0"; - uses:="org.w3c.dom, - org.apache.xerces.xni.parser, - org.apache.xerces.xni, - org.apache.xerces.util, - org.apache.xerces.impl.xs, - org.apache.xerces.impl, - org.apache.xerces.xni.grammars, - org.apache.xerces.parsers, - org.apache.xerces.impl.validation, - org.apache.xerces.impl.dv, - org.apache.xerces.impl.msg", - org.apache.xerces.impl.xs.traversers;version="2.9.0"; - uses:="org.apache.xerces.util, - org.apache.xerces.impl.xs.opti, - org.apache.xerces.xni, - org.apache.xerces.xni.parser, - org.w3c.dom, - org.xml.sax.helpers, - org.xml.sax, - org.apache.xerces.xs, - org.apache.xerces.impl.validation, - org.apache.xerces.impl.xs.util, - org.apache.xerces.impl.dv, - org.apache.xerces.impl.xs, - org.apache.xerces.impl.xs.identity, - org.apache.xerces.impl.xpath, - org.apache.xerces.xni.grammars, - org.apache.xerces.parsers, - org.apache.xerces.impl, - org.apache.xerces.impl.dv.xs", - org.apache.xerces.impl.xs.util;version="2.9.0"; - uses:="org.apache.xerces.xs, - org.apache.xerces.xni, - org.apache.xerces.util, - org.apache.xerces.xni.grammars, - org.apache.xerces.impl.xs", - org.apache.xerces.jaxp;version="2.9.0"; - uses:="org.xml.sax.helpers, - org.xml.sax, - org.apache.xerces.util, - org.apache.xerces.parsers, - javax.xml.parsers, - javax.xml.validation, - org.apache.xerces.jaxp.validation, - org.apache.xerces.xni.parser, - org.w3c.dom, - org.apache.xerces.impl.validation, - org.apache.xerces.dom, - org.apache.xerces.xni, - org.apache.xerces.impl.xs, - org.apache.xerces.impl, - org.w3c.dom.ls, - org.apache.xerces.impl.xs.opti, - org.apache.xerces.xs, - org.apache.xerces.xni.grammars", - org.apache.xerces.jaxp.datatype;version="2.9.0"; - uses:="javax.xml.datatype, - org.apache.xerces.util, - javax.xml.namespace", - org.apache.xerces.jaxp.validation;version="2.9.0"; - uses:="org.apache.xerces.xni.grammars, - javax.xml.validation, - org.apache.xerces.xni, - javax.xml.transform.dom, - org.w3c.dom, - org.apache.xerces.xs, - org.apache.xerces.impl.dv, - org.apache.xerces.dom, - org.apache.xerces.xni.parser, - org.apache.xerces.util, - org.apache.xerces.impl.xs.util, - javax.xml.parsers, - org.xml.sax, - org.apache.xerces.impl.validation, - javax.xml.transform, - org.apache.xerces.impl.xs, - org.apache.xerces.impl, - org.apache.xerces.parsers, - javax.xml.transform.stream, - org.apache.xerces.impl.msg, - org.w3c.dom.ls, - org.xml.sax.ext, - javax.xml.transform.sax", - org.apache.xerces.parsers;version="2.9.0"; - uses:="org.apache.xerces.util, - org.apache.xerces.xs, - org.w3c.dom.ls, - org.apache.xerces.impl.dv, - org.apache.xerces.dom, - org.apache.xerces.xni.parser, - org.apache.xerces.xni, - org.w3c.dom, - org.xml.sax.helpers, - org.xml.sax.ext, - org.xml.sax, - org.apache.xerces.xni.grammars, - org.apache.xerces.impl.xs, - org.apache.xerces.dom3.as, - org.apache.xerces.impl, - org.apache.xerces.impl.dtd, - org.apache.xerces.impl.validation, - org.apache.xerces.impl.msg, - org.apache.xerces.xinclude, - org.apache.xerces.xpointer", - org.apache.xerces.util;version="2.9.0"; - uses:="org.xml.sax.ext, - org.apache.xerces.xni, - org.xml.sax, - org.w3c.dom.ls, - org.apache.xerces.xni.grammars, - org.apache.xerces.xni.parser, - org.apache.xerces.dom, - org.w3c.dom, - org.apache.xerces.impl.xs.opti, - org.apache.xerces.impl, - javax.xml.namespace, - javax.xml.parsers, - org.apache.xml.resolver.readers, - org.apache.xerces.jaxp, - org.apache.xml.resolver", - org.apache.xerces.xinclude;version="2.9.0"; - uses:="org.apache.xerces.util, - org.apache.xerces.xni, - org.apache.xerces.xni.parser, - org.apache.xerces.impl.io, - org.apache.xerces.xpointer, - org.apache.xerces.impl", - org.apache.xerces.xni;version="2.9.0"; - uses:="org.apache.xerces.xni.parser", - org.apache.xerces.xni.grammars;version="2.9.0"; - uses:="org.apache.xerces.xni, - org.apache.xerces.xni.parser, - org.apache.xerces.xs", - org.apache.xerces.xni.parser;version="2.9.0"; - uses:="org.apache.xerces.xni", - org.apache.xerces.xpointer;version="2.9.0"; - uses:="org.apache.xerces.util, - org.apache.xerces.xni, - org.apache.xerces.xni.parser, - org.apache.xerces.impl, - org.apache.xerces.xs, - org.apache.xerces.impl.dv, - org.apache.xerces.xinclude", - org.apache.xerces.xs;version="2.9.0"; - uses:="org.w3c.dom.ls, - org.w3c.dom", - org.apache.xerces.xs.datatypes;version="2.9.0"; - uses:="org.apache.xerces.xs, - javax.xml.datatype, - org.apache.xerces.xni, - javax.xml.namespace", - org.apache.xml.serialize;version="2.9.0"; - uses:="org.apache.xerces.util, - org.w3c.dom.ls, - org.xml.sax.ext, - org.apache.xerces.dom, - org.w3c.dom.traversal, - org.w3c.dom, - org.xml.sax, - org.apache.xerces.impl, - sun.io, - org.w3c.dom.html, - org.apache.xerces.xni, - org.xml.sax.helpers", - org.w3c.dom.html;version="2.9.0"; - uses:="org.w3c.dom" -Ant-Version: Apache Ant version 1.6.5 compiled on June 2 2005 -Bundle-Version: 2.9.0 -Bundle-Name: xercesImpl -Bundle-ManifestVersion: 2 -Import-Package: javax.xml.datatype;resolution:=optional, - javax.xml.namespace;resolution:=optional, - javax.xml.parsers;resolution:=optional, - javax.xml.transform;resolution:=optional, - javax.xml.transform.dom;resolution:=optional, - javax.xml.transform.sax;resolution:=optional, - javax.xml.transform.stream;resolution:=optional, - javax.xml.validation;resolution:=optional, - org.apache.xml.resolver;resolution:=optional, - org.apache.xml.resolver.readers;resolution:=optional, - org.w3c.dom;resolution:=optional, - org.w3c.dom.events;resolution:=optional, - org.w3c.dom.html;resolution:=optional, - org.w3c.dom.ls;resolution:=optional, - org.w3c.dom.ranges;resolution:=optional, - org.w3c.dom.traversal;resolution:=optional, - org.xml.sax;resolution:=optional, - org.xml.sax.ext;resolution:=optional, - org.xml.sax.helpers;resolution:=optional, - sun.io;resolution:=optional -Bundle-SymbolicName: xercesImpl -Name: javax/xml/datatype/ -Implementation-Vendor: Apache Software Foundation -Implementation-Title: javax.xml.datatype -Implementation-Version: 1.3.03 -Specification-Vendor: Sun Microsystems Inc. -Specification-Title: Java API for XML Processing -Implementation-URL: http://xml.apache.org/commons/ -Specification-Version: 1.3 -Comment: based on xml-commons external 1.3.03 - -Name: org/apache/xerces/xni/ -Implementation-Vendor: Apache Software Foundation -Implementation-Title: org.apache.xerces.xni -Implementation-Version: 1.2 -Specification-Vendor: Apache Software Foundation -Specification-Title: Xerces Native Interface -Implementation-URL: http://xerces.apache.org/xerces2-j/ -Specification-Version: 1.2 -Comment: Xerces Native Interface - -Name: javax/xml/parsers/ -Implementation-Vendor: Apache Software Foundation -Implementation-Title: javax.xml.parsers -Implementation-Version: 1.3.03 -Specification-Vendor: Sun Microsystems Inc. -Specification-Title: Java API for XML Processing -Implementation-URL: http://xml.apache.org/commons/ -Specification-Version: 1.3 -Comment: based on xml-commons external 1.3.03 - -Name: org/w3c/dom/ls/ -Implementation-Vendor: World Wide Web Consortium -Implementation-Title: org.w3c.dom.ls -Implementation-Version: 1.0 -Specification-Vendor: World Wide Web Consortium -Specification-Title: Document Object Model, Level 3 Load and Save -Implementation-URL: http://www.w3c.org/DOM/ -Specification-Version: 1.0 -Comment: based on xml-commons external 1.3.03 - -Name: javax/xml/transform/ -Implementation-Vendor: Apache Software Foundation -Implementation-Title: javax.xml.transform -Implementation-Version: 1.3.03 -Specification-Vendor: Sun Microsystems Inc. -Specification-Title: Java API for XML Processing -Implementation-URL: http://xml.apache.org/commons/ -Specification-Version: 1.3 -Comment: based on xml-commons external 1.3.03 - -Name: org/xml/sax/ -Implementation-Vendor: David Megginson -Implementation-Title: org.xml.sax -Implementation-Version: 2.0.2 -Specification-Vendor: David Megginson -Specification-Title: Simple API for XML -Implementation-URL: http://www.saxproject.org/ -Specification-Version: 2.0.2 -Comment: based on xml-commons external 1.3.03 - -Name: org/w3c/dom/ -Implementation-Vendor: World Wide Web Consortium -Implementation-Title: org.w3c.dom -Implementation-Version: 1.0 -Specification-Vendor: World Wide Web Consortium -Specification-Title: Document Object Model, Level 3 Core -Implementation-URL: http://www.w3c.org/DOM/ -Specification-Version: 1.0 -Comment: based on xml-commons external 1.3.03 - -Name: org/apache/xerces/impl/Version.class -Implementation-Vendor: Apache Software Foundation -Implementation-Title: org.apache.xerces.impl.Version -Implementation-Version: 2.9.0 -Implementation-URL: http://xerces.apache.org/xerces2-j/ -Comment: Xerces-J 2.9.0 - -Name: javax/xml/xpath/ -Implementation-Vendor: Apache Software Foundation -Implementation-Title: javax.xml.xpath -Implementation-Version: 1.3.03 -Specification-Vendor: Sun Microsystems Inc. -Specification-Title: Java API for XML Processing -Implementation-URL: http://xml.apache.org/commons/ -Specification-Version: 1.3 -Comment: based on xml-commons external 1.3.03 - -Name: javax/xml/validation/ -Implementation-Vendor: Apache Software Foundation -Implementation-Title: javax.xml.validation -Implementation-Version: 1.3.03 -Specification-Vendor: Sun Microsystems Inc. -Specification-Title: Java API for XML Processing -Implementation-URL: http://xml.apache.org/commons/ -Specification-Version: 1.3 -Comment: based on xml-commons external 1.3.03 - diff --git a/java/sca/modules/node-launcher-equinox/src/test/java/hello/HelloWorld.java b/java/sca/modules/node-launcher-equinox/src/test/java/hello/HelloWorld.java deleted file mode 100644 index e3fcdfd25f..0000000000 --- a/java/sca/modules/node-launcher-equinox/src/test/java/hello/HelloWorld.java +++ /dev/null @@ -1,30 +0,0 @@ -/* - * 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 hello; - -import org.oasisopen.sca.annotation.Remotable; - -/** - * HelloWorld interface - */ -@Remotable -public interface HelloWorld { - String hello(String name); -} diff --git a/java/sca/modules/node-launcher-equinox/src/test/java/hello/HelloWorldClient.java b/java/sca/modules/node-launcher-equinox/src/test/java/hello/HelloWorldClient.java deleted file mode 100644 index 8232acb658..0000000000 --- a/java/sca/modules/node-launcher-equinox/src/test/java/hello/HelloWorldClient.java +++ /dev/null @@ -1,50 +0,0 @@ -/* - * 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 hello; - -import org.oasisopen.sca.annotation.EagerInit; -import org.oasisopen.sca.annotation.Init; -import org.oasisopen.sca.annotation.Reference; -import org.oasisopen.sca.annotation.Scope; - -/** - * This client program shows how to create an SCA runtime, start it, - * and locate and invoke a SCA component - */ -@Scope("COMPOSITE") -@EagerInit -public class HelloWorldClient { - - private HelloWorld hw; - - @Reference - public void setHelloWorld(HelloWorld hw) { - this.hw = hw; - } - - @Init - public void hello() { - // Say hello - System.out.println("Contribution ClassLoader: " + getClass().getClassLoader()); - System.out.println("SCA API ClassLoader: " + Reference.class.getClassLoader()); - System.out.println(hw.hello("Equinox")); - } - -} diff --git a/java/sca/modules/node-launcher-equinox/src/test/java/hello/HelloWorldImpl.java b/java/sca/modules/node-launcher-equinox/src/test/java/hello/HelloWorldImpl.java deleted file mode 100644 index e51d3c79d9..0000000000 --- a/java/sca/modules/node-launcher-equinox/src/test/java/hello/HelloWorldImpl.java +++ /dev/null @@ -1,30 +0,0 @@ -/* - * 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 hello; - -/** - * HelloWorldImpl - */ -public class HelloWorldImpl implements HelloWorld { - public String hello(String name) { - System.out.println("Name: " + name); - return "Hello, " + name; - } -} diff --git a/java/sca/modules/node-launcher-equinox/src/test/java/org/apache/tuscany/sca/node/equinox/launcher/EquinoxOSGiHostTestCase.java b/java/sca/modules/node-launcher-equinox/src/test/java/org/apache/tuscany/sca/node/equinox/launcher/EquinoxOSGiHostTestCase.java deleted file mode 100644 index 5728ad2e07..0000000000 --- a/java/sca/modules/node-launcher-equinox/src/test/java/org/apache/tuscany/sca/node/equinox/launcher/EquinoxOSGiHostTestCase.java +++ /dev/null @@ -1,100 +0,0 @@ -/* - * 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.equinox.launcher; - -import java.util.Dictionary; -import java.util.Enumeration; - -import org.junit.Assert; -import org.junit.Test; -import org.osgi.framework.Bundle; -import org.osgi.framework.BundleContext; - - -/** - * Test case for equinox host - */ -public class EquinoxOSGiHostTestCase { - - @Test - public void testStartThenStop() { - EquinoxHost host = new EquinoxHost(); - BundleContext context = host.start(); - Assert.assertNotNull(context); - for (Bundle b : context.getBundles()) { - System.out.println(toString(b, false)); - } - host.stop(); - } - - @Test - public void testStartThenStopTwice() { - EquinoxHost host = new EquinoxHost(); - BundleContext context = host.start(); - Assert.assertNotNull(context); - for (Bundle b : context.getBundles()) { - System.out.println(toString(b, false)); - } - host.stop(); - - host = new EquinoxHost(); - context = host.start(); - Assert.assertNotNull(context); - for (Bundle b : context.getBundles()) { - System.out.println(toString(b, false)); - } - host.stop(); - } - - public static String toString(Bundle b, boolean verbose) { - StringBuffer sb = new StringBuffer(); - sb.append(b.getBundleId()).append(" ").append(b.getSymbolicName()); - int s = b.getState(); - if ((s & Bundle.UNINSTALLED) != 0) { - sb.append(" UNINSTALLED"); - } - if ((s & Bundle.INSTALLED) != 0) { - sb.append(" INSTALLED"); - } - if ((s & Bundle.RESOLVED) != 0) { - sb.append(" RESOLVED"); - } - if ((s & Bundle.STARTING) != 0) { - sb.append(" STARTING"); - } - if ((s & Bundle.STOPPING) != 0) { - sb.append(" STOPPING"); - } - if ((s & Bundle.ACTIVE) != 0) { - sb.append(" ACTIVE"); - } - - sb.append(" ").append(b.getLocation()); - if (verbose) { - Dictionary dict = b.getHeaders(); - Enumeration keys = dict.keys(); - while (keys.hasMoreElements()) { - Object key = keys.nextElement(); - sb.append(" ").append(key).append("=").append(dict.get(key)); - } - } - return sb.toString(); - } -} diff --git a/java/sca/modules/node-launcher-equinox/src/test/java/org/apache/tuscany/sca/node/equinox/launcher/NodeLauncherTestCase.java b/java/sca/modules/node-launcher-equinox/src/test/java/org/apache/tuscany/sca/node/equinox/launcher/NodeLauncherTestCase.java deleted file mode 100644 index 5cc40ca77f..0000000000 --- a/java/sca/modules/node-launcher-equinox/src/test/java/org/apache/tuscany/sca/node/equinox/launcher/NodeLauncherTestCase.java +++ /dev/null @@ -1,67 +0,0 @@ -/* - * 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.equinox.launcher; - -import org.apache.tuscany.sca.node.Node; -import org.junit.AfterClass; -import org.junit.BeforeClass; -import org.junit.Ignore; -import org.junit.Test; - -/** - * - */ -public class NodeLauncherTestCase { - private static NodeLauncher launcher; - - @BeforeClass - public static void setUp() { - System.setProperty("osgi.configuration.area", "target/equinox/configuration"); - try { - launcher = NodeLauncher.newInstance(); - } catch (Exception e) { - e.printStackTrace(); - } - } - - @AfterClass - public static void tearDown() { - System.clearProperty("osgi.configuration.area"); - if (launcher != null) { - launcher.destroy(); - } - - } - - @Test - public void testLaunch() throws Exception { - String location = ContributionLocationHelper.getContributionLocation(getClass()); - Node node = launcher.createNode("HelloWorld.composite", new Contribution("test", location)); - node.start(); - node.stop(); - } - - @Test - @Ignore("contribution-osgi issue") - public void testLaunchDomain() throws Exception { - DomainManagerLauncher.main(new String[] {}); - } - -} diff --git a/java/sca/modules/node-launcher-equinox/src/test/resources/HelloWorld.composite b/java/sca/modules/node-launcher-equinox/src/test/resources/HelloWorld.composite deleted file mode 100644 index ccd116e848..0000000000 --- a/java/sca/modules/node-launcher-equinox/src/test/resources/HelloWorld.composite +++ /dev/null @@ -1,34 +0,0 @@ - - - - - - - - - - - - - -- cgit v1.2.3