Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorZeb Ford-Reitz2011-06-24 12:55:03 +0000
committerZeb Ford-Reitz2011-06-24 13:36:34 +0000
commit1a092a1aee25f4c1d7029bcf84fb371aedb06649 (patch)
tree4588198096b405fedce7cb03be53e5b6ab7b3ee7
parent9f704c8ef7758b876bbeef46685d85d535b9f609 (diff)
downloadorg.eclipse.jubula.core-1a092a1aee25f4c1d7029bcf84fb371aedb06649.tar.gz
org.eclipse.jubula.core-1a092a1aee25f4c1d7029bcf84fb371aedb06649.tar.xz
org.eclipse.jubula.core-1a092a1aee25f4c1d7029bcf84fb371aedb06649.zip
Converts RC components to bundles.
Removes RC projects that were made obsolete after changing RC packaging to bundles. Removes accidentally added bundle.
-rw-r--r--org.eclipse.jubula.app.autagent/.checkstyle10
-rw-r--r--org.eclipse.jubula.app.autagent/.classpath (renamed from org.eclipse.jubula.autstarter/.classpath)6
-rw-r--r--org.eclipse.jubula.app.autagent/.gitignore2
-rw-r--r--org.eclipse.jubula.app.autagent/.project34
-rw-r--r--org.eclipse.jubula.app.autagent/.settings/org.eclipse.jdt.core.prefs8
-rw-r--r--org.eclipse.jubula.app.autagent/META-INF/MANIFEST.MF15
-rw-r--r--org.eclipse.jubula.app.autagent/about.html28
-rw-r--r--org.eclipse.jubula.app.autagent/build.properties18
-rw-r--r--org.eclipse.jubula.app.autagent/plugin.xml18
-rw-r--r--org.eclipse.jubula.app.autagent/pom.xml15
-rw-r--r--org.eclipse.jubula.app.autagent/src/org/eclipse/jubula/app/autagent/Activator.java50
-rw-r--r--org.eclipse.jubula.app.autagent/src/org/eclipse/jubula/app/autagent/AutAgentApplication.java173
-rw-r--r--org.eclipse.jubula.autagent/.classpath12
-rw-r--r--org.eclipse.jubula.autagent/.gitignore3
-rw-r--r--org.eclipse.jubula.autagent/.project11
-rw-r--r--org.eclipse.jubula.autagent/.settings/org.eclipse.jdt.core.prefs10
-rw-r--r--org.eclipse.jubula.autagent/META-INF/MANIFEST.MF24
-rw-r--r--org.eclipse.jubula.autagent/build.properties18
-rw-r--r--org.eclipse.jubula.autagent/plugin.xml6
-rw-r--r--org.eclipse.jubula.autagent/pom.xml34
-rw-r--r--org.eclipse.jubula.autagent/schema/org.eclipse.jubula.autagent.monitor.exsd94
-rw-r--r--org.eclipse.jubula.autagent/src/org/eclipse/jubula/autagent/AutStarter.java153
-rw-r--r--org.eclipse.jubula.autagent/src/org/eclipse/jubula/autagent/commands/AbstractStartJavaAut.java20
-rw-r--r--org.eclipse.jubula.autagent/src/org/eclipse/jubula/autagent/commands/AbstractStartToolkitAut.java81
-rw-r--r--org.eclipse.jubula.autagent/src/org/eclipse/jubula/autagent/commands/StartHtmlAutServerCommand.java48
-rw-r--r--org.eclipse.jubula.autagent/src/org/eclipse/jubula/autagent/commands/StartRcpAutServerCommand.java14
-rw-r--r--org.eclipse.jubula.autagent/src/org/eclipse/jubula/autagent/commands/StartSwingAutServerCommand.java123
-rw-r--r--org.eclipse.jubula.autagent/src/org/eclipse/jubula/autagent/commands/StartSwtAutServerCommand.java38
-rw-r--r--org.eclipse.jubula.autagent/src/org/eclipse/jubula/autagent/desktop/DesktopIntegration.java4
-rw-r--r--org.eclipse.jubula.autstarter/.gitignore1
-rw-r--r--org.eclipse.jubula.autstarter/.project17
-rw-r--r--org.eclipse.jubula.autstarter/.settings/org.maven.ide.eclipse.prefs8
-rw-r--r--org.eclipse.jubula.autstarter/pom.xml43
-rw-r--r--org.eclipse.jubula.communication/META-INF/MANIFEST.MF3
-rw-r--r--org.eclipse.jubula.communication/src/org/eclipse/jubula/communication/Communicator.java12
-rw-r--r--org.eclipse.jubula.documentation/build.xml1
-rw-r--r--org.eclipse.jubula.documentation/gefapi/javadoc/javadoc.xml3
-rw-r--r--org.eclipse.jubula.examples/buildScript.xml10
-rw-r--r--org.eclipse.jubula.feature/feature.xml34
-rw-r--r--org.eclipse.jubula.product.autagent.start/.gitignore (renamed from org.eclipse.jubula.rc.common.autlauncher/.gitignore)0
-rw-r--r--org.eclipse.jubula.product.autagent.start/.project11
-rw-r--r--org.eclipse.jubula.product.autagent.start/org.eclipse.jubula.product.autagent.start.product58
-rw-r--r--org.eclipse.jubula.product.autagent.start/pom.xml18
-rw-r--r--org.eclipse.jubula.product.autagent.stop/.gitignore1
-rw-r--r--org.eclipse.jubula.product.autagent.stop/.project11
-rw-r--r--org.eclipse.jubula.product.autagent.stop/org.eclipse.jubula.product.autagent.stop.product54
-rw-r--r--org.eclipse.jubula.product.autagent.stop/pom.xml18
-rw-r--r--org.eclipse.jubula.project.configuration/target/definitions/indigo.target31
-rw-r--r--org.eclipse.jubula.rc.common.agent/.classpath2
-rw-r--r--org.eclipse.jubula.rc.common.agent/.project9
-rw-r--r--org.eclipse.jubula.rc.common.agent/META-INF/MANIFEST.MF11
-rw-r--r--org.eclipse.jubula.rc.common.agent/build.properties16
-rw-r--r--org.eclipse.jubula.rc.common.agent/pom.xml53
-rw-r--r--org.eclipse.jubula.rc.common.agent/src/org/eclipse/jubula/rc/common/agent/GDAgent.java46
-rw-r--r--org.eclipse.jubula.rc.common.autlauncher/.classpath7
-rw-r--r--org.eclipse.jubula.rc.common.autlauncher/.project23
-rw-r--r--org.eclipse.jubula.rc.common.autlauncher/.settings/org.eclipse.jdt.core.prefs6
-rw-r--r--org.eclipse.jubula.rc.common.autlauncher/.settings/org.maven.ide.eclipse.prefs8
-rw-r--r--org.eclipse.jubula.rc.common.autlauncher/pom.xml45
-rw-r--r--org.eclipse.jubula.rc.common.autlauncher/src/.empty0
-rw-r--r--org.eclipse.jubula.rc.common/.classpath3
-rw-r--r--org.eclipse.jubula.rc.common/.project9
-rw-r--r--org.eclipse.jubula.rc.common/META-INF/MANIFEST.MF28
-rw-r--r--org.eclipse.jubula.rc.common/build.properties17
-rw-r--r--org.eclipse.jubula.rc.common/pom.xml29
-rw-r--r--org.eclipse.jubula.rc.rcp/.classpath4
-rw-r--r--org.eclipse.jubula.rc.rcp/.gitignore2
-rw-r--r--org.eclipse.jubula.rc.rcp/META-INF/MANIFEST.MF40
-rw-r--r--org.eclipse.jubula.rc.rcp/build.properties47
-rw-r--r--org.eclipse.jubula.rc.rcp/buildScript.xml91
-rw-r--r--org.eclipse.jubula.rc.rcp/pom.xml64
-rw-r--r--org.eclipse.jubula.rc.swing/.classpath2
-rw-r--r--org.eclipse.jubula.rc.swing/.project9
-rw-r--r--org.eclipse.jubula.rc.swing/META-INF/MANIFEST.MF23
-rw-r--r--org.eclipse.jubula.rc.swing/build.properties16
-rw-r--r--org.eclipse.jubula.rc.swing/pom.xml59
-rw-r--r--org.eclipse.jubula.rc.swt/.classpath2
-rw-r--r--org.eclipse.jubula.rc.swt/.project9
-rw-r--r--org.eclipse.jubula.rc.swt/META-INF/MANIFEST.MF30
-rw-r--r--org.eclipse.jubula.rc.swt/build.properties16
-rw-r--r--org.eclipse.jubula.rc.swt/pom.xml61
-rw-r--r--org.eclipse.jubula.releng.client/pom.xml6
-rw-r--r--org.eclipse.jubula.releng.server/.gitignore1
-rw-r--r--org.eclipse.jubula.releng.server/pom.xml190
-rw-r--r--org.eclipse.jubula.releng/.gitignore1
-rw-r--r--org.eclipse.jubula.tools/src/org/eclipse/jubula/tools/constants/CommandConstants.java48
-rw-r--r--org.eclipse.jubula.tools/src/org/eclipse/jubula/tools/utils/ZipUtil.java162
87 files changed, 1634 insertions, 965 deletions
diff --git a/org.eclipse.jubula.app.autagent/.checkstyle b/org.eclipse.jubula.app.autagent/.checkstyle
new file mode 100644
index 000000000..afbd8c957
--- /dev/null
+++ b/org.eclipse.jubula.app.autagent/.checkstyle
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<fileset-config file-format-version="1.2.0" simple-config="true">
+ <fileset name="all" enabled="true" check-config-name="Jubula" local="false">
+ <file-match-pattern match-pattern="." include-pattern="true"/>
+ </fileset>
+ <filter name="FilesFromPackage" enabled="true">
+ <filter-data value="src/org/eclipse/jubula/client/ui/i18n"/>
+ </filter>
+</fileset-config>
diff --git a/org.eclipse.jubula.autstarter/.classpath b/org.eclipse.jubula.app.autagent/.classpath
index 6e75667ec..64c5e31b7 100644
--- a/org.eclipse.jubula.autstarter/.classpath
+++ b/org.eclipse.jubula.app.autagent/.classpath
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
- <classpathentry kind="src" path="src"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
- <classpathentry kind="con" path="org.maven.ide.eclipse.MAVEN2_CLASSPATH_CONTAINER"/>
- <classpathentry kind="output" path="target/classes"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="output" path="bin"/>
</classpath>
diff --git a/org.eclipse.jubula.app.autagent/.gitignore b/org.eclipse.jubula.app.autagent/.gitignore
new file mode 100644
index 000000000..934e0e06f
--- /dev/null
+++ b/org.eclipse.jubula.app.autagent/.gitignore
@@ -0,0 +1,2 @@
+/bin
+/target
diff --git a/org.eclipse.jubula.app.autagent/.project b/org.eclipse.jubula.app.autagent/.project
new file mode 100644
index 000000000..1e9929712
--- /dev/null
+++ b/org.eclipse.jubula.app.autagent/.project
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.jubula.app.autagent</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.ManifestBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.SchemaBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>net.sf.eclipsecs.core.CheckstyleBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ <nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
+ </natures>
+</projectDescription>
diff --git a/org.eclipse.jubula.app.autagent/.settings/org.eclipse.jdt.core.prefs b/org.eclipse.jubula.app.autagent/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 000000000..6afa27414
--- /dev/null
+++ b/org.eclipse.jubula.app.autagent/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,8 @@
+#Fri Jun 10 11:28:52 CEST 2011
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.5
diff --git a/org.eclipse.jubula.app.autagent/META-INF/MANIFEST.MF b/org.eclipse.jubula.app.autagent/META-INF/MANIFEST.MF
new file mode 100644
index 000000000..798662007
--- /dev/null
+++ b/org.eclipse.jubula.app.autagent/META-INF/MANIFEST.MF
@@ -0,0 +1,15 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: AUT Agent Application
+Bundle-SymbolicName: org.eclipse.jubula.app.autagent;singleton:=true
+Bundle-Version: 1.0.0.qualifier
+Bundle-Activator: org.eclipse.jubula.app.autagent.Activator
+Bundle-Vendor: Eclipse Jubula
+Require-Bundle: org.eclipse.core.runtime;bundle-version="[3.6.0,4.0.0)",
+ org.slf4j.api;bundle-version="[1.5.11,2.0.0)",
+ org.apache.commons.cli;bundle-version="[1.2.0,2.0.0)",
+ org.eclipse.jubula.tools;bundle-version="[1.0.0,2.0.0)",
+ org.eclipse.jubula.communication;bundle-version="[1.0.0,2.0.0)",
+ org.eclipse.jubula.autagent;bundle-version="[1.0.0,2.0.0)"
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Bundle-ActivationPolicy: lazy
diff --git a/org.eclipse.jubula.app.autagent/about.html b/org.eclipse.jubula.app.autagent/about.html
new file mode 100644
index 000000000..f1be81099
--- /dev/null
+++ b/org.eclipse.jubula.app.autagent/about.html
@@ -0,0 +1,28 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
+<title>About</title>
+</head>
+<body lang="EN-US">
+<h2>About This Content</h2>
+
+<p>June 22, 2011</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org">http://www.eclipse.org</a>.</p>
+
+</body>
+</html>
diff --git a/org.eclipse.jubula.app.autagent/build.properties b/org.eclipse.jubula.app.autagent/build.properties
new file mode 100644
index 000000000..2c78b6524
--- /dev/null
+++ b/org.eclipse.jubula.app.autagent/build.properties
@@ -0,0 +1,18 @@
+###############################################################################
+# Copyright (c) 2004, 2011 BREDEX GmbH.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+###############################################################################
+source.. = src/
+output.. = bin/
+jars.compile.order = .
+bin.includes = about.html,\
+ META-INF/,\
+ .,\
+ plugin.xml
+javacSource = 1.5
+javacTarget = 1.5
+javacErrors.. = -assertIdentifier
+
diff --git a/org.eclipse.jubula.app.autagent/plugin.xml b/org.eclipse.jubula.app.autagent/plugin.xml
new file mode 100644
index 000000000..5b48ae618
--- /dev/null
+++ b/org.eclipse.jubula.app.autagent/plugin.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+<plugin>
+ <extension
+ id="org.eclipse.jubula.app.autagent"
+ name="AUT Agent"
+ point="org.eclipse.core.runtime.applications">
+ <application
+ cardinality="singleton-global"
+ thread="main"
+ visible="true">
+ <run
+ class="org.eclipse.jubula.app.autagent.AutAgentApplication">
+ </run>
+ </application>
+ </extension>
+
+</plugin>
diff --git a/org.eclipse.jubula.app.autagent/pom.xml b/org.eclipse.jubula.app.autagent/pom.xml
new file mode 100644
index 000000000..1806068b9
--- /dev/null
+++ b/org.eclipse.jubula.app.autagent/pom.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <artifactId>org.eclipse.jubula.releng.client</artifactId>
+ <groupId>org.eclipse.jubula</groupId>
+ <version>1.0.0-SNAPSHOT</version>
+ <relativePath>../org.eclipse.jubula.releng.client</relativePath>
+ </parent>
+ <groupId>org.eclipse.jubula</groupId>
+ <artifactId>org.eclipse.jubula.app.autagent</artifactId>
+ <version>1.0.0-SNAPSHOT</version>
+ <packaging>eclipse-plugin</packaging>
+</project>
diff --git a/org.eclipse.jubula.app.autagent/src/org/eclipse/jubula/app/autagent/Activator.java b/org.eclipse.jubula.app.autagent/src/org/eclipse/jubula/app/autagent/Activator.java
new file mode 100644
index 000000000..64b3276b9
--- /dev/null
+++ b/org.eclipse.jubula.app.autagent/src/org/eclipse/jubula/app/autagent/Activator.java
@@ -0,0 +1,50 @@
+/*******************************************************************************
+ * Copyright (c) 2004, 2011 BREDEX GmbH.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * BREDEX GmbH - initial API and implementation and/or initial documentation
+ *******************************************************************************/
+package org.eclipse.jubula.app.autagent;
+
+import org.osgi.framework.BundleActivator;
+import org.osgi.framework.BundleContext;
+
+/**
+ *
+ * @author BREDEX GmbH
+ * @created Jun 21, 2011
+ */
+public class Activator implements BundleActivator {
+
+ /** the bundle context */
+ private static BundleContext context;
+
+ /**
+ *
+ * @return the bundle context.
+ */
+ static BundleContext getContext() {
+ return context;
+ }
+
+ /**
+ *
+ * {@inheritDoc}
+ */
+ public void start(BundleContext bundleContext) throws Exception {
+ Activator.context = bundleContext;
+ }
+
+ /**
+ *
+ * {@inheritDoc}
+ */
+ public void stop(BundleContext bundleContext) throws Exception {
+ Activator.context = null;
+ }
+
+}
diff --git a/org.eclipse.jubula.app.autagent/src/org/eclipse/jubula/app/autagent/AutAgentApplication.java b/org.eclipse.jubula.app.autagent/src/org/eclipse/jubula/app/autagent/AutAgentApplication.java
new file mode 100644
index 000000000..d9de53e65
--- /dev/null
+++ b/org.eclipse.jubula.app.autagent/src/org/eclipse/jubula/app/autagent/AutAgentApplication.java
@@ -0,0 +1,173 @@
+/*******************************************************************************
+ * Copyright (c) 2004, 2011 BREDEX GmbH.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * BREDEX GmbH - initial API and implementation and/or initial documentation
+ *******************************************************************************/
+package org.eclipse.jubula.app.autagent;
+
+import java.io.IOException;
+
+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.OptionBuilder;
+import org.apache.commons.cli.OptionGroup;
+import org.apache.commons.cli.Options;
+import org.apache.commons.cli.ParseException;
+import org.apache.commons.cli.PosixParser;
+import org.eclipse.equinox.app.IApplication;
+import org.eclipse.equinox.app.IApplicationContext;
+import org.eclipse.jubula.autagent.AutStarter;
+import org.eclipse.jubula.tools.exception.JBVersionException;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+/**
+ *
+ * @author BREDEX GmbH
+ * @created Jun 21, 2011
+ */
+public class AutAgentApplication implements IApplication {
+
+ /** the logger */
+ private static final Logger LOG =
+ LoggerFactory.getLogger(AutAgentApplication.class);
+
+ /**
+ * <code>COMMANDLINE_OPTION_STOP</code>
+ */
+ private static final String COMMANDLINE_OPTION_STOP = "stop"; //$NON-NLS-1$
+
+ /** exit code in case of invalid options */
+ private static final int EXIT_INVALID_OPTIONS = -1;
+
+ /** exit code in case of option -h(elp) */
+ private static final int EXIT_HELP_OPTION = 0;
+
+ /** exit code in case of a security exception */
+ private static final int EXIT_SECURITY_VIOLATION = 1;
+
+ /** exit code in case of an io exception */
+ private static final int EXIT_IO_EXCEPTION = 2;
+
+ /** exit code in case of a version error between Client and AutStarter */
+ private static final int EXIT_CLIENT_SERVER_VERSION_ERROR = 4;
+
+ /**
+ *
+ * {@inheritDoc}
+ */
+ public Object start(IApplicationContext context) throws Exception {
+ String[] args = (String[])context.getArguments().get(
+ IApplicationContext.APPLICATION_ARGS);
+ if (args == null) {
+ args = new String[0];
+ }
+
+
+ // create the single instance here
+ final AutStarter server = AutStarter.getInstance();
+
+ CommandLineParser parser = new PosixParser();
+ try {
+ CommandLine cmd = parser.parse(createOptions(), args);
+ if (cmd.hasOption("h")) { //$NON-NLS-1$
+ printHelp();
+ return EXIT_HELP_OPTION;
+ }
+ server.setCmd(cmd);
+ } catch (ParseException pe) {
+ String message = "invalid option: "; //$NON-NLS-1$
+ LOG.error(message, pe);
+ printHelp();
+ System.exit(EXIT_INVALID_OPTIONS);
+ }
+
+ try {
+ server.start();
+ } catch (SecurityException se) {
+ LOG.error("security violation", se); //$NON-NLS-1$
+ return EXIT_SECURITY_VIOLATION;
+ } catch (IOException ioe) {
+ String message = "could not open socket: "; //$NON-NLS-1$
+ LOG.error(message, ioe);
+ return EXIT_IO_EXCEPTION;
+ } catch (NumberFormatException nfe) {
+ String message = "invalid value for option port"; //$NON-NLS-1$
+ LOG.error(message, nfe);
+ return EXIT_INVALID_OPTIONS;
+ } catch (NullPointerException npe) {
+ LOG.error("no command line", npe); //$NON-NLS-1$
+ printHelp();
+ return EXIT_INVALID_OPTIONS;
+ } catch (JBVersionException ve) {
+ LOG.error(ve.getMessage(), ve);
+ return EXIT_CLIENT_SERVER_VERSION_ERROR;
+ }
+
+ return IApplication.EXIT_OK;
+ }
+
+ /**
+ *
+ * {@inheritDoc}
+ */
+ public void stop() {
+ // no-op
+ }
+
+ /**
+ * method to create an options object, filled with all options
+ *
+ * @return the options
+ */
+ @SuppressWarnings("nls")
+ private static Options createOptions() {
+ Options options = new Options();
+
+ Option portOption = new Option("p", true, "the port to listen to");
+ portOption.setArgName("port");
+ options.addOption(portOption);
+
+ options.addOption("l", false, "lenient mode; does not shutdown AUTs "
+ + "that try to register themselves using an already "
+ + "registered AUT ID");
+ options.addOption("h", false, "prints this help text and exits");
+
+ OptionGroup verbosityOptions = new OptionGroup();
+ verbosityOptions.addOption(new Option("q", false, "quiet mode"));
+ verbosityOptions.addOption(new Option("v", false, "verbose mode"));
+ options.addOptionGroup(verbosityOptions);
+
+ OptionGroup startStopOptions = new OptionGroup();
+ startStopOptions.addOption(new Option("start", false,
+ "startup mode"));
+
+ OptionBuilder.hasOptionalArg();
+ Option stopOption = OptionBuilder.create(COMMANDLINE_OPTION_STOP);
+ stopOption.setDescription("stops a running AUT Agent instance "
+ + "for the given port "
+ + "on the given hostname (default \"localhost\")");
+ stopOption.setArgName("hostname");
+ startStopOptions.addOption(stopOption);
+ options.addOptionGroup(startStopOptions);
+
+ return options;
+ }
+
+ /**
+ * prints a formatted help text
+ */
+ private void printHelp() {
+ HelpFormatter formatter = new HelpFormatter();
+ formatter.printHelp("autagent", //$NON-NLS-1$
+ createOptions(), true);
+ }
+
+}
diff --git a/org.eclipse.jubula.autagent/.classpath b/org.eclipse.jubula.autagent/.classpath
index 0088eaaca..9690e9c6b 100644
--- a/org.eclipse.jubula.autagent/.classpath
+++ b/org.eclipse.jubula.autagent/.classpath
@@ -1,13 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
- <classpathentry kind="src" path="src"/>
- <classpathentry kind="src" path="/org.eclipse.jubula.communication"/>
+ <classpathentry kind="src" output="target/classes" path="src"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
- <classpathentry combineaccessrules="false" kind="src" path="/org.eclipse.jubula.tools"/>
- <classpathentry kind="lib" path="/org.eclipse.jubula.rc.common.orbit/org.apache.commons.cli_1.2.0.v201011021000.jar"/>
- <classpathentry kind="lib" path="/org.eclipse.jubula.rc.common.orbit/org.slf4j.api_1.5.11.v20100519-1910.jar"/>
- <classpathentry kind="lib" path="/org.eclipse.jubula.rc.common.orbit/org.slf4j.jcl_1.5.11.v20100419-1106.jar"/>
- <classpathentry kind="lib" path="/org.eclipse.jubula.rc.common.orbit/org.slf4j.log4j_1.5.11.v20100419-1106.jar"/>
- <classpathentry kind="lib" path="/org.eclipse.jubula.rc.common.orbit/slf4j-jdk14-1.5.11.jar"/>
- <classpathentry kind="output" path="bin"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="output" path="target/classes"/>
</classpath>
diff --git a/org.eclipse.jubula.autagent/.gitignore b/org.eclipse.jubula.autagent/.gitignore
index b3af49af9..64af1f50f 100644
--- a/org.eclipse.jubula.autagent/.gitignore
+++ b/org.eclipse.jubula.autagent/.gitignore
@@ -1,6 +1,3 @@
-/AUTLauncher.jar
-/org.eclipse.jubula.rc.common.agent.jar
/build
/bin
/target
-/org.eclipse.jubula.rc.common.orbit
diff --git a/org.eclipse.jubula.autagent/.project b/org.eclipse.jubula.autagent/.project
index 611ab90dc..199091696 100644
--- a/org.eclipse.jubula.autagent/.project
+++ b/org.eclipse.jubula.autagent/.project
@@ -17,9 +17,20 @@
<arguments>
</arguments>
</buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.ManifestBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.SchemaBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.jdt.core.javanature</nature>
<nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
+ <nature>org.eclipse.pde.PluginNature</nature>
</natures>
</projectDescription>
diff --git a/org.eclipse.jubula.autagent/.settings/org.eclipse.jdt.core.prefs b/org.eclipse.jubula.autagent/.settings/org.eclipse.jdt.core.prefs
index a6ca1ed2a..addd17811 100644
--- a/org.eclipse.jubula.autagent/.settings/org.eclipse.jdt.core.prefs
+++ b/org.eclipse.jubula.autagent/.settings/org.eclipse.jdt.core.prefs
@@ -1,13 +1,13 @@
-#Thu Jan 14 16:08:02 CET 2010
+#Thu Jun 09 18:26:02 CEST 2011
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.compliance=1.6
org.eclipse.jdt.core.compiler.debug.lineNumber=generate
org.eclipse.jdt.core.compiler.debug.localVariable=generate
org.eclipse.jdt.core.compiler.debug.sourceFile=generate
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.problem.unsafeTypeOperation=error
-org.eclipse.jdt.core.compiler.source=1.5
+org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
+org.eclipse.jdt.core.compiler.source=1.6
diff --git a/org.eclipse.jubula.autagent/META-INF/MANIFEST.MF b/org.eclipse.jubula.autagent/META-INF/MANIFEST.MF
new file mode 100644
index 000000000..5d250b232
--- /dev/null
+++ b/org.eclipse.jubula.autagent/META-INF/MANIFEST.MF
@@ -0,0 +1,24 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: Jubula AUT Agent
+Bundle-SymbolicName: org.eclipse.jubula.autagent;singleton:=true
+Bundle-Version: 1.0.0.qualifier
+Bundle-Vendor: Eclipse Jubula
+Export-Package: org.eclipse.jubula.autagent,
+ org.eclipse.jubula.autagent.agent,
+ org.eclipse.jubula.autagent.commands,
+ org.eclipse.jubula.autagent.desktop,
+ org.eclipse.jubula.autagent.gui,
+ org.eclipse.jubula.autagent.monitoring,
+ org.eclipse.jubula.autagent.remote.dialogs,
+ org.eclipse.jubula.autagent.test
+Require-Bundle: org.eclipse.core.runtime;bundle-version="[3.6.0,4.0.0)",
+ org.apache.commons.lang;bundle-version="[2.4.0,3.0.0)",
+ org.apache.commons.cli;bundle-version="[1.2.0,2.0.0)",
+ org.slf4j.api;bundle-version="[1.5.11,2.0.0)",
+ org.slf4j.jcl;bundle-version="[1.5.11,2.0.0)",
+ org.eclipse.jubula.tools;bundle-version="[1.0.0,2.0.0)",
+ org.eclipse.jubula.communication;bundle-version="[1.0.0,2.0.0)",
+ org.eclipse.equinox.launcher;bundle-version="[1.1.0,2.0.0)"
+Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+Bundle-ActivationPolicy: lazy
diff --git a/org.eclipse.jubula.autagent/build.properties b/org.eclipse.jubula.autagent/build.properties
new file mode 100644
index 000000000..839cc8937
--- /dev/null
+++ b/org.eclipse.jubula.autagent/build.properties
@@ -0,0 +1,18 @@
+###############################################################################
+# Copyright (c) 2004, 2011 BREDEX GmbH.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+###############################################################################
+bin.includes = about.html,\
+ META-INF/,\
+ .,\
+ plugin.xml,\
+ resources/
+jars.compile.order = .
+source.. = src/
+output.. = bin/
+javacSource = 1.6
+javacTarget = 1.6
+javacErrors.. = -assertIdentifier
diff --git a/org.eclipse.jubula.autagent/plugin.xml b/org.eclipse.jubula.autagent/plugin.xml
new file mode 100644
index 000000000..7231692ec
--- /dev/null
+++ b/org.eclipse.jubula.autagent/plugin.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+<plugin>
+ <extension-point id="org.eclipse.jubula.autagent.monitor" name="Jubula Monitoring Agent Definition" schema="schema/org.eclipse.jubula.autagent.monitor.exsd"/>
+
+</plugin>
diff --git a/org.eclipse.jubula.autagent/pom.xml b/org.eclipse.jubula.autagent/pom.xml
index e5138056a..74d2798de 100644
--- a/org.eclipse.jubula.autagent/pom.xml
+++ b/org.eclipse.jubula.autagent/pom.xml
@@ -3,41 +3,15 @@
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<parent>
- <artifactId>org.eclipse.jubula.releng.server</artifactId>
+ <artifactId>org.eclipse.jubula.releng.client</artifactId>
<groupId>org.eclipse.jubula</groupId>
<version>1.0.0-SNAPSHOT</version>
- <relativePath>../org.eclipse.jubula.releng.server</relativePath>
+ <relativePath>../org.eclipse.jubula.releng.client</relativePath>
</parent>
- <version>1.0.0-SNAPSHOT</version>
<groupId>org.eclipse.jubula</groupId>
<artifactId>org.eclipse.jubula.autagent</artifactId>
+ <version>1.0.0-SNAPSHOT</version>
+ <packaging>eclipse-plugin</packaging>
- <build>
- <sourceDirectory>src</sourceDirectory>
- <finalName>${project.artifactId}</finalName>
-
- <plugins>
- <plugin>
- <artifactId>maven-compiler-plugin</artifactId>
- <version>2.0.2</version>
- <configuration>
- <includes>
- <include>**/Startup.java</include>
- <include>**/ClassPathHacker.java</include>
- <include>**/AUTServerExitConstants.java</include>
- <include>**/commands/*.java</include>
- <include>**/gui/*.java</include>
- <include>**/AutStarter.java</include>
- <include>**/remote/**/*.java</include>
- <include>**/desktop/**/*.java</include>
- <include>**/agent/*.java</include>
- <include>**/monitoring/*.java</include>
- </includes>
- <source>1.6</source>
- <target>1.6</target>
- </configuration>
- </plugin>
- </plugins>
- </build>
</project>
diff --git a/org.eclipse.jubula.autagent/schema/org.eclipse.jubula.autagent.monitor.exsd b/org.eclipse.jubula.autagent/schema/org.eclipse.jubula.autagent.monitor.exsd
new file mode 100644
index 000000000..7e42ff856
--- /dev/null
+++ b/org.eclipse.jubula.autagent/schema/org.eclipse.jubula.autagent.monitor.exsd
@@ -0,0 +1,94 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!-- Schema file written by PDE -->
+<schema targetNamespace="org.eclipse.jubula.autagent" xmlns="http://www.w3.org/2001/XMLSchema">
+<annotation>
+ <appinfo>
+ <meta.schema plugin="org.eclipse.jubula.autagent" id="org.eclipse.jubula.autagent.monitor" name="Jubula Monitoring Agent Definition"/>
+ </appinfo>
+ <documentation>
+ The monitoring definition extension point allows plug-ins to register Java Agents that are capable of monitoring an AUT during test execution and reporting the results.
+ </documentation>
+ </annotation>
+
+ <element name="extension">
+ <annotation>
+ <appinfo>
+ <meta.element />
+ </appinfo>
+ </annotation>
+ <complexType>
+ <sequence>
+ <element ref="monitor"/>
+ </sequence>
+ <attribute name="point" type="string" use="required">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ </annotation>
+ </attribute>
+ <attribute name="id" type="string">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ </annotation>
+ </attribute>
+ <attribute name="name" type="string">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ <appinfo>
+ <meta.attribute translatable="true"/>
+ </appinfo>
+ </annotation>
+ </attribute>
+ </complexType>
+ </element>
+
+ <element name="monitor">
+ <complexType>
+ <attribute name="class" type="string" use="required">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ <appinfo>
+ <meta.attribute kind="java" basedOn=":org.eclipse.jubula.autagent.monitoring.IMonitoring"/>
+ </appinfo>
+ </annotation>
+ </attribute>
+ </complexType>
+ </element>
+
+ <annotation>
+ <appinfo>
+ <meta.section type="since"/>
+ </appinfo>
+ <documentation>
+ 1.0
+ </documentation>
+ </annotation>
+
+
+ <annotation>
+ <appinfo>
+ <meta.section type="apiinfo"/>
+ </appinfo>
+ <documentation>
+ The value of the class attribute in the monitor element must represent an implementor of org.eclipse.jubula.autagent.monitoring.IMonitoring that has a public 0-args constructor.
+ </documentation>
+ </annotation>
+
+
+ <annotation>
+ <appinfo>
+ <meta.section type="copyright"/>
+ </appinfo>
+ <documentation>
+ Copyright (c) 2004, 2010 BREDEX GmbH. All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
+ </documentation>
+ </annotation>
+
+</schema>
diff --git a/org.eclipse.jubula.autagent/src/org/eclipse/jubula/autagent/AutStarter.java b/org.eclipse.jubula.autagent/src/org/eclipse/jubula/autagent/AutStarter.java
index 7fbc3a2a8..b6f4403ac 100644
--- a/org.eclipse.jubula.autagent/src/org/eclipse/jubula/autagent/AutStarter.java
+++ b/org.eclipse.jubula.autagent/src/org/eclipse/jubula/autagent/AutStarter.java
@@ -21,6 +21,7 @@ import java.io.PrintStream;
import java.net.ConnectException;
import java.net.InetAddress;
import java.net.Socket;
+import java.net.UnknownHostException;
import java.util.HashMap;
import java.util.Map;
@@ -29,14 +30,6 @@ import javax.swing.UIManager;
import javax.swing.UnsupportedLookAndFeelException;
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.OptionBuilder;
-import org.apache.commons.cli.OptionGroup;
-import org.apache.commons.cli.Options;
-import org.apache.commons.cli.ParseException;
-import org.apache.commons.cli.PosixParser;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.eclipse.jubula.autagent.agent.AutAgent;
@@ -89,21 +82,6 @@ public class AutStarter {
/** the logger */
private static Log log = LogFactory.getLog(AutStarter.class);
- /** exit code in case of invalid options */
- private static final int EXIT_INVALID_OPTIONS = -1;
-
- /** exit code in case of option -h(elp) */
- private static final int EXIT_HELP_OPTION = 0;
-
- /** exit code in case of a security exception */
- private static final int EXIT_SECURITY_VIOLATION = 1;
-
- /** exit code in case of an io exception */
- private static final int EXIT_IO_EXCEPTION = 2;
-
- /** exit code in case of a version error between Client and AutStarter */
- private static final int EXIT_CLIENT_SERVER_VERSION_ERROR = 4;
-
/** the instance */
private static AutStarter instance = null;
@@ -173,68 +151,6 @@ public class AutStarter {
}
/**
- * method to create an options object, filled with all options
- *
- * @return the options
- */
- @SuppressWarnings("nls")
- private static Options createOptions() {
- Options options = new Options();
-
- Option portOption = new Option("p", true, "the port to listen to");
- portOption.setArgName("port");
- options.addOption(portOption);
-
- options.addOption("l", false, "lenient mode; does not shutdown AUTs "
- + "that try to register themselves using an already "
- + "registered AUT ID");
- options.addOption("h", false, "prints this help text and exits");
-
- OptionGroup verbosityOptions = new OptionGroup();
- verbosityOptions.addOption(new Option("q", false, "quiet mode"));
- verbosityOptions.addOption(new Option("v", false, "verbose mode"));
- options.addOptionGroup(verbosityOptions);
-
- OptionGroup startStopOptions = new OptionGroup();
- startStopOptions.addOption(new Option("start", false,
- "startup mode"));
-
- OptionBuilder.hasOptionalArg();
- Option stopOption = OptionBuilder.create(COMMANDLINE_OPTION_STOP);
- stopOption.setDescription("stops a running AUT Agent instance "
- + "for the given port "
- + "on the given hostname (default \"localhost\")");
- stopOption.setArgName("hostname");
- startStopOptions.addOption(stopOption);
- options.addOptionGroup(startStopOptions);
-
- return options;
- }
-
- /**
- * main method
- *
- * @param args -
- * the args, parsed with a PosixParser
- */
- public static void main(String[] args) {
- // create the single instance here
- final AutStarter server = AutStarter.getInstance();
-
- CommandLineParser parser = new PosixParser();
- try {
- server.setCmd(parser.parse(createOptions(), args));
- } catch (ParseException pe) {
- String message = "invalid option: "; //$NON-NLS-1$
- log.error(message, pe);
- server.printHelp();
- System.exit(EXIT_INVALID_OPTIONS);
- }
-
- server.start();
- }
-
- /**
* starts watching the given process <br>
* @param process the process representing an AutServer, must not be null
* @param isAgentSet true if executable file and agent are set.
@@ -320,23 +236,27 @@ public class AutStarter {
}
/**
- * start accepting connections
+ * Start accepting connections. This method blocks until the AUT Agent is
+ * shutdown.
+ *
+ * @throws IOException
+ * @throws UnknownHostException
+ * @throws JBVersionException
*/
- public void start() {
- int exitCode = 0;
+ public void start() throws UnknownHostException,
+ IOException, JBVersionException {
String infoMessage = I18n.getString("AUTAgent.StartErrorText"); //$NON-NLS-1$
+
+ Thread clientSocketThread = null;
+
try {
- if (m_cmd.hasOption("h")) { //$NON-NLS-1$
- printHelp();
- System.exit(EXIT_HELP_OPTION);
- }
boolean killDuplicateAuts = !m_cmd.hasOption("l");
getAgent().setKillDuplicateAuts(killDuplicateAuts);
int port = getPortNumber();
infoMessage = I18n.getString("AUTAgent.StartCommErrorText", //$NON-NLS-1$
new Object[] {StringConstants.EMPTY + port});
if (!m_cmd.hasOption(COMMANDLINE_OPTION_STOP)) {
- initClientConnectionSocket(port);
+ clientSocketThread = initClientConnectionSocket(port);
initAutConnectionSocket();
DesktopIntegration di = new DesktopIntegration(getAgent());
di.setPort(port);
@@ -367,31 +287,16 @@ public class AutStarter {
System.out.println("AUT Agent not found at " + hostname + ":" + port); //$NON-NLS-1$ //$NON-NLS-2$
}
}
- } catch (SecurityException se) {
- log.error("security violation", se); //$NON-NLS-1$
- exitCode = EXIT_SECURITY_VIOLATION;
- } catch (IOException ioe) {
- String message = "could not open socket: "; //$NON-NLS-1$
- log.error(message, ioe);
- exitCode = EXIT_IO_EXCEPTION;
- } catch (NumberFormatException nfe) {
- String message = "invalid value for option port"; //$NON-NLS-1$
- log.error(message, nfe);
- exitCode = EXIT_INVALID_OPTIONS;
- } catch (NullPointerException npe) {
- log.error("no command line", npe); //$NON-NLS-1$
- printHelp();
- exitCode = EXIT_INVALID_OPTIONS;
- } catch (JBVersionException ve) {
- log.error(ve.getMessage(), ve);
- exitCode = EXIT_CLIENT_SERVER_VERSION_ERROR;
} finally {
- // print information box to user
+ // print information box to user
if (infoMessage.length() > 0) {
showUserInfo(infoMessage);
}
- if (exitCode != 0) {
- System.exit(exitCode);
+
+ try {
+ clientSocketThread.join();
+ } catch (InterruptedException e) {
+ log.warn("Primary Thread was interrupted unexpectedly while waiting for client socket Thread to finish. Resuming execution of Primary Thread.", e); //$NON-NLS-1$
}
}
}
@@ -446,13 +351,16 @@ public class AutStarter {
*
* @param port
* int
+ *
+ * @return the Thread responsible for accepting connections.
+ *
* @throws IOException
* error
* @throws JBVersionException
* in case of version error between Client and AutStarter
*/
- private void initClientConnectionSocket(int port) throws IOException,
- JBVersionException {
+ private Thread initClientConnectionSocket(int port)
+ throws IOException, JBVersionException {
Map<String, IConnectionInitializer> clientTypeToInitializer =
new HashMap<String, IConnectionInitializer>();
@@ -465,7 +373,7 @@ public class AutStarter {
public void initConnection(Socket socket,
BufferedReader reader) {
System.out.println("Shutdown requested. Shutting down..."); //$NON-NLS-1$
- System.exit(0);
+ Thread.currentThread().interrupt();
}
});
// create a communicator
@@ -478,7 +386,7 @@ public class AutStarter {
logRunning();
// start listening
logStartListening();
- getCommunicator().run();
+ return getCommunicator().run();
}
/**
@@ -543,15 +451,6 @@ public class AutStarter {
}
/**
- * prints a formatted help text
- */
- private void printHelp() {
- HelpFormatter formatter = new HelpFormatter();
- formatter.printHelp("autagent", //$NON-NLS-1$
- createOptions(), true);
- }
-
- /**
* private method which prints a start message (java version)
*/
private void logRunning() {
diff --git a/org.eclipse.jubula.autagent/src/org/eclipse/jubula/autagent/commands/AbstractStartJavaAut.java b/org.eclipse.jubula.autagent/src/org/eclipse/jubula/autagent/commands/AbstractStartJavaAut.java
index 59b9a307f..76d9c4a82 100644
--- a/org.eclipse.jubula.autagent/src/org/eclipse/jubula/autagent/commands/AbstractStartJavaAut.java
+++ b/org.eclipse.jubula.autagent/src/org/eclipse/jubula/autagent/commands/AbstractStartJavaAut.java
@@ -248,19 +248,6 @@ public abstract class AbstractStartJavaAut extends AbstractStartToolkitAut {
* @return the name of the main class for the AUT server.
*/
protected abstract String getServerClassName();
-
- /**
- * @return the lib Jar containing all classes necessary to execute the
- * AUT server.
- */
- protected abstract String getServerJar();
-
- /**
- * @return the directory containing all classes necessary to execute the
- * AUT server.
- */
- protected abstract String getServerClasses();
-
/**
* @param cmds The command List. May <b>not</b> be <ocde>null</code>.
@@ -392,11 +379,8 @@ public abstract class AbstractStartJavaAut extends AbstractStartToolkitAut {
* @return the absolute path
*/
protected String getAbsoluteAgentJarPath() {
- final File agentJarDir = new File(CommandConstants.GDAGENT_JAR);
- final StringBuffer paths =
- new StringBuffer(agentJarDir.getAbsolutePath());
- String absPath = paths.toString();
- return absPath.replace('\\', '/');
+ return AbstractStartToolkitAut.getClasspathForBundleId(
+ CommandConstants.RC_COMMON_AGENT_BUNDLE_ID);
}
/**
diff --git a/org.eclipse.jubula.autagent/src/org/eclipse/jubula/autagent/commands/AbstractStartToolkitAut.java b/org.eclipse.jubula.autagent/src/org/eclipse/jubula/autagent/commands/AbstractStartToolkitAut.java
index 22c30e3c5..fc8590ca9 100644
--- a/org.eclipse.jubula.autagent/src/org/eclipse/jubula/autagent/commands/AbstractStartToolkitAut.java
+++ b/org.eclipse.jubula.autagent/src/org/eclipse/jubula/autagent/commands/AbstractStartToolkitAut.java
@@ -12,19 +12,28 @@ package org.eclipse.jubula.autagent.commands;
import java.io.File;
import java.io.IOException;
+import java.net.URL;
+import java.util.ArrayList;
+import java.util.Enumeration;
+import java.util.List;
import java.util.Map;
import java.util.Properties;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
+import org.eclipse.core.runtime.FileLocator;
+import org.eclipse.core.runtime.Platform;
import org.eclipse.jubula.autagent.AutStarter;
import org.eclipse.jubula.autagent.monitoring.MonitoringDataStore;
import org.eclipse.jubula.autagent.monitoring.MonitoringUtil;
import org.eclipse.jubula.communication.message.StartAUTServerStateMessage;
import org.eclipse.jubula.tools.constants.AutConfigConstants;
import org.eclipse.jubula.tools.constants.AutEnvironmentConstants;
+import org.eclipse.jubula.tools.constants.CommandConstants;
import org.eclipse.jubula.tools.constants.StringConstants;
import org.eclipse.jubula.tools.utils.EnvironmentUtils;
+import org.eclipse.jubula.tools.utils.ZipUtil;
+import org.osgi.framework.Bundle;
/**
@@ -263,5 +272,75 @@ public abstract class AbstractStartToolkitAut implements IStartAut {
String absPath = paths.toString();
return absPath.replace('\\', '/');
}
-
+
+ /**
+ *
+ * @param bundleId The ID of the bundle to search for classpath entries.
+ * @return classpath entries contained within the bundle with the given ID.
+ * If
+ * <ul>
+ * <li>the bundle cannot be resolved to a file, or</li>
+ * <li>the bundle is not a JAR file and the bundle's directory contains no JAR files</li>
+ * </ul>
+ * an empty array will be returned.
+ */
+ @SuppressWarnings("unchecked")
+ public static String[] getClasspathEntriesForBundleId(String bundleId) {
+ Bundle bundle = Platform.getBundle(bundleId);
+ List<String> classpathEntries = new ArrayList<String>();
+ try {
+ File bundleFile = FileLocator.getBundleFile(bundle);
+ if (bundleFile.isFile()) {
+ // bundle file is not a directory, so we assume it's a JAR file
+ classpathEntries.add(bundleFile.getAbsolutePath());
+
+ // since the classloader cannot handle nested JARs, we need to extract
+ // all known nested JARs and add them to the classpath
+ try {
+ // assuming that it's a JAR/ZIP file
+ File[] createdFiles = ZipUtil.unzipTempJars(bundleFile);
+ for (int i = 0; i < createdFiles.length; i++) {
+ classpathEntries.add(createdFiles[i].getAbsolutePath());
+ }
+ } catch (IOException e) {
+ log.error("An error occurred while trying to extract nested JARs from " + CommandConstants.TOOLS_BUNDLE_ID, e); //$NON-NLS-1$
+ }
+ } else {
+ Enumeration<URL> e = bundle.findEntries(
+ "/", "*.jar", true); //$NON-NLS-1$//$NON-NLS-2$
+ while (e.hasMoreElements()) {
+ URL jarUrl = e.nextElement();
+ classpathEntries.add(
+ new File(bundleFile + jarUrl.getFile())
+ .getAbsolutePath());
+ }
+ }
+ } catch (IOException ioe) {
+ log.error("Bundle with ID '" + bundleId + "' could not be resolved to a file.", ioe); //$NON-NLS-1$//$NON-NLS-2$
+ }
+
+ return classpathEntries.toArray(new String[classpathEntries.size()]);
+ }
+
+ /**
+ *
+ * @param bundleId The ID of the bundle to search for a classpath.
+ * @return the classpath contained within the bundle with the given ID.
+ * If
+ * <ul>
+ * <li>the bundle cannot be resolved to a file, or</li>
+ * <li>the bundle is not a JAR file and the bundle's directory contains no JAR files</li>
+ * </ul>
+ * an empty String will be returned.
+ */
+ public static String getClasspathForBundleId(String bundleId) {
+ StringBuilder pathBuilder = new StringBuilder();
+ for (String entry : getClasspathEntriesForBundleId(bundleId)) {
+ pathBuilder.append(entry).append(PATH_SEPARATOR);
+ }
+
+ return pathBuilder.substring(
+ 0, pathBuilder.lastIndexOf(PATH_SEPARATOR));
+ }
+
} \ No newline at end of file
diff --git a/org.eclipse.jubula.autagent/src/org/eclipse/jubula/autagent/commands/StartHtmlAutServerCommand.java b/org.eclipse.jubula.autagent/src/org/eclipse/jubula/autagent/commands/StartHtmlAutServerCommand.java
index 3a7e49d8b..08fdd78ca 100644
--- a/org.eclipse.jubula.autagent/src/org/eclipse/jubula/autagent/commands/StartHtmlAutServerCommand.java
+++ b/org.eclipse.jubula.autagent/src/org/eclipse/jubula/autagent/commands/StartHtmlAutServerCommand.java
@@ -21,6 +21,7 @@ import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.eclipse.jubula.autagent.AutStarter;
import org.eclipse.jubula.tools.constants.AutConfigConstants;
+import org.eclipse.jubula.tools.constants.CommandConstants;
import org.eclipse.jubula.tools.utils.EnvironmentUtils;
@@ -34,17 +35,6 @@ public class StartHtmlAutServerCommand extends AbstractStartToolkitAut {
*/
private static final String DEFAULT_AUT_ID_ATTRIBUTE_NAME = "id"; //$NON-NLS-1$
- /**
- * <code>LIB_DIR</code>
- */
- private static final String LIB_DIR = FILE_SEPARATOR
- + "lib" + FILE_SEPARATOR; //$NON-NLS-1$
-
- /**
- * <code>MAIN_JAR</code>
- */
- private static final String MAIN_JAR = "com.bredexsw.jubula.rc.html.jar"; //$NON-NLS-1$
-
/**
* mapping from browser type (String) to corresponding
* Selenium browser command (String)
@@ -98,13 +88,35 @@ public class StartHtmlAutServerCommand extends AbstractStartToolkitAut {
}
commands.add(JAVA_UTIL_LOGGING_CONFIG_FILE_PROPERTY
+ getAbsoluteLoggingConfPath());
-
- File serverDir = new File("."); //$NON-NLS-1$
- commands.add("-jar"); //$NON-NLS-1$
- StringBuffer cmd = new StringBuffer(LIB_DIR + MAIN_JAR);
- cmd.insert(0, serverDir.getAbsolutePath());
- commands.add(cmd.toString());
-
+
+ StringBuilder serverClasspath = new StringBuilder();
+ String [] bundlesToAddToClasspath = {
+ CommandConstants.TOOLS_BUNDLE_ID,
+ CommandConstants.COMMUNICATION_BUNDLE_ID,
+ CommandConstants.RC_COMMON_BUNDLE_ID,
+ CommandConstants.RC_HTML_BUNDLE_ID,
+ CommandConstants.SLF4J_JCL_BUNDLE_ID,
+ CommandConstants.SLF4J_API_BUNDLE_ID,
+ CommandConstants.SLF4J_LOG4J_BUNDLE_ID,
+ CommandConstants.LOGBACK_CLASSIC_BUNDLE_ID,
+ CommandConstants.LOGBACK_CORE_BUNDLE_ID,
+ CommandConstants.LOGBACK_SLF4J_BUNDLE_ID,
+ CommandConstants.COMMONS_LANG_BUNDLE_ID,
+ CommandConstants.APACHE_ORO_BUNDLE_ID,
+ CommandConstants.COMMONS_COLLECTIONS_BUNDLE_ID
+ };
+
+ for (String bundleId : bundlesToAddToClasspath) {
+ serverClasspath.append(
+ AbstractStartToolkitAut.getClasspathForBundleId(bundleId));
+ serverClasspath.append(PATH_SEPARATOR);
+ }
+
+ commands.add("-classpath"); //$NON-NLS-1$
+ commands.add(serverClasspath.toString());
+
+ commands.add("com.bredexsw.jubula.rc.html.WebAUTServer"); //$NON-NLS-1$
+
// connection parameters
commands.add(String.valueOf(
AutStarter.getInstance().getAutCommunicator().getLocalPort()));
diff --git a/org.eclipse.jubula.autagent/src/org/eclipse/jubula/autagent/commands/StartRcpAutServerCommand.java b/org.eclipse.jubula.autagent/src/org/eclipse/jubula/autagent/commands/StartRcpAutServerCommand.java
index 1c807ee4e..89e282dc0 100644
--- a/org.eclipse.jubula.autagent/src/org/eclipse/jubula/autagent/commands/StartRcpAutServerCommand.java
+++ b/org.eclipse.jubula.autagent/src/org/eclipse/jubula/autagent/commands/StartRcpAutServerCommand.java
@@ -155,20 +155,6 @@ public class StartRcpAutServerCommand extends AbstractStartJavaAut {
/**
* {@inheritDoc}
*/
- protected String getServerClasses() {
- return CommandConstants.AUT_SWT_SERVER_BIN;
- }
-
- /**
- * {@inheritDoc}
- */
- protected String getServerJar() {
- return CommandConstants.AUT_SWT_SERVER_JAR;
- }
-
- /**
- * {@inheritDoc}
- */
protected String[] createCmdArray(String baseCmd, Map parameters) {
List cmds;
diff --git a/org.eclipse.jubula.autagent/src/org/eclipse/jubula/autagent/commands/StartSwingAutServerCommand.java b/org.eclipse.jubula.autagent/src/org/eclipse/jubula/autagent/commands/StartSwingAutServerCommand.java
index 739cb3fc4..ad6722845 100644
--- a/org.eclipse.jubula.autagent/src/org/eclipse/jubula/autagent/commands/StartSwingAutServerCommand.java
+++ b/org.eclipse.jubula.autagent/src/org/eclipse/jubula/autagent/commands/StartSwingAutServerCommand.java
@@ -102,12 +102,8 @@ public class StartSwingAutServerCommand extends AbstractStartJavaAut {
List cmds = new Vector();
cmds.add(baseCmd);
- String classpath = System.getProperty("java.class.path"); //$NON-NLS-1$
- if (LOG.isDebugEnabled()) {
- LOG.debug("classPath:" + classpath); //$NON-NLS-1$
- }
StringBuffer autServerClasspath = new StringBuffer();
- createServerClasspath(classpath, autServerClasspath);
+ createServerClasspath(autServerClasspath);
List autAgentArgs = new ArrayList();
autAgentArgs.add(String.valueOf(
@@ -125,9 +121,10 @@ public class StartSwingAutServerCommand extends AbstractStartJavaAut {
// information for aut server that agent is not used
cmds.add("false"); //$NON-NLS-1$
} else {
- String serverBasePath = createServerBasePath(parameters);
- autServerClasspath.append(PATH_SEPARATOR).append(serverBasePath);
- createServerDirs(autServerClasspath);
+ String serverBasePath = createServerBasePath();
+ autServerClasspath.append(PATH_SEPARATOR)
+ .append(serverBasePath).append(PATH_SEPARATOR)
+ .append(getRcBundleClassPath());
m_autServerClasspath = autServerClasspath.toString();
}
@@ -163,26 +160,35 @@ public class StartSwingAutServerCommand extends AbstractStartJavaAut {
}
/**
* Creates the Server classpath.
- * @param classpath the classpath
* @param serverClasspath the server classpath
*/
- private void createServerClasspath(String classpath,
- StringBuffer serverClasspath) {
+ private void createServerClasspath(StringBuffer serverClasspath) {
+
+ String [] bundlesToAddToClasspath = {
+ CommandConstants.TOOLS_BUNDLE_ID,
+ CommandConstants.COMMUNICATION_BUNDLE_ID,
+ CommandConstants.RC_COMMON_BUNDLE_ID,
+ CommandConstants.SLF4J_JCL_BUNDLE_ID,
+ CommandConstants.SLF4J_API_BUNDLE_ID,
+ CommandConstants.SLF4J_LOG4J_BUNDLE_ID,
+ CommandConstants.LOGBACK_CLASSIC_BUNDLE_ID,
+ CommandConstants.LOGBACK_CORE_BUNDLE_ID,
+ CommandConstants.LOGBACK_SLF4J_BUNDLE_ID,
+ CommandConstants.COMMONS_LANG_BUNDLE_ID,
+ CommandConstants.APACHE_ORO_BUNDLE_ID,
+ CommandConstants.COMMONS_BEAN_UTILS_BUNDLE_ID,
+ CommandConstants.COMMONS_COLLECTIONS_BUNDLE_ID
+ };
- StringTokenizer classpathElems = new StringTokenizer(classpath,
- PATH_SEPARATOR);
- while (classpathElems.hasMoreTokens()) {
- String pathElem = classpathElems.nextToken();
- File filePathElem = new File(pathElem);
- serverClasspath.append(filePathElem.getAbsolutePath());
- if (classpathElems.hasMoreTokens()) {
- serverClasspath.append(PATH_SEPARATOR);
- }
+ for (String bundleId : bundlesToAddToClasspath) {
+ serverClasspath.append(
+ AbstractStartToolkitAut.getClasspathForBundleId(bundleId));
+ serverClasspath.append(PATH_SEPARATOR);
}
- serverClasspath.append(PATH_SEPARATOR);
+
+
serverClasspath.append(getAbsExtImplClassesPath());
if (LOG.isDebugEnabled()) {
- LOG.debug("classPath:" + classpath); //$NON-NLS-1$
LOG.debug("serverClasspath" + serverClasspath); //$NON-NLS-1$
}
}
@@ -198,8 +204,10 @@ public class StartSwingAutServerCommand extends AbstractStartJavaAut {
addBaseSettings(cmds, parameters);
cmds.add("-classpath"); //$NON-NLS-1$
StringBuffer autClassPath = createAutClasspath(parameters);
- String serverBasePath = createServerBasePath(parameters);
- cmds.add(autClassPath.append(serverBasePath).toString());
+ String serverBasePath = createServerBasePath();
+ cmds.add(
+ autClassPath.append(PATH_SEPARATOR)
+ .append(serverBasePath).toString());
// add classname of autLauncher
cmds.add(CommandConstants.AUT_SERVER_LAUNCHER);
// add autServerBase dirs to autServerClassPath
@@ -239,20 +247,12 @@ public class StartSwingAutServerCommand extends AbstractStartJavaAut {
}
/**
- * @param parameters The parameters for starting the AUT.
+ *
* @return the server base path including resources path
*/
- private String createServerBasePath(Map parameters) {
- // path for IDE version
- File filePathElem = new File(CommandConstants.AUT_SERVER_BASE_BIN);
- // path for the BuildVersion
- String serverBasePath = filePathElem.getAbsolutePath();
- if (!isRunningFromExecutable(parameters)) {
- filePathElem = new File(CommandConstants.AUT_LAUNCHER_JAR);
- final String autLauncherJarDir = filePathElem.getAbsolutePath();
- serverBasePath += PATH_SEPARATOR + autLauncherJarDir;
- }
- return serverBasePath;
+ private String createServerBasePath() {
+ return AbstractStartToolkitAut.getClasspathForBundleId(
+ CommandConstants.RC_COMMON_BUNDLE_ID);
}
/**
@@ -277,28 +277,26 @@ public class StartSwingAutServerCommand extends AbstractStartJavaAut {
return;
}
cmds.add(autMain);
- createServerDirs(autServerClasspath);
+ autServerClasspath.append(PATH_SEPARATOR)
+ .append(getRcBundleClassPath());
cmds.add(autServerClasspath.toString());
cmds.add(getServerClassName());
}
-
+
/**
- * Adds AUT server bin dir and jar dir to autServerClasspath.
- * @param autServerClasspath the server classpath
+ *
+ * @return the class path corresponding to the receiver's RC bundle.
*/
- private void createServerDirs(StringBuffer autServerClasspath) {
- String autServerClasses = getServerClasses();
- String autServerJar = getServerJar();
+ protected String getRcBundleClassPath() {
+ return AbstractStartToolkitAut.getClasspathForBundleId(getRcBundleId());
+ }
- // path to /bin
- File filePathElem = new File(autServerClasses);
- String autServerBinDir = filePathElem.getAbsolutePath();
- // for the BuildVersion
- filePathElem = new File(autServerJar);
- String autServerJarDir = filePathElem.getAbsolutePath();
-
- autServerClasspath.append(PATH_SEPARATOR).append(autServerBinDir)
- .append(PATH_SEPARATOR).append(autServerJarDir);
+ /**
+ *
+ * @return the ID of the receiver's RC bundle.
+ */
+ protected String getRcBundleId() {
+ return CommandConstants.RC_SWING_BUNDLE_ID;
}
/**
@@ -399,11 +397,8 @@ public class StartSwingAutServerCommand extends AbstractStartJavaAut {
* @return the absolute path
*/
protected String getAbsoluteAgentJarPath() {
- final File agentJarDir = new File(CommandConstants.GDAGENT_JAR);
- final StringBuffer paths =
- new StringBuffer(agentJarDir.getAbsolutePath());
- String absPath = paths.toString();
- return absPath.replace('\\', '/');
+ return AbstractStartToolkitAut.getClasspathForBundleId(
+ CommandConstants.RC_COMMON_AGENT_BUNDLE_ID);
}
/**
@@ -413,18 +408,4 @@ public class StartSwingAutServerCommand extends AbstractStartJavaAut {
return CommandConstants.AUT_SWING_SERVER;
}
- /**
- * {@inheritDoc}
- */
- protected String getServerClasses() {
- return CommandConstants.AUT_SERVER_BIN;
- }
-
- /**
- * {@inheritDoc}
- */
- protected String getServerJar() {
- return CommandConstants.AUT_SERVER_JAR;
- }
-
}
diff --git a/org.eclipse.jubula.autagent/src/org/eclipse/jubula/autagent/commands/StartSwtAutServerCommand.java b/org.eclipse.jubula.autagent/src/org/eclipse/jubula/autagent/commands/StartSwtAutServerCommand.java
index f5da49844..b7e3f4316 100644
--- a/org.eclipse.jubula.autagent/src/org/eclipse/jubula/autagent/commands/StartSwtAutServerCommand.java
+++ b/org.eclipse.jubula.autagent/src/org/eclipse/jubula/autagent/commands/StartSwtAutServerCommand.java
@@ -50,36 +50,6 @@ public class StartSwtAutServerCommand extends StartSwingAutServerCommand {
}
/**
- * {@inheritDoc}
- */
- protected String getServerClasses() {
- return CommandConstants.AUT_SWT_SERVER_BIN;
- }
-
- /**
- * {@inheritDoc}
- */
- protected String getServerJar() {
- return CommandConstants.AUT_SWT_SERVER_JAR;
- }
-
- /**
- * {@inheritDoc}
- */
- protected String[] createCmdArray(String baseCmd, Map parameters) {
- final String[] superCmdArray = super.createCmdArray(baseCmd,
- parameters);
- if (isRunningFromExecutable(parameters)) {
- return superCmdArray;
- }
- final List tmpList = Arrays.asList(superCmdArray);
- final List cmdList = new ArrayList(tmpList);
- final String[] cmdArray = (String[])cmdList.toArray(
- new String[cmdList.size()]);
- return cmdArray;
- }
-
- /**
*
* {@inheritDoc}
*/
@@ -120,4 +90,12 @@ public class StartSwtAutServerCommand extends StartSwingAutServerCommand {
return props;
}
+ /**
+ *
+ * {@inheritDoc}
+ */
+ protected String getRcBundleId() {
+ return CommandConstants.RC_SWT_BUNDLE_ID;
+ }
+
}
diff --git a/org.eclipse.jubula.autagent/src/org/eclipse/jubula/autagent/desktop/DesktopIntegration.java b/org.eclipse.jubula.autagent/src/org/eclipse/jubula/autagent/desktop/DesktopIntegration.java
index 0cf68f391..7ac1c2cac 100644
--- a/org.eclipse.jubula.autagent/src/org/eclipse/jubula/autagent/desktop/DesktopIntegration.java
+++ b/org.eclipse.jubula.autagent/src/org/eclipse/jubula/autagent/desktop/DesktopIntegration.java
@@ -72,10 +72,10 @@ public class DesktopIntegration implements PropertyChangeListener {
SystemTray tray = SystemTray.getSystemTray();
URL imageURL;
if (EnvironmentUtils.isMacOS()) {
- imageURL = ClassLoader.getSystemResource("gdagent_osx.png"); //$NON-NLS-1$
+ imageURL = this.getClass().getClassLoader().getResource("resources/gdagent_osx.png"); //$NON-NLS-1$
} else {
- imageURL = ClassLoader.getSystemResource("gdagent.png"); //$NON-NLS-1$
+ imageURL = this.getClass().getClassLoader().getResource("resources/gdagent.png"); //$NON-NLS-1$
}
Image image = Toolkit.getDefaultToolkit().getImage(imageURL);
diff --git a/org.eclipse.jubula.autstarter/.gitignore b/org.eclipse.jubula.autstarter/.gitignore
deleted file mode 100644
index c41cc9e35..000000000
--- a/org.eclipse.jubula.autstarter/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-/target \ No newline at end of file
diff --git a/org.eclipse.jubula.autstarter/.project b/org.eclipse.jubula.autstarter/.project
deleted file mode 100644
index 8e46d4401..000000000
--- a/org.eclipse.jubula.autstarter/.project
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.jubula.autstarter</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.maven.ide.eclipse.maven2Builder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.maven.ide.eclipse.maven2Nature</nature>
- </natures>
-</projectDescription>
diff --git a/org.eclipse.jubula.autstarter/.settings/org.maven.ide.eclipse.prefs b/org.eclipse.jubula.autstarter/.settings/org.maven.ide.eclipse.prefs
deleted file mode 100644
index af38379eb..000000000
--- a/org.eclipse.jubula.autstarter/.settings/org.maven.ide.eclipse.prefs
+++ /dev/null
@@ -1,8 +0,0 @@
-#Thu Apr 28 17:27:51 CEST 2011
-activeProfiles=
-eclipse.preferences.version=1
-fullBuildGoals=process-test-resources
-resolveWorkspaceProjects=true
-resourceFilterGoals=process-resources resources\:testResources
-skipCompilerPlugin=true
-version=1
diff --git a/org.eclipse.jubula.autstarter/pom.xml b/org.eclipse.jubula.autstarter/pom.xml
deleted file mode 100644
index 130e5cfc0..000000000
--- a/org.eclipse.jubula.autstarter/pom.xml
+++ /dev/null
@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
- <modelVersion>4.0.0</modelVersion>
- <parent>
- <artifactId>org.eclipse.jubula.releng.server</artifactId>
- <groupId>org.eclipse.jubula</groupId>
- <version>0.9.0-SNAPSHOT</version>
- <relativePath>../org.eclipse.jubula.releng.server</relativePath>
- </parent>
-
- <version>0.9.0-SNAPSHOT</version>
- <groupId>org.eclipse.jubula</groupId>
- <artifactId>org.eclipse.jubula.autstarter</artifactId>
-
- <build>
- <sourceDirectory>../org.eclipse.jubula.autagent/src</sourceDirectory>
- <finalName>AutStarter</finalName>
-
- <plugins>
- <plugin>
- <artifactId>maven-compiler-plugin</artifactId>
- <version>2.0.2</version>
- <configuration>
- <includes>
- <include>**/AutStarter.java</include>
- <include>**/AUTServerExitConstants.java</include>
- <include>**/commands/*.java</include>
- <include>**/gui/*.java</include>
- <include>**/remote/**/*.java</include>
- <include>**/desktop/**/*.java</include>
- <include>**/agent/*.java</include>
- <include>**/MainClassLocator.java</include>
- <include>**/JarResources.java</include>
- <include>**/monitoring/*.java</include>
- </includes>
- <source>1.6</source>
- <target>1.6</target>
- </configuration>
- </plugin>
- </plugins>
- </build>
-</project>
diff --git a/org.eclipse.jubula.communication/META-INF/MANIFEST.MF b/org.eclipse.jubula.communication/META-INF/MANIFEST.MF
index c4cc7e1e1..1148aa129 100644
--- a/org.eclipse.jubula.communication/META-INF/MANIFEST.MF
+++ b/org.eclipse.jubula.communication/META-INF/MANIFEST.MF
@@ -6,12 +6,13 @@ Bundle-Version: 1.0.0.qualifier
Bundle-ClassPath: .
Bundle-Vendor: Eclipse Jubula
Export-Package: org.eclipse.jubula.communication,
+ org.eclipse.jubula.communication.commands,
org.eclipse.jubula.communication.connection,
org.eclipse.jubula.communication.listener,
org.eclipse.jubula.communication.message,
+ org.eclipse.jubula.communication.message.html,
org.eclipse.jubula.communication.message.swing,
org.eclipse.jubula.communication.message.swt,
- org.eclipse.jubula.communication.message.html,
org.eclipse.jubula.communication.parser,
org.eclipse.jubula.communication.writer
Require-Bundle: org.eclipse.jubula.tools;bundle-version="[1.0.0,2.0.0)";visibility:=reexport,
diff --git a/org.eclipse.jubula.communication/src/org/eclipse/jubula/communication/Communicator.java b/org.eclipse.jubula.communication/src/org/eclipse/jubula/communication/Communicator.java
index a3d21d0a6..1865fb2df 100644
--- a/org.eclipse.jubula.communication/src/org/eclipse/jubula/communication/Communicator.java
+++ b/org.eclipse.jubula.communication/src/org/eclipse/jubula/communication/Communicator.java
@@ -285,18 +285,22 @@ public class Communicator {
* the listeners are notified with connectingFailed() and acceptingFailed
* respectively.
*
+ * @return the Thread responsible for accepting connections, or
+ * <code>null</code> if the the receiver is acting as a client.
* @throws SecurityException
* if the security manager does not allow connections.
* @throws JBVersionException
* in case of version error between Client and AutStarter
*/
- public synchronized void run() throws SecurityException,
+ public synchronized Thread run() throws SecurityException,
JBVersionException {
+ Thread acceptingThread = null;
if (m_serverSocket != null && !isAccepting()) {
// it's a server that hasn't yet started accepting connections
setAccepting(true);
- new AcceptingThread().start();
+ acceptingThread = new AcceptingThread();
+ acceptingThread.start();
} else if (m_inetAddress != null) {
// it's a client
try {
@@ -321,6 +325,8 @@ public class Communicator {
throw se;
}
}
+
+ return acceptingThread;
}
/**
@@ -1007,7 +1013,7 @@ public class Communicator {
* {@inheritDoc}
*/
public void run() {
- while (isAccepting()) {
+ while (isAccepting() && !Thread.currentThread().isInterrupted()) {
try {
Socket socket = m_serverSocket.accept();
BufferedReader reader = new BufferedReader(
diff --git a/org.eclipse.jubula.documentation/build.xml b/org.eclipse.jubula.documentation/build.xml
index 84dfa524a..580e91b06 100644
--- a/org.eclipse.jubula.documentation/build.xml
+++ b/org.eclipse.jubula.documentation/build.xml
@@ -66,7 +66,6 @@
<ant dir="${buildRoot}/gefapi/javadoc" antfile="javadoc.xml"
target="javadoc" inheritAll="false" inheritRefs="false">
<property name="outputdir" location="${buildRoot}/gefapi/javadoc/html" />
- <reference refid="rc.gef.extension.classpath" />
<reference refid="rc.gef.extension.sourcepath" />
</ant>
<delete dir="${buildRoot}/gefapi/javadoc/zip" />
diff --git a/org.eclipse.jubula.documentation/gefapi/javadoc/javadoc.xml b/org.eclipse.jubula.documentation/gefapi/javadoc/javadoc.xml
index 52f0ed45d..da38974ba 100644
--- a/org.eclipse.jubula.documentation/gefapi/javadoc/javadoc.xml
+++ b/org.eclipse.jubula.documentation/gefapi/javadoc/javadoc.xml
@@ -8,8 +8,6 @@
<project default="javadoc">
<target name="javadoc">
- <property name="cp" refid="rc.gef.extension.classpath"/>
- <echo message="Classpath is ${cp}"/>
<property name="sp" refid="rc.gef.extension.sourcepath"/>
<echo message="Sourcepath is ${sp}"/>
@@ -23,7 +21,6 @@
nonavbar="false"
notree="false"
packagenames="org.eclipse.jubula.rc.rcp.gef.identifier"
- classpathref="rc.gef.extension.classpath"
sourcepathref="rc.gef.extension.sourcepath"
splitindex="true"
use="true"
diff --git a/org.eclipse.jubula.examples/buildScript.xml b/org.eclipse.jubula.examples/buildScript.xml
index 5f5200ab4..fb26261db 100644
--- a/org.eclipse.jubula.examples/buildScript.xml
+++ b/org.eclipse.jubula.examples/buildScript.xml
@@ -150,11 +150,15 @@
<target name="releaseExampleSwingServerExtension">
<copy todir="../${ExampleSwingExtensionServer}/lib" overwrite="true">
- <fileset file="${release}/server/lib/org.eclipse.jubula.rc.common.jar"/>
- <fileset file="${release}/server/lib/org.eclipse.jubula.rc.swing.jar"/>
+ <fileset file="${release}/server/plugins/org.eclipse.jubula.rc.common_*.jar"/>
+ <mapper type="merge" to="org.eclipse.jubula.rc.common.jar"/>
</copy>
<copy todir="../${ExampleSwingExtensionServer}/lib" overwrite="true">
- <fileset dir="${release}/server/lib/">
+ <fileset file="${release}/server/plugins/org.eclipse.jubula.rc.swing_*.jar"/>
+ <mapper type="merge" to="org.eclipse.jubula.rc.swing.jar"/>
+ </copy>
+ <copy todir="../${ExampleSwingExtensionServer}/lib" overwrite="true">
+ <fileset dir="${release}/server/plugins/">
<include name="*tools*.jar"/>
</fileset>
<mapper type="merge" to="org.eclipse.jubula.tools.jar"/>
diff --git a/org.eclipse.jubula.feature/feature.xml b/org.eclipse.jubula.feature/feature.xml
index 926582682..5b7b1588f 100644
--- a/org.eclipse.jubula.feature/feature.xml
+++ b/org.eclipse.jubula.feature/feature.xml
@@ -308,4 +308,38 @@ BREDEX GmbH - initial API and implementation and/or initial documentation
version="0.0.0"
unpack="false"/>
+ <plugin
+ id="org.eclipse.jubula.rc.common"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.eclipse.jubula.rc.common.agent"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.eclipse.jubula.rc.rcp"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"/>
+
+ <plugin
+ id="org.eclipse.jubula.rc.swing"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.eclipse.jubula.rc.swt"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
</feature>
diff --git a/org.eclipse.jubula.rc.common.autlauncher/.gitignore b/org.eclipse.jubula.product.autagent.start/.gitignore
index ea8c4bf7f..ea8c4bf7f 100644
--- a/org.eclipse.jubula.rc.common.autlauncher/.gitignore
+++ b/org.eclipse.jubula.product.autagent.start/.gitignore
diff --git a/org.eclipse.jubula.product.autagent.start/.project b/org.eclipse.jubula.product.autagent.start/.project
new file mode 100644
index 000000000..fa6d01192
--- /dev/null
+++ b/org.eclipse.jubula.product.autagent.start/.project
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.jubula.product.autagent.start</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ </buildSpec>
+ <natures>
+ </natures>
+</projectDescription>
diff --git a/org.eclipse.jubula.product.autagent.start/org.eclipse.jubula.product.autagent.start.product b/org.eclipse.jubula.product.autagent.start/org.eclipse.jubula.product.autagent.start.product
new file mode 100644
index 000000000..3a080ee43
--- /dev/null
+++ b/org.eclipse.jubula.product.autagent.start/org.eclipse.jubula.product.autagent.start.product
@@ -0,0 +1,58 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?pde version="3.5"?>
+
+<product name="Start AUT Agent" uid="org.eclipse.jubula.product.autagent.start.product" application="org.eclipse.jubula.app.autagent" version="1.0.0.qualifier" useFeatures="false" includeLaunchers="false">
+
+ <configIni use="default">
+ </configIni>
+
+ <launcherArgs>
+ <vmArgsMac>-XstartOnFirstThread -Dorg.eclipse.swt.internal.carbon.smallFonts</vmArgsMac>
+ </launcherArgs>
+
+ <windowImages/>
+
+ <launcher name="autagent">
+ </launcher>
+
+ <vm>
+ </vm>
+
+
+ <plugins>
+ <plugin id="ch.qos.logback.classic"/>
+ <plugin id="ch.qos.logback.core"/>
+ <plugin id="ch.qos.logback.slf4j" fragment="true"/>
+ <plugin id="javax.servlet"/>
+ <plugin id="org.apache.commons.beanutils"/>
+ <plugin id="org.apache.commons.cli"/>
+ <plugin id="org.apache.commons.collections"/>
+ <plugin id="org.apache.commons.lang"/>
+ <plugin id="org.apache.commons.logging"/>
+ <plugin id="org.apache.oro"/>
+ <plugin id="org.eclipse.core.contenttype"/>
+ <plugin id="org.eclipse.core.jobs"/>
+ <plugin id="org.eclipse.core.runtime"/>
+ <plugin id="org.eclipse.core.runtime.compatibility.auth"/>
+ <plugin id="org.eclipse.core.runtime.compatibility.registry" fragment="true"/>
+ <plugin id="org.eclipse.equinox.app"/>
+ <plugin id="org.eclipse.equinox.common"/>
+ <plugin id="org.eclipse.equinox.preferences"/>
+ <plugin id="org.eclipse.equinox.registry"/>
+ <plugin id="org.eclipse.jubula.app.autagent"/>
+ <plugin id="org.eclipse.jubula.autagent"/>
+ <plugin id="org.eclipse.jubula.communication"/>
+ <plugin id="org.eclipse.jubula.rc.common"/>
+ <plugin id="org.eclipse.jubula.rc.common.agent"/>
+ <plugin id="org.eclipse.jubula.rc.swing"/>
+ <plugin id="org.eclipse.jubula.rc.swt"/>
+ <plugin id="org.eclipse.jubula.tools"/>
+ <plugin id="org.eclipse.osgi"/>
+ <plugin id="org.eclipse.osgi.services"/>
+ <plugin id="org.slf4j.api"/>
+ <plugin id="org.slf4j.jcl"/>
+ <plugin id="org.slf4j.log4j"/>
+ </plugins>
+
+
+</product>
diff --git a/org.eclipse.jubula.product.autagent.start/pom.xml b/org.eclipse.jubula.product.autagent.start/pom.xml
new file mode 100644
index 000000000..3497b5642
--- /dev/null
+++ b/org.eclipse.jubula.product.autagent.start/pom.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
+ xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <artifactId>org.eclipse.jubula.releng.client</artifactId>
+ <groupId>org.eclipse.jubula</groupId>
+ <version>1.0.0-SNAPSHOT</version>
+ <relativePath>../org.eclipse.jubula.releng.client</relativePath>
+ </parent>
+
+ <groupId>org.eclipse.jubula</groupId>
+ <artifactId>org.eclipse.jubula.product.autagent.start</artifactId>
+ <version>1.0.0-SNAPSHOT</version>
+ <packaging>eclipse-repository</packaging>
+
+</project>
diff --git a/org.eclipse.jubula.product.autagent.stop/.gitignore b/org.eclipse.jubula.product.autagent.stop/.gitignore
new file mode 100644
index 000000000..ea8c4bf7f
--- /dev/null
+++ b/org.eclipse.jubula.product.autagent.stop/.gitignore
@@ -0,0 +1 @@
+/target
diff --git a/org.eclipse.jubula.product.autagent.stop/.project b/org.eclipse.jubula.product.autagent.stop/.project
new file mode 100644
index 000000000..f78942ca8
--- /dev/null
+++ b/org.eclipse.jubula.product.autagent.stop/.project
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.jubula.product.autagent.stop</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ </buildSpec>
+ <natures>
+ </natures>
+</projectDescription>
diff --git a/org.eclipse.jubula.product.autagent.stop/org.eclipse.jubula.product.autagent.stop.product b/org.eclipse.jubula.product.autagent.stop/org.eclipse.jubula.product.autagent.stop.product
new file mode 100644
index 000000000..97ba0bb75
--- /dev/null
+++ b/org.eclipse.jubula.product.autagent.stop/org.eclipse.jubula.product.autagent.stop.product
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?pde version="3.5"?>
+
+<product name="Stop AUT Agent" uid="org.eclipse.jubula.product.autagent.stop.product" application="org.eclipse.jubula.app.autagent" version="1.0.0.qualifier" useFeatures="false" includeLaunchers="false">
+
+ <configIni use="default">
+ </configIni>
+
+ <launcherArgs>
+ <programArgs>-stop localhost</programArgs>
+ <vmArgsMac>-XstartOnFirstThread -Dorg.eclipse.swt.internal.carbon.smallFonts</vmArgsMac>
+ </launcherArgs>
+
+ <windowImages/>
+
+ <launcher name="stopautagent">
+ <solaris/>
+ <win useIco="false">
+ <bmp/>
+ </win>
+ </launcher>
+
+ <vm>
+ </vm>
+
+ <plugins>
+ <plugin id="ch.qos.logback.classic"/>
+ <plugin id="ch.qos.logback.core"/>
+ <plugin id="ch.qos.logback.slf4j" fragment="true"/>
+ <plugin id="javax.servlet"/>
+ <plugin id="org.apache.commons.cli"/>
+ <plugin id="org.apache.commons.lang"/>
+ <plugin id="org.apache.commons.logging"/>
+ <plugin id="org.eclipse.core.contenttype"/>
+ <plugin id="org.eclipse.core.jobs"/>
+ <plugin id="org.eclipse.core.runtime"/>
+ <plugin id="org.eclipse.core.runtime.compatibility.auth"/>
+ <plugin id="org.eclipse.core.runtime.compatibility.registry" fragment="true"/>
+ <plugin id="org.eclipse.equinox.app"/>
+ <plugin id="org.eclipse.equinox.common"/>
+ <plugin id="org.eclipse.equinox.preferences"/>
+ <plugin id="org.eclipse.equinox.registry"/>
+ <plugin id="org.eclipse.jubula.autagent"/>
+ <plugin id="org.eclipse.jubula.communication"/>
+ <plugin id="org.eclipse.jubula.tools"/>
+ <plugin id="org.eclipse.osgi"/>
+ <plugin id="org.eclipse.osgi.services"/>
+ <plugin id="org.slf4j.api"/>
+ <plugin id="org.slf4j.jcl"/>
+ <plugin id="org.slf4j.log4j"/>
+ </plugins>
+
+
+</product>
diff --git a/org.eclipse.jubula.product.autagent.stop/pom.xml b/org.eclipse.jubula.product.autagent.stop/pom.xml
new file mode 100644
index 000000000..05f3dc591
--- /dev/null
+++ b/org.eclipse.jubula.product.autagent.stop/pom.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
+ xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <artifactId>org.eclipse.jubula.releng.client</artifactId>
+ <groupId>org.eclipse.jubula</groupId>
+ <version>1.0.0-SNAPSHOT</version>
+ <relativePath>../org.eclipse.jubula.releng.client</relativePath>
+ </parent>
+
+ <groupId>org.eclipse.jubula</groupId>
+ <artifactId>org.eclipse.jubula.product.autagent.stop</artifactId>
+ <version>1.0.0-SNAPSHOT</version>
+ <packaging>eclipse-repository</packaging>
+
+</project>
diff --git a/org.eclipse.jubula.project.configuration/target/definitions/indigo.target b/org.eclipse.jubula.project.configuration/target/definitions/indigo.target
new file mode 100644
index 000000000..9d42ea879
--- /dev/null
+++ b/org.eclipse.jubula.project.configuration/target/definitions/indigo.target
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<?pde version="3.6"?>
+
+<target name="indigo">
+<locations>
+<location includeAllPlatforms="false" includeMode="planner" type="InstallableUnit">
+<unit id="org.eclipse.rcp.feature.group" version="3.7.0.v20110216-9DB5Fm1FpBGy_AJSy2FajiY"/>
+<unit id="org.eclipse.persistence.jpa.feature.group" version="2.3.0.v20110528-r9473"/>
+<repository location="http://download.eclipse.org/releases/indigo"/>
+</location>
+<location includeAllPlatforms="false" includeMode="planner" type="InstallableUnit">
+<unit id="org.apache.commons.beanutils" version="1.7.0.v200902170505"/>
+<unit id="org.apache.commons.cli.source" version="1.0.0.v20080604-1500"/>
+<unit id="org.apache.commons.lang" version="2.4.0.v201005080502"/>
+<unit id="org.apache.oro" version="2.0.8.v201005080400"/>
+<unit id="org.h2" version="1.1.117.v20091003-1000"/>
+<unit id="ch.qos.logback.classic" version="0.9.19.v20100519-1505"/>
+<unit id="ch.qos.logback.core" version="0.9.19.v20100419-1216"/>
+<unit id="ch.qos.logback.slf4j" version="0.9.19.v20100519-1910"/>
+<unit id="org.slf4j.api" version="1.5.11.v20100519-1910"/>
+<unit id="org.slf4j.jcl" version="1.5.11.v20100419-1106"/>
+<unit id="org.slf4j.log4j" version="1.5.11.v20100419-1106"/>
+<unit id="org.w3c.dom.events.source" version="3.0.0.draft20060413_v200905140418"/>
+<repository location="http://download.eclipse.org/tools/orbit/downloads/drops/R20100519200754/repository"/>
+</location>
+<location includeAllPlatforms="false" includeMode="planner" type="InstallableUnit">
+<unit id="org.apache.commons.cli" version="1.2.0.v201105210650"/>
+<repository location="http://download.eclipse.org/tools/orbit/downloads/drops/R20110523182458/repository/"/>
+</location>
+</locations>
+</target>
diff --git a/org.eclipse.jubula.rc.common.agent/.classpath b/org.eclipse.jubula.rc.common.agent/.classpath
index e1cb9226b..827f65a5a 100644
--- a/org.eclipse.jubula.rc.common.agent/.classpath
+++ b/org.eclipse.jubula.rc.common.agent/.classpath
@@ -2,6 +2,6 @@
<classpath>
<classpathentry kind="src" output="target/classes" path="src"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
- <classpathentry kind="con" path="org.maven.ide.eclipse.MAVEN2_CLASSPATH_CONTAINER"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
<classpathentry kind="output" path="target/classes"/>
</classpath>
diff --git a/org.eclipse.jubula.rc.common.agent/.project b/org.eclipse.jubula.rc.common.agent/.project
index 61b7750c0..4c601daee 100644
--- a/org.eclipse.jubula.rc.common.agent/.project
+++ b/org.eclipse.jubula.rc.common.agent/.project
@@ -16,14 +16,19 @@
</arguments>
</buildCommand>
<buildCommand>
- <name>org.maven.ide.eclipse.maven2Builder</name>
+ <name>org.eclipse.pde.ManifestBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.SchemaBuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
- <nature>org.maven.ide.eclipse.maven2Nature</nature>
<nature>org.eclipse.jdt.core.javanature</nature>
<nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
+ <nature>org.eclipse.pde.PluginNature</nature>
</natures>
</projectDescription>
diff --git a/org.eclipse.jubula.rc.common.agent/META-INF/MANIFEST.MF b/org.eclipse.jubula.rc.common.agent/META-INF/MANIFEST.MF
index 55450b66f..215194717 100644
--- a/org.eclipse.jubula.rc.common.agent/META-INF/MANIFEST.MF
+++ b/org.eclipse.jubula.rc.common.agent/META-INF/MANIFEST.MF
@@ -1,4 +1,13 @@
Manifest-Version: 1.0
Created-By: Eclipse Jubula
+Bundle-ManifestVersion: 2
+Bundle-Name: Jubula RC Java Agent
+Bundle-SymbolicName: org.eclipse.jubula.rc.common.agent
+Bundle-Version: 1.0.0.qualifier
+Bundle-Vendor: Eclipse Jubula
Premain-Class: org.eclipse.jubula.rc.common.agent.GDAgent
-Class-Path: ./AUTLauncher.jar
+Class-Path: lib/org.eclipse.jubula.rc.common.jar
+Export-Package: org.eclipse.jubula.rc.common.agent
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Require-Bundle: org.eclipse.jubula.tools;bundle-version="[1.0.0,2.0.0)",
+ org.eclipse.jubula.rc.common;bundle-version="[1.0.0,2.0.0)"
diff --git a/org.eclipse.jubula.rc.common.agent/build.properties b/org.eclipse.jubula.rc.common.agent/build.properties
new file mode 100644
index 000000000..72b58c0b4
--- /dev/null
+++ b/org.eclipse.jubula.rc.common.agent/build.properties
@@ -0,0 +1,16 @@
+###############################################################################
+# Copyright (c) 2004, 2011 BREDEX GmbH.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+###############################################################################
+jars.compile.order = .
+bin.includes = about.html,\
+ META-INF/,\
+ .
+source.. = src/
+output.. = bin/
+javacSource = 1.5
+javacTarget = 1.5
+javacErrors.. = -assertIdentifier
diff --git a/org.eclipse.jubula.rc.common.agent/pom.xml b/org.eclipse.jubula.rc.common.agent/pom.xml
index 203d44586..6a52de79e 100644
--- a/org.eclipse.jubula.rc.common.agent/pom.xml
+++ b/org.eclipse.jubula.rc.common.agent/pom.xml
@@ -7,53 +7,14 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
- <parent>
- <artifactId>org.eclipse.jubula.releng.server</artifactId>
- <groupId>org.eclipse.jubula</groupId>
- <version>1.0.0-SNAPSHOT</version>
- <relativePath>../org.eclipse.jubula.releng.server</relativePath>
- </parent>
+ <parent>
+ <artifactId>org.eclipse.jubula.releng.client</artifactId>
+ <groupId>org.eclipse.jubula</groupId>
+ <version>1.0.0-SNAPSHOT</version>
+ <relativePath>../org.eclipse.jubula.releng.client</relativePath>
+ </parent>
<groupId>org.eclipse.jubula</groupId>
<artifactId>org.eclipse.jubula.rc.common.agent</artifactId>
<version>1.0.0-SNAPSHOT</version>
- <packaging>jar</packaging>
- <build>
- <finalName>org.eclipse.jubula.rc.common.agent</finalName>
- <sourceDirectory>src</sourceDirectory>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-compiler-plugin</artifactId>
- <version>2.0.2</version>
- <configuration>
- <source>1.5</source>
- <target>1.5</target>
- </configuration>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-jar-plugin</artifactId>
- <version>2.2</version>
- <configuration>
- <archive>
- <manifestFile>META-INF/MANIFEST.MF</manifestFile>
- </archive>
- </configuration>
- </plugin>
- </plugins>
- </build>
-
- <dependencies>
- <dependency>
- <groupId>org.eclipse.jubula</groupId>
- <artifactId>org.eclipse.jubula.tools</artifactId>
- <version>1.0.0-SNAPSHOT</version>
- </dependency>
- <dependency>
- <groupId>org.eclipse.jubula</groupId>
- <artifactId>org.eclipse.jubula.rc.common</artifactId>
- <version>1.0.0-SNAPSHOT</version>
- </dependency>
- </dependencies>
-
+ <packaging>eclipse-plugin</packaging>
</project>
diff --git a/org.eclipse.jubula.rc.common.agent/src/org/eclipse/jubula/rc/common/agent/GDAgent.java b/org.eclipse.jubula.rc.common.agent/src/org/eclipse/jubula/rc/common/agent/GDAgent.java
index ea407b9bd..2de3f302b 100644
--- a/org.eclipse.jubula.rc.common.agent/src/org/eclipse/jubula/rc/common/agent/GDAgent.java
+++ b/org.eclipse.jubula.rc.common.agent/src/org/eclipse/jubula/rc/common/agent/GDAgent.java
@@ -10,11 +10,17 @@
*******************************************************************************/
package org.eclipse.jubula.rc.common.agent;
+import java.io.File;
import java.lang.instrument.Instrumentation;
+import java.lang.reflect.InvocationTargetException;
+import java.lang.reflect.Method;
+import java.net.MalformedURLException;
+import java.net.URL;
+import java.net.URLClassLoader;
-import org.eclipse.jubula.rc.common.AutServerLauncher;
import org.eclipse.jubula.rc.common.Constants;
import org.eclipse.jubula.tools.constants.AutConfigConstants;
+import org.eclipse.jubula.tools.constants.CommandConstants;
/**
@@ -37,9 +43,25 @@ public class GDAgent {
* reactivates the saved ClassLoader.
* @param agentArguments String agentArguments
* @param instrumentation a java.lang.instrument.Instrumentation instance
+ * @throws ClassNotFoundException
+ * @throws NoSuchMethodException
+ * @throws SecurityException
+ * @throws InvocationTargetException
+ * @throws IllegalAccessException
+ * @throws IllegalArgumentException
+ * If reflection calls fail.
+ * @throws MalformedURLException
+ * If any entry of the AUT Server classpath cannot be
+ * parsed to a URL.
*/
- public static void premain(String agentArguments,
- Instrumentation instrumentation) {
+ public static void premain(String agentArguments,
+ Instrumentation instrumentation) throws ClassNotFoundException,
+ SecurityException, NoSuchMethodException, IllegalArgumentException,
+ IllegalAccessException, InvocationTargetException,
+ MalformedURLException {
+
+ String autServerClassPath =
+ System.getenv("AUT_SERVER_CLASSPATH"); //$NON-NLS-1$
// create AutServer arguments
String[] args =
@@ -48,8 +70,7 @@ public class GDAgent {
args[Constants.ARG_SERVERPORT] = System.getenv("AUT_SERVER_PORT"); //$NON-NLS-1$
// placeholder
args[Constants.ARG_AUTMAIN] = "AutMain"; //$NON-NLS-1$
- args[Constants.ARG_AUTSERVER_CLASSPATH] =
- System.getenv("AUT_SERVER_CLASSPATH"); //$NON-NLS-1$
+ args[Constants.ARG_AUTSERVER_CLASSPATH] = autServerClassPath;
args[Constants.ARG_AUTSERVER_NAME] = System.getenv("AUT_SERVER_NAME"); //$NON-NLS-1$
// Aut Agent arguments
@@ -62,11 +83,24 @@ public class GDAgent {
// true for agent is activated
args[Constants.ARG_AGENT_SET] = "true"; //$NON-NLS-1$
+ String [] fileNames = autServerClassPath.split(
+ System.getProperty("path.separator")); //$NON-NLS-1$
+ URL [] urls = new URL[fileNames.length];
+ for (int i = 0; i < fileNames.length; i++) {
+ urls[i] = new File(fileNames[i]).toURL();
+ }
+
final ClassLoader oldContextClassLoader = Thread.currentThread()
.getContextClassLoader();
try {
- AutServerLauncher.main(args);
+ ClassLoader autServerLauncherLoader = new URLClassLoader(urls);
+ Class<?> autServerLauncherClass =
+ autServerLauncherLoader.loadClass(
+ CommandConstants.AUT_SERVER_LAUNCHER);
+ Method mainMethod =
+ autServerLauncherClass.getMethod("main", String[].class); //$NON-NLS-1$
+ mainMethod.invoke(null, new Object[] {args});
} finally {
Thread.currentThread().setContextClassLoader(oldContextClassLoader);
}
diff --git a/org.eclipse.jubula.rc.common.autlauncher/.classpath b/org.eclipse.jubula.rc.common.autlauncher/.classpath
deleted file mode 100644
index 14a048624..000000000
--- a/org.eclipse.jubula.rc.common.autlauncher/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="src" path="src"/>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.4"/>
- <classpathentry kind="con" path="org.maven.ide.eclipse.MAVEN2_CLASSPATH_CONTAINER"/>
- <classpathentry kind="output" path="target/classes"/>
-</classpath>
diff --git a/org.eclipse.jubula.rc.common.autlauncher/.project b/org.eclipse.jubula.rc.common.autlauncher/.project
deleted file mode 100644
index d314976d3..000000000
--- a/org.eclipse.jubula.rc.common.autlauncher/.project
+++ /dev/null
@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.jubula.rc.common.autlauncher</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.jdt.core.javabuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.maven.ide.eclipse.maven2Builder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.jdt.core.javanature</nature>
- <nature>org.maven.ide.eclipse.maven2Nature</nature>
- </natures>
-</projectDescription>
diff --git a/org.eclipse.jubula.rc.common.autlauncher/.settings/org.eclipse.jdt.core.prefs b/org.eclipse.jubula.rc.common.autlauncher/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index 53c46766e..000000000
--- a/org.eclipse.jubula.rc.common.autlauncher/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,6 +0,0 @@
-#Thu Apr 28 16:56:14 CEST 2011
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.4
-org.eclipse.jdt.core.compiler.compliance=1.4
-org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
-org.eclipse.jdt.core.compiler.source=1.4
diff --git a/org.eclipse.jubula.rc.common.autlauncher/.settings/org.maven.ide.eclipse.prefs b/org.eclipse.jubula.rc.common.autlauncher/.settings/org.maven.ide.eclipse.prefs
deleted file mode 100644
index 792d3518c..000000000
--- a/org.eclipse.jubula.rc.common.autlauncher/.settings/org.maven.ide.eclipse.prefs
+++ /dev/null
@@ -1,8 +0,0 @@
-#Thu Apr 28 16:56:13 CEST 2011
-activeProfiles=
-eclipse.preferences.version=1
-fullBuildGoals=process-test-resources
-resolveWorkspaceProjects=true
-resourceFilterGoals=process-resources resources\:testResources
-skipCompilerPlugin=true
-version=1
diff --git a/org.eclipse.jubula.rc.common.autlauncher/pom.xml b/org.eclipse.jubula.rc.common.autlauncher/pom.xml
deleted file mode 100644
index 8036d5e05..000000000
--- a/org.eclipse.jubula.rc.common.autlauncher/pom.xml
+++ /dev/null
@@ -1,45 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- Copyright (c) 2004, 2011 BREDEX GmbH. All rights reserved. This program
- and the accompanying materials are made available under the terms of the
- Eclipse Public License v1.0 which accompanies this distribution, and is available
- at http://www.eclipse.org/legal/epl-v10.html -->
-<project
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
- xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
- <modelVersion>4.0.0</modelVersion>
- <parent>
- <groupId>org.eclipse.jubula</groupId>
- <artifactId>org.eclipse.jubula.releng.server</artifactId>
- <version>1.0.0-SNAPSHOT</version>
- <relativePath>../org.eclipse.jubula.releng.server</relativePath>
- </parent>
- <groupId>org.eclipse.jubula</groupId>
- <artifactId>org.eclipse.jubula.rc.common.autlauncher</artifactId>
- <version>1.0.0-SNAPSHOT</version>
- <packaging>jar</packaging>
- <build>
- <finalName>AUTLauncher</finalName>
- <sourceDirectory>../org.eclipse.jubula.rc.common/src</sourceDirectory>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-compiler-plugin</artifactId>
- <version>2.0.2</version>
- <configuration>
- <source>1.4</source>
- <target>1.4</target>
- </configuration>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-jar-plugin</artifactId>
- <version>2.2</version>
- <configuration>
- <includes>
- <include>**/AutServerLauncher*.class</include>
- </includes>
- </configuration>
- </plugin>
- </plugins>
- </build>
-</project>
diff --git a/org.eclipse.jubula.rc.common.autlauncher/src/.empty b/org.eclipse.jubula.rc.common.autlauncher/src/.empty
deleted file mode 100644
index e69de29bb..000000000
--- a/org.eclipse.jubula.rc.common.autlauncher/src/.empty
+++ /dev/null
diff --git a/org.eclipse.jubula.rc.common/.classpath b/org.eclipse.jubula.rc.common/.classpath
index 0e96ed237..a451ecd03 100644
--- a/org.eclipse.jubula.rc.common/.classpath
+++ b/org.eclipse.jubula.rc.common/.classpath
@@ -1,8 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" output="target/classes" path="src"/>
+ <classpathentry exported="true" kind="lib" path="resources/"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.4"/>
- <classpathentry kind="con" path="org.maven.ide.eclipse.MAVEN2_CLASSPATH_CONTAINER"/>
<classpathentry combineaccessrules="false" kind="src" path="/org.eclipse.jubula.tools"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
<classpathentry kind="output" path="target/classes"/>
</classpath>
diff --git a/org.eclipse.jubula.rc.common/.project b/org.eclipse.jubula.rc.common/.project
index 2988fa998..4e676a6d1 100644
--- a/org.eclipse.jubula.rc.common/.project
+++ b/org.eclipse.jubula.rc.common/.project
@@ -17,14 +17,19 @@
</arguments>
</buildCommand>
<buildCommand>
- <name>org.maven.ide.eclipse.maven2Builder</name>
+ <name>org.eclipse.pde.ManifestBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.SchemaBuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
- <nature>org.maven.ide.eclipse.maven2Nature</nature>
<nature>org.eclipse.jdt.core.javanature</nature>
<nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
+ <nature>org.eclipse.pde.PluginNature</nature>
</natures>
</projectDescription>
diff --git a/org.eclipse.jubula.rc.common/META-INF/MANIFEST.MF b/org.eclipse.jubula.rc.common/META-INF/MANIFEST.MF
new file mode 100644
index 000000000..91b78cf75
--- /dev/null
+++ b/org.eclipse.jubula.rc.common/META-INF/MANIFEST.MF
@@ -0,0 +1,28 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: Jubula Remote Control - Common
+Bundle-SymbolicName: org.eclipse.jubula.rc.common
+Bundle-Version: 1.0.0.qualifier
+Bundle-Vendor: Eclipse Jubula
+Export-Package: org.eclipse.jubula.rc.common,
+ org.eclipse.jubula.rc.common.businessprocess,
+ org.eclipse.jubula.rc.common.classloader,
+ org.eclipse.jubula.rc.common.commands,
+ org.eclipse.jubula.rc.common.components,
+ org.eclipse.jubula.rc.common.driver,
+ org.eclipse.jubula.rc.common.exception,
+ org.eclipse.jubula.rc.common.implclasses,
+ org.eclipse.jubula.rc.common.implclasses.table,
+ org.eclipse.jubula.rc.common.implclasses.tree,
+ org.eclipse.jubula.rc.common.listener,
+ org.eclipse.jubula.rc.common.logger,
+ org.eclipse.jubula.rc.common.registration,
+ org.eclipse.jubula.rc.common.util
+Require-Bundle: org.apache.commons.beanutils;bundle-version="[1.7.0,2.0.0)",
+ org.apache.commons.lang;bundle-version="[2.4.0,3.0.0)",
+ org.apache.oro;bundle-version="[2.0.8,3.0.0)",
+ org.eclipse.jubula.tools;bundle-version="[1.0.0,2.0.0)",
+ org.eclipse.jubula.communication;bundle-version="[1.0.0,2.0.0)"
+Bundle-RequiredExecutionEnvironment: J2SE-1.4
+Bundle-ClassPath: .,
+ resources/
diff --git a/org.eclipse.jubula.rc.common/build.properties b/org.eclipse.jubula.rc.common/build.properties
new file mode 100644
index 000000000..77e1fcb2e
--- /dev/null
+++ b/org.eclipse.jubula.rc.common/build.properties
@@ -0,0 +1,17 @@
+###############################################################################
+# Copyright (c) 2004, 2011 BREDEX GmbH.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+###############################################################################
+jars.compile.order = .
+bin.includes = about.html,\
+ META-INF/,\
+ .,\
+ resources/
+source.. = src/
+output.. = bin/
+javacSource = 1.4
+javacTarget = 1.4
+javacErrors.. = -assertIdentifier
diff --git a/org.eclipse.jubula.rc.common/pom.xml b/org.eclipse.jubula.rc.common/pom.xml
index 3d1557fc9..4ae2a4513 100644
--- a/org.eclipse.jubula.rc.common/pom.xml
+++ b/org.eclipse.jubula.rc.common/pom.xml
@@ -7,29 +7,14 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
- <parent>
- <groupId>org.eclipse.jubula</groupId>
- <artifactId>org.eclipse.jubula.releng.server</artifactId>
- <version>1.0.0-SNAPSHOT</version>
- <relativePath>../org.eclipse.jubula.releng.server</relativePath>
- </parent>
+ <parent>
+ <artifactId>org.eclipse.jubula.releng.client</artifactId>
+ <groupId>org.eclipse.jubula</groupId>
+ <version>1.0.0-SNAPSHOT</version>
+ <relativePath>../org.eclipse.jubula.releng.client</relativePath>
+ </parent>
<groupId>org.eclipse.jubula</groupId>
<artifactId>org.eclipse.jubula.rc.common</artifactId>
<version>1.0.0-SNAPSHOT</version>
- <packaging>jar</packaging>
- <build>
- <finalName>org.eclipse.jubula.rc.common</finalName>
- <sourceDirectory>src</sourceDirectory>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-compiler-plugin</artifactId>
- <version>2.0.2</version>
- <configuration>
- <source>1.4</source>
- <target>1.4</target>
- </configuration>
- </plugin>
- </plugins>
- </build>
+ <packaging>eclipse-plugin</packaging>
</project>
diff --git a/org.eclipse.jubula.rc.rcp/.classpath b/org.eclipse.jubula.rc.rcp/.classpath
index 71b531934..2fbb7a23e 100644
--- a/org.eclipse.jubula.rc.rcp/.classpath
+++ b/org.eclipse.jubula.rc.rcp/.classpath
@@ -3,9 +3,5 @@
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.4"/>
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
<classpathentry kind="src" path="src"/>
- <classpathentry combineaccessrules="false" kind="src" path="/org.eclipse.jubula.rc.common"/>
- <classpathentry combineaccessrules="false" kind="src" path="/org.eclipse.jubula.communication"/>
- <classpathentry combineaccessrules="false" kind="src" path="/org.eclipse.jubula.rc.swt"/>
- <classpathentry kind="lib" path="/org.eclipse.jubula.rc.common.orbit/org.apache.commons.beanutils_1.7.0.v200902170505.jar"/>
<classpathentry kind="output" path="bin"/>
</classpath>
diff --git a/org.eclipse.jubula.rc.rcp/.gitignore b/org.eclipse.jubula.rc.rcp/.gitignore
index 348c102af..d9782c732 100644
--- a/org.eclipse.jubula.rc.rcp/.gitignore
+++ b/org.eclipse.jubula.rc.rcp/.gitignore
@@ -1,2 +1,4 @@
/build
/bin
+/target
+/lib
diff --git a/org.eclipse.jubula.rc.rcp/META-INF/MANIFEST.MF b/org.eclipse.jubula.rc.rcp/META-INF/MANIFEST.MF
index dbc7b7956..9d3998145 100644
--- a/org.eclipse.jubula.rc.rcp/META-INF/MANIFEST.MF
+++ b/org.eclipse.jubula.rc.rcp/META-INF/MANIFEST.MF
@@ -3,31 +3,37 @@ Bundle-ManifestVersion: 2
Bundle-Name: Jubula Remote Control - RCP
Bundle-SymbolicName: org.eclipse.jubula.rc.rcp; singleton:=true
Bundle-Version: 1.0.0.qualifier
-Bundle-ClassPath: lib/org.apache.commons.beanutils_1.7.0.v200902170505.jar,
- lib/org.apache.commons.collections_3.2.0.v201005080500.jar,
- lib/org.apache.commons.lang_2.4.0.v201005080502.jar,
- lib/org.apache.oro_2.0.8.v201005080400.jar,
- lib/ch.qos.logback.classic_0.9.19.v20100519-1505.jar,
- lib/ch.qos.logback.core_0.9.19.v20100419-1216.jar,
- lib/ch.qos.logback.slf4j_0.9.19.v20100519-1910.jar,
- lib/org.slf4j.jcl_1.5.11.v20100419-1106.jar,
- lib/org.slf4j.api_1.5.11.v20100519-1910.jar,
- lib/org.slf4j.log4j_1.5.11.v20100419-1106.jar,
- lib/xstream-1.3.1.jar,
+Bundle-ClassPath: .,
+ lib/org.eclipse.jubula.tools.jar,
+ lib/org.apache.commons.lang.jar,
+ lib/org.apache.commons.beanutils.jar,
+ lib/org.eclipse.jubula.rc.common.jar,
+ lib/org.eclipse.jubula.rc.swt.jar,
+ lib/org.eclipse.jubula.communication.jar,
+ lib/org.slf4j.api.jar,
+ lib/org.slf4j.jcl.jar,
+ lib/org.slf4j.log4j.jar,
+ lib/ch.qos.logback.slf4j.jar,
+ lib/ch.qos.logback.core.jar,
+ lib/ch.qos.logback.classic.jar,
lib/xpp3_min-1.1.3.4.O.jar,
- org.eclipse.jubula.rc.common.jar,
- org.eclipse.jubula.rc.swt.jar,
- org.eclipse.jubula.tools.jar,
- org.eclipse.jubula.communication.jar,
- org.eclipse.jubula.rc.rcp.jar,
+ lib/xstream-1.3.1.jar,
resources/
Bundle-Activator: org.eclipse.jubula.rc.rcp.accessor.plugin.RcpAccessorPlugin
Bundle-Vendor: Eclipse Jubula
Require-Bundle: org.eclipse.ui;bundle-version="[3.2.0,4.0.0)",
org.eclipse.core.runtime;bundle-version="[3.2.0,4.0.0)",
org.eclipse.draw2d;bundle-version="[3.5.0,4.0.0)";resolution:=optional,
- org.eclipse.gef;bundle-version="[3.5.0,4.0.0)";resolution:=optional
+ org.eclipse.gef;bundle-version="[3.5.0,4.0.0)";resolution:=optional,
+ org.apache.commons.lang;bundle-version="[2.4.0,3.0.0)";resolution:=optional,
+ org.apache.commons.beanutils;bundle-version="[1.7.0,2.0.0)";resolution:=optional,
+ org.apache.commons.logging;bundle-version="[1.1.1,2.0.0)";resolution:=optional,
+ org.eclipse.jubula.tools;bundle-version="[1.0.0,2.0.0)";resolution:=optional,
+ org.eclipse.jubula.communication;bundle-version="[1.0.0,2.0.0)";resolution:=optional,
+ org.eclipse.jubula.rc.common;bundle-version="[1.0.0,2.0.0)";resolution:=optional,
+ org.eclipse.jubula.rc.swt;bundle-version="[1.0.0,2.0.0)";resolution:=optional
Bundle-ActivationPolicy: lazy
Bundle-RequiredExecutionEnvironment: J2SE-1.4
Export-Package: org.eclipse.jubula.rc.rcp.gef.factory,
org.eclipse.jubula.rc.rcp.gef.identifier
+Eclipse-BundleShape: dir
diff --git a/org.eclipse.jubula.rc.rcp/build.properties b/org.eclipse.jubula.rc.rcp/build.properties
index 20ba6d4ff..5fe0d187f 100644
--- a/org.eclipse.jubula.rc.rcp/build.properties
+++ b/org.eclipse.jubula.rc.rcp/build.properties
@@ -1,32 +1,29 @@
###############################################################################
-# Copyright (c) 2004, 2010 BREDEX GmbH.
+# Copyright (c) 2004, 2011 BREDEX GmbH.
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Eclipse Public License v1.0
# which accompanies this distribution, and is available at
# http://www.eclipse.org/legal/epl-v10.html
###############################################################################
-source.org.eclipse.jubula.rc.rcp.jar = src/
-source.org.eclipse.jubula.rc.common.jar = src/
-source.org.eclipse.jubula.rc.swt.jar = src/
-source.org.eclipse.jubula.communication.jar = src/
-source.lib/commons-beanutils.jar = src/
-source.resources/ = src/
-source.lib/commons-cli-1.2.jar = src/
-source.lib/org.slf4j.jcl_1.5.11.v20100419-1106.jar = src/
-source.lib/org.slf4j.api_1.5.11.v20100519-1910.jar = src/
-source.lib/org.slf4j.log4j_1.5.11.v20100419-1106.jar = src/
-source.lib/commons-lang-2.4.jar = src/
-source.lib/j2ee.jar = src/
-source.lib/jakarta-oro-2.0.8.jar = src/
-source.lib/xstream-1.1.2.jar = src/
-source.lib/xpp3_min-1.1.3.4.I.jar = src/
-bin.includes = META-INF/,\
+bin.includes = about.html,\
+ resources/,\
+ META-INF/,\
plugin.xml,\
- lib/org.apache.commons.beanutils_1.7.0.v200902170505.jar,\
- lib/org.apache.commons.collections_3.2.0.v201005080500.jar,\
- lib/ch.qos.logback.classic_0.9.19.v20100519-1505.jar,\
- org.eclipse.jubula.tools-0.9.0-SNAPSHOT.jar
-source.lib/org.apache.commons.beanutils_1.7.0.v200902170505.jar = src/
-source.lib/org.apache.commons.collections_3.2.0.v201005080500.jar = src/
-source.lib/ch.qos.logback.classic_0.9.19.v20100519-1505.jar = src/
-source.org.eclipse.jubula.tools-0.9.0-SNAPSHOT.jar = src/
+ .,\
+ lib/org.eclipse.jubula.tools.jar,\
+ lib/org.apache.commons.lang.jar,\
+ lib/org.apache.commons.beanutils.jar,\
+ lib/org.eclipse.jubula.rc.common.jar,\
+ lib/org.eclipse.jubula.rc.swt.jar,\
+ lib/org.eclipse.jubula.communication.jar,\
+ lib/org.slf4j.api.jar,\
+ lib/org.slf4j.jcl.jar,\
+ lib/org.slf4j.log4j.jar,\
+ lib/ch.qos.logback.slf4j.jar,\
+ lib/ch.qos.logback.core.jar,\
+ lib/ch.qos.logback.classic.jar,\
+ lib/xpp3_min-1.1.3.4.O.jar,\
+ lib/xstream-1.3.1.jar
+jars.compile.order = .
+source.. = src/
+output.. = bin/
diff --git a/org.eclipse.jubula.rc.rcp/buildScript.xml b/org.eclipse.jubula.rc.rcp/buildScript.xml
deleted file mode 100644
index e39fbe1cf..000000000
--- a/org.eclipse.jubula.rc.rcp/buildScript.xml
+++ /dev/null
@@ -1,91 +0,0 @@
-<?xml version="1.0"?><!--
- Copyright (c) 2004, 2010 BREDEX GmbH.
- All rights reserved. This program and the accompanying materials
- are made available under the terms of the Eclipse Public License v1.0
- which accompanies this distribution, and is available at
- http://www.eclipse.org/legal/epl-v10.html
- -->
-
-<project name="org.eclipse.jubula.rc.rcp" default="compile" basedir=".">
-
- <!--
- application specific
- *********************
- app.name the name of the application
- which is used for directory naming.
- you can use projects name in 90%.
- -->
- <property name="app.name" value="org.eclipse.jubula.rc.rcp"/>
-
- <!--
- general definitions
- ********************
-
- src the name of the diretory(starting at basedir)
- where to find project source files
-
- build the name of the diretory(starting at basedir)
- where to compile to.
-
- classes the name of the diretory(starting at basedir)
- where to put compiled classes to.
-
- jars the name of the diretory(starting at basedir)
- where to put generated jars to.
-
- lib the name of the diretory(starting at basedir)
- where to find libaries, needed for
- compilation.
-
- -->
- <property name="src" value="src"/>
- <property name="build" value="build"/>
- <property name="classes" value="build/classes"/>
- <property name="jars" value="build/jars"/>
- <property name="MF" value="META-INF"/>
-
- <!-- classpath -->
-
- <!-- internal -->
- <property name="javac" value="javac"/>
- <property name="javac.classpath" value="classpathRCPAccessor"/>
- <property name="javac.debug" value="javac.debug"/>
-
- <!--
- Targets
- ********
-
- all calling the targets clean and compile.
- So "all" is replacing compiled files
-
- clean deletes the build directory
-
- compile compiles a project into the $build directory
-
- jar creates one or more jar files from the project.
-
- -->
- <target name="all" depends="clean, compile">
- </target>
-
- <target name="clean">
- <delete dir="${build}"/>
- </target>
-
- <target name="compile">
- <mkdir dir="${build}"/>
- <mkdir dir="${classes}"/>
- <mkdir dir="${jars}"/>
- <javac srcdir="${src}"
- destdir="${classes}"
- debug="${javac.debug}"
- classpathref="${javac.classpath}"
- fork="true"
- executable="${javac}"/>
- </target>
-
- <target name="jar" depends="compile">
- <jar basedir="${classes}" destfile="${jars}/org.eclipse.jubula.rc.rcp.jar">
- </jar>
- </target>
-</project>
diff --git a/org.eclipse.jubula.rc.rcp/pom.xml b/org.eclipse.jubula.rc.rcp/pom.xml
index 421ac7afc..d833a9c8e 100644
--- a/org.eclipse.jubula.rc.rcp/pom.xml
+++ b/org.eclipse.jubula.rc.rcp/pom.xml
@@ -12,4 +12,68 @@
<artifactId>org.eclipse.jubula.rc.rcp</artifactId>
<version>1.0.0-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-dependency-plugin</artifactId>
+ <version>2.2</version>
+ <executions>
+ <execution>
+ <id>copy-dependencies</id>
+ <phase>generate-resources</phase>
+ <goals>
+ <goal>copy-dependencies</goal>
+ </goals>
+ <configuration>
+ <outputDirectory>${basedir}/lib</outputDirectory>
+ <overWriteReleases>false</overWriteReleases>
+ <overWriteSnapshots>false</overWriteSnapshots>
+ <overWriteIfNewer>true</overWriteIfNewer>
+ <stripVersion>true</stripVersion>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <artifactId>maven-resources-plugin</artifactId>
+ <version>2.5</version>
+ <executions>
+ <execution>
+ <id>copy-resources</id>
+ <phase>generate-resources</phase>
+ <goals>
+ <goal>copy-resources</goal>
+ </goals>
+ <configuration>
+ <outputDirectory>${basedir}/lib</outputDirectory>
+ <resources>
+ <resource>
+ <directory>${basedir}/../org.eclipse.jubula.tools/lib</directory>
+ <filtering>false</filtering>
+ </resource>
+ </resources>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <artifactId>maven-clean-plugin</artifactId>
+ <version>2.4.1</version>
+ <configuration>
+ <filesets>
+ <fileset>
+ <directory>lib</directory>
+ <includes>
+ <include>*.jar</include>
+ </includes>
+ <followSymlinks>false</followSymlinks>
+ </fileset>
+ </filesets>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+
</project>
diff --git a/org.eclipse.jubula.rc.swing/.classpath b/org.eclipse.jubula.rc.swing/.classpath
index 0e96ed237..973fb7296 100644
--- a/org.eclipse.jubula.rc.swing/.classpath
+++ b/org.eclipse.jubula.rc.swing/.classpath
@@ -2,7 +2,7 @@
<classpath>
<classpathentry kind="src" output="target/classes" path="src"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.4"/>
- <classpathentry kind="con" path="org.maven.ide.eclipse.MAVEN2_CLASSPATH_CONTAINER"/>
<classpathentry combineaccessrules="false" kind="src" path="/org.eclipse.jubula.tools"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
<classpathentry kind="output" path="target/classes"/>
</classpath>
diff --git a/org.eclipse.jubula.rc.swing/.project b/org.eclipse.jubula.rc.swing/.project
index 794f0053c..8765f2344 100644
--- a/org.eclipse.jubula.rc.swing/.project
+++ b/org.eclipse.jubula.rc.swing/.project
@@ -16,14 +16,19 @@
</arguments>
</buildCommand>
<buildCommand>
- <name>org.maven.ide.eclipse.maven2Builder</name>
+ <name>org.eclipse.pde.ManifestBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.SchemaBuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
- <nature>org.maven.ide.eclipse.maven2Nature</nature>
<nature>org.eclipse.jdt.core.javanature</nature>
<nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
+ <nature>org.eclipse.pde.PluginNature</nature>
</natures>
</projectDescription>
diff --git a/org.eclipse.jubula.rc.swing/META-INF/MANIFEST.MF b/org.eclipse.jubula.rc.swing/META-INF/MANIFEST.MF
new file mode 100644
index 000000000..0d8e200f8
--- /dev/null
+++ b/org.eclipse.jubula.rc.swing/META-INF/MANIFEST.MF
@@ -0,0 +1,23 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: Jubula Remote Control - Swing
+Bundle-SymbolicName: org.eclipse.jubula.rc.swing
+Bundle-Version: 1.0.0.qualifier
+Bundle-Vendor: Eclipse Jubula
+Bundle-RequiredExecutionEnvironment: J2SE-1.4
+Require-Bundle: org.apache.commons.beanutils;bundle-version="[1.7.0,2.0.0)",
+ org.apache.commons.lang;bundle-version="[2.4.0,3.0.0)",
+ org.eclipse.jubula.tools;bundle-version="[1.0.0,2.0.0)",
+ org.eclipse.jubula.communication;bundle-version="[1.0.0,2.0.0)",
+ org.eclipse.jubula.rc.common;bundle-version="[1.0.0,2.0.0)"
+Export-Package: com.bredexsw.guidancer.autserver.swing.implclasses,
+ org.eclipse.jubula.rc.swing,
+ org.eclipse.jubula.rc.swing.commands,
+ org.eclipse.jubula.rc.swing.components,
+ org.eclipse.jubula.rc.swing.driver,
+ org.eclipse.jubula.rc.swing.listener,
+ org.eclipse.jubula.rc.swing.swing,
+ org.eclipse.jubula.rc.swing.swing.driver,
+ org.eclipse.jubula.rc.swing.swing.implclasses,
+ org.eclipse.jubula.rc.swing.swing.interfaces,
+ org.eclipse.jubula.rc.swing.utils
diff --git a/org.eclipse.jubula.rc.swing/build.properties b/org.eclipse.jubula.rc.swing/build.properties
new file mode 100644
index 000000000..73507d586
--- /dev/null
+++ b/org.eclipse.jubula.rc.swing/build.properties
@@ -0,0 +1,16 @@
+###############################################################################
+# Copyright (c) 2004, 2011 BREDEX GmbH.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+###############################################################################
+bin.includes = about.html,\
+ META-INF/,\
+ .
+jars.compile.order = .
+source.. = src/
+output.. = bin/
+javacSource = 1.4
+javacTarget = 1.4
+javacErrors.. = -assertIdentifier
diff --git a/org.eclipse.jubula.rc.swing/pom.xml b/org.eclipse.jubula.rc.swing/pom.xml
index 5b1eb5134..bfedd32a4 100644
--- a/org.eclipse.jubula.rc.swing/pom.xml
+++ b/org.eclipse.jubula.rc.swing/pom.xml
@@ -10,54 +10,15 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
- <parent>
- <artifactId>org.eclipse.jubula.releng.server</artifactId>
- <groupId>org.eclipse.jubula</groupId>
- <version>1.0.0-SNAPSHOT</version>
- <relativePath>../org.eclipse.jubula.releng.server</relativePath>
- </parent>
- <groupId>org.eclipse.jubula</groupId>
- <artifactId>org.eclipse.jubula.rc.swing</artifactId>
- <version>1.0.0-SNAPSHOT</version>
- <packaging>jar</packaging>
- <build>
- <finalName>org.eclipse.jubula.rc.swing</finalName>
- <sourceDirectory>src</sourceDirectory>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-compiler-plugin</artifactId>
- <version>2.0.2</version>
- <configuration>
- <source>1.4</source>
- <target>1.4</target>
- </configuration>
- </plugin>
- </plugins>
- </build>
-
- <dependencies>
- <dependency>
- <groupId>org.eclipse.jubula.rc.common.orbit</groupId>
- <artifactId>org.apache.commons.beanutils</artifactId>
- <version>1.7.0.v200902170505</version>
- <type>jar</type>
- </dependency>
- <dependency>
- <groupId>org.eclipse.jubula</groupId>
- <artifactId>org.eclipse.jubula.rc.common</artifactId>
- <version>1.0.0-SNAPSHOT</version>
- </dependency>
- <dependency>
- <groupId>org.eclipse.jubula</groupId>
- <artifactId>org.eclipse.jubula.communication</artifactId>
- <version>1.0.0-SNAPSHOT</version>
- </dependency>
- <dependency>
- <groupId>org.eclipse.jubula</groupId>
- <artifactId>org.eclipse.jubula.tools</artifactId>
- <version>1.0.0-SNAPSHOT</version>
- </dependency>
- </dependencies>
+ <parent>
+ <artifactId>org.eclipse.jubula.releng.client</artifactId>
+ <groupId>org.eclipse.jubula</groupId>
+ <version>1.0.0-SNAPSHOT</version>
+ <relativePath>../org.eclipse.jubula.releng.client</relativePath>
+ </parent>
+ <groupId>org.eclipse.jubula</groupId>
+ <artifactId>org.eclipse.jubula.rc.swing</artifactId>
+ <version>1.0.0-SNAPSHOT</version>
+ <packaging>eclipse-plugin</packaging>
</project>
diff --git a/org.eclipse.jubula.rc.swt/.classpath b/org.eclipse.jubula.rc.swt/.classpath
index 0e96ed237..973fb7296 100644
--- a/org.eclipse.jubula.rc.swt/.classpath
+++ b/org.eclipse.jubula.rc.swt/.classpath
@@ -2,7 +2,7 @@
<classpath>
<classpathentry kind="src" output="target/classes" path="src"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.4"/>
- <classpathentry kind="con" path="org.maven.ide.eclipse.MAVEN2_CLASSPATH_CONTAINER"/>
<classpathentry combineaccessrules="false" kind="src" path="/org.eclipse.jubula.tools"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
<classpathentry kind="output" path="target/classes"/>
</classpath>
diff --git a/org.eclipse.jubula.rc.swt/.project b/org.eclipse.jubula.rc.swt/.project
index e1bc89f5b..51ec7956e 100644
--- a/org.eclipse.jubula.rc.swt/.project
+++ b/org.eclipse.jubula.rc.swt/.project
@@ -16,14 +16,19 @@
</arguments>
</buildCommand>
<buildCommand>
- <name>org.maven.ide.eclipse.maven2Builder</name>
+ <name>org.eclipse.pde.ManifestBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.SchemaBuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
- <nature>org.maven.ide.eclipse.maven2Nature</nature>
<nature>org.eclipse.jdt.core.javanature</nature>
<nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
+ <nature>org.eclipse.pde.PluginNature</nature>
</natures>
</projectDescription>
diff --git a/org.eclipse.jubula.rc.swt/META-INF/MANIFEST.MF b/org.eclipse.jubula.rc.swt/META-INF/MANIFEST.MF
new file mode 100644
index 000000000..2c0fead30
--- /dev/null
+++ b/org.eclipse.jubula.rc.swt/META-INF/MANIFEST.MF
@@ -0,0 +1,30 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: Jubula Remote Control - SWT
+Bundle-SymbolicName: org.eclipse.jubula.rc.swt
+Bundle-Version: 1.0.0.qualifier
+Bundle-Vendor: Eclipse Jubula
+Require-Bundle: org.apache.commons.beanutils;bundle-version="[1.7.0,2.0.0)",
+ org.apache.commons.lang;bundle-version="[2.4.0,3.0.0)",
+ org.eclipse.jubula.tools;bundle-version="[1.0.0,2.0.0)",
+ org.eclipse.jubula.communication;bundle-version="[1.0.0,2.0.0)",
+ org.eclipse.jubula.rc.common;bundle-version="[1.0.0,2.0.0)"
+Bundle-RequiredExecutionEnvironment: J2SE-1.4
+Export-Package: com.bredexsw.guidancer.autswtserver.implclasses,
+ org.eclipse.jubula.rc.swt,
+ org.eclipse.jubula.rc.swt.commands,
+ org.eclipse.jubula.rc.swt.components,
+ org.eclipse.jubula.rc.swt.driver,
+ org.eclipse.jubula.rc.swt.implclasses,
+ org.eclipse.jubula.rc.swt.implclasses.tree,
+ org.eclipse.jubula.rc.swt.interfaces,
+ org.eclipse.jubula.rc.swt.listener,
+ org.eclipse.jubula.rc.swt.utils
+Import-Package: org.eclipse.swt;resolution:=optional,
+ org.eclipse.swt.custom;resolution:=optional,
+ org.eclipse.swt.dnd;resolution:=optional,
+ org.eclipse.swt.events;resolution:=optional,
+ org.eclipse.swt.graphics;resolution:=optional,
+ org.eclipse.swt.internal;resolution:=optional,
+ org.eclipse.swt.layout;resolution:=optional,
+ org.eclipse.swt.widgets;resolution:=optional
diff --git a/org.eclipse.jubula.rc.swt/build.properties b/org.eclipse.jubula.rc.swt/build.properties
new file mode 100644
index 000000000..73507d586
--- /dev/null
+++ b/org.eclipse.jubula.rc.swt/build.properties
@@ -0,0 +1,16 @@
+###############################################################################
+# Copyright (c) 2004, 2011 BREDEX GmbH.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+###############################################################################
+bin.includes = about.html,\
+ META-INF/,\
+ .
+jars.compile.order = .
+source.. = src/
+output.. = bin/
+javacSource = 1.4
+javacTarget = 1.4
+javacErrors.. = -assertIdentifier
diff --git a/org.eclipse.jubula.rc.swt/pom.xml b/org.eclipse.jubula.rc.swt/pom.xml
index 9828be5e5..c0adf732e 100644
--- a/org.eclipse.jubula.rc.swt/pom.xml
+++ b/org.eclipse.jubula.rc.swt/pom.xml
@@ -1,50 +1,23 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright (c) 2004, 2011 BREDEX GmbH.
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+ http://www.eclipse.org/legal/epl-v10.html
+ -->
+ <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
- <parent>
- <artifactId>org.eclipse.jubula.releng.server</artifactId>
- <groupId>org.eclipse.jubula</groupId>
- <version>1.0.0-SNAPSHOT</version>
- <relativePath>../org.eclipse.jubula.releng.server</relativePath>
- </parent>
+ <parent>
+ <artifactId>org.eclipse.jubula.releng.client</artifactId>
+ <groupId>org.eclipse.jubula</groupId>
+ <version>1.0.0-SNAPSHOT</version>
+ <relativePath>../org.eclipse.jubula.releng.client</relativePath>
+ </parent>
<groupId>org.eclipse.jubula</groupId>
<artifactId>org.eclipse.jubula.rc.swt</artifactId>
<version>1.0.0-SNAPSHOT</version>
- <packaging>jar</packaging>
+ <packaging>eclipse-plugin</packaging>
- <build>
- <finalName>org.eclipse.jubula.rc.swt</finalName>
- <sourceDirectory>src</sourceDirectory>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-compiler-plugin</artifactId>
- <version>2.0.2</version>
- <configuration>
- <source>1.4</source>
- <target>1.4</target>
- </configuration>
- </plugin>
- </plugins>
- </build>
-
- <dependencies>
- <dependency>
- <groupId>org.eclipse.jubula.rc.common.orbit</groupId>
- <artifactId>org.apache.commons.beanutils</artifactId>
- <version>1.7.0.v200902170505</version>
- <type>jar</type>
- </dependency>
- <dependency>
- <groupId>org.eclipse.jubula.project.compatibility</groupId>
- <artifactId>org.eclipse.swt</artifactId>
- <version>3.1</version>
- <type>jar</type>
- </dependency>
- <dependency>
- <groupId>org.eclipse.jubula</groupId>
- <artifactId>org.eclipse.jubula.rc.common</artifactId>
- <version>1.0.0-SNAPSHOT</version>
- </dependency>
- </dependencies>
-</project> \ No newline at end of file
+</project>
diff --git a/org.eclipse.jubula.releng.client/pom.xml b/org.eclipse.jubula.releng.client/pom.xml
index dbed4417b..5a8442a47 100644
--- a/org.eclipse.jubula.releng.client/pom.xml
+++ b/org.eclipse.jubula.releng.client/pom.xml
@@ -15,7 +15,7 @@
<description>Release engineering for Jubula ITE.</description>
<properties>
- <tycho-version>0.10.0</tycho-version>
+ <tycho-version>0.12.0</tycho-version>
</properties>
<modules>
@@ -58,13 +58,13 @@
<build>
<plugins>
<plugin>
- <groupId>org.sonatype.tycho</groupId>
+ <groupId>org.eclipse.tycho</groupId>
<artifactId>tycho-maven-plugin</artifactId>
<version>${tycho-version}</version>
<extensions>true</extensions>
</plugin>
<plugin>
- <groupId>org.sonatype.tycho</groupId>
+ <groupId>org.eclipse.tycho</groupId>
<artifactId>target-platform-configuration</artifactId>
<version>${tycho-version}</version>
<configuration>
diff --git a/org.eclipse.jubula.releng.server/.gitignore b/org.eclipse.jubula.releng.server/.gitignore
new file mode 100644
index 000000000..a7ca88086
--- /dev/null
+++ b/org.eclipse.jubula.releng.server/.gitignore
@@ -0,0 +1 @@
+/workspace
diff --git a/org.eclipse.jubula.releng.server/pom.xml b/org.eclipse.jubula.releng.server/pom.xml
index d3f4556b3..23ef5a900 100644
--- a/org.eclipse.jubula.releng.server/pom.xml
+++ b/org.eclipse.jubula.releng.server/pom.xml
@@ -10,6 +10,10 @@
<relativePath>../org.eclipse.jubula.releng</relativePath>
</parent>
+ <properties>
+ <tycho-version>0.12.0</tycho-version>
+ </properties>
+
<groupId>org.eclipse.jubula</groupId>
<artifactId>org.eclipse.jubula.releng.server</artifactId>
<name>Eclipse Jubula Server Components</name>
@@ -17,125 +21,79 @@
<version>1.0.0-SNAPSHOT</version>
<packaging>pom</packaging>
- <repositories>
- <repository>
- <id>local-orbit-repo</id>
- <url>file://${basedir}/../org.eclipse.jubula.rc.common.orbit/local-orbit-repo</url>
- </repository>
- <repository>
- <id>local-compatibility-repo</id>
- <url>file://${basedir}/../org.eclipse.jubula.project.compatibility/local-compatibility-repo</url>
- </repository>
- </repositories>
-
- <dependencies>
- <dependency>
- <groupId>org.eclipse.jubula.rc.common.orbit</groupId>
- <artifactId>ch.qos.logback.classic</artifactId>
- <version>0.9.19.v20100519-1505</version>
- <type>jar</type>
- <scope>compile</scope>
- </dependency>
- <dependency>
- <groupId>org.eclipse.jubula.rc.common.orbit</groupId>
- <artifactId>ch.qos.logback.core</artifactId>
- <version>0.9.19.v20100419-1216</version>
- <type>jar</type>
- <scope>compile</scope>
- </dependency>
- <dependency>
- <groupId>org.eclipse.jubula.rc.common.orbit</groupId>
- <artifactId>ch.qos.logback.slf4j</artifactId>
- <version>0.9.19.v20100519-1910</version>
- <type>jar</type>
- <scope>compile</scope>
- </dependency>
- <dependency>
- <groupId>org.eclipse.jubula.rc.common.orbit</groupId>
- <artifactId>org.apache.commons.beanutils</artifactId>
- <version>1.7.0.v200902170505</version>
- <type>jar</type>
- <scope>compile</scope>
- </dependency>
- <dependency>
- <groupId>org.eclipse.jubula.rc.common.orbit</groupId>
- <artifactId>org.apache.commons.cli</artifactId>
- <version>1.2.0.v201011021000</version>
- <type>jar</type>
- <scope>compile</scope>
- </dependency>
- <dependency>
- <groupId>org.eclipse.jubula.rc.common.orbit</groupId>
- <artifactId>org.apache.commons.collections</artifactId>
- <version>3.2.0.v201005080500</version>
- <type>jar</type>
- <scope>compile</scope>
- </dependency>
- <dependency>
- <groupId>org.eclipse.jubula.rc.common.orbit</groupId>
- <artifactId>org.apache.commons.lang</artifactId>
- <version>2.4.0.v201005080502</version>
- <type>jar</type>
- <scope>compile</scope>
- </dependency>
- <dependency>
- <groupId>org.eclipse.jubula.rc.common.orbit</groupId>
- <artifactId>org.apache.oro</artifactId>
- <version>2.0.8.v201005080400</version>
- <type>jar</type>
- <scope>compile</scope>
- </dependency>
- <dependency>
- <groupId>org.eclipse.jubula.rc.common.orbit</groupId>
- <artifactId>org.slf4j.api</artifactId>
- <version>1.5.11.v20100519-1910</version>
- <type>jar</type>
- <scope>compile</scope>
- </dependency>
- <dependency>
- <groupId>org.eclipse.jubula.rc.common.orbit</groupId>
- <artifactId>org.slf4j.jcl</artifactId>
- <version>1.5.11.v20100419-1106</version>
- <type>jar</type>
- <scope>compile</scope>
- </dependency>
- <dependency>
- <groupId>org.eclipse.jubula.rc.common.orbit</groupId>
- <artifactId>org.slf4j.log4j</artifactId>
- <version>1.5.11.v20100419-1106</version>
- <type>jar</type>
- <scope>compile</scope>
- </dependency>
- <dependency>
- <groupId>org.eclipse.jubula.rc.common.orbit</groupId>
- <artifactId>slf4j-jdk14</artifactId>
- <version>1.5.11</version>
- <type>jar</type>
- <scope>compile</scope>
- </dependency>
- <dependency>
- <groupId>org.eclipse.jubula</groupId>
- <artifactId>org.eclipse.jubula.tools</artifactId>
- <version>1.0.0-SNAPSHOT</version>
- </dependency>
- <dependency>
- <groupId>org.eclipse.jubula</groupId>
- <artifactId>org.eclipse.jubula.communication</artifactId>
- <version>1.0.0-SNAPSHOT</version>
- </dependency>
- </dependencies>
-
<modules>
- <module>../org.eclipse.jubula.autstarter</module>
- <module>../org.eclipse.jubula.autagent</module>
- <module>../org.eclipse.jubula.rc.common</module>
- <module>../org.eclipse.jubula.rc.common.autlauncher</module>
- <module>../org.eclipse.jubula.rc.common.agent</module>
- <module>../org.eclipse.jubula.toolkit.generate.interfaces</module>
- <module>../org.eclipse.jubula.rc.swing</module>
- <module>../org.eclipse.jubula.rc.swt</module>
+ <module>../org.eclipse.jubula.autagent</module>
+ <module>../org.eclipse.jubula.rc.common</module>
+ <module>../org.eclipse.jubula.rc.common.agent</module>
+ <module>../org.eclipse.jubula.toolkit.generate.interfaces</module>
+ <module>../org.eclipse.jubula.rc.swing</module>
+ <module>../org.eclipse.jubula.rc.swt</module>
+ <module>../org.eclipse.jubula.rc.rcp</module>
+ <module>../org.eclipse.jubula.app.autagent</module>
+ <module>../org.eclipse.jubula.product.autagent.start</module>
</modules>
<url>http://www.eclipse.org/jubula</url>
+ <distributionManagement>
+ <repository>
+
+ </repository>
+ </distributionManagement>
+
+ <build>
+ <plugins>
+
+ <plugin>
+ <groupId>org.eclipse.tycho</groupId>
+ <artifactId>tycho-maven-plugin</artifactId>
+ <version>${tycho-version}</version>
+ <extensions>true</extensions>
+ </plugin>
+ <plugin>
+ <groupId>org.eclipse.tycho</groupId>
+ <artifactId>target-platform-configuration</artifactId>
+ <version>${tycho-version}</version>
+ <configuration>
+ <resolver>p2</resolver>
+ <target>
+ <artifact>
+ <groupId>${project.groupId}</groupId>
+ <artifactId>${project.artifactId}</artifactId>
+ <version>${project.version}</version>
+ <classifier>../org.eclipse.jubula.project.configuration/target/definitions/helios</classifier>
+ </artifact>
+ </target>
+ <environments>
+ <environment>
+ <os>win32</os>
+ <ws>win32</ws>
+ <arch>x86</arch>
+ </environment>
+ <environment>
+ <os>win32</os>
+ <ws>win32</ws>
+ <arch>x86_64</arch>
+ </environment>
+ <environment>
+ <os>linux</os>
+ <ws>gtk</ws>
+ <arch>x86_64</arch>
+ </environment>
+ <environment>
+ <os>linux</os>
+ <ws>gtk</ws>
+ <arch>x86</arch>
+ </environment>
+ <environment>
+ <os>macosx</os>
+ <ws>cocoa</ws>
+ <arch>x86_64</arch>
+ </environment>
+ </environments>
+ </configuration>
+ </plugin>
+
+ </plugins>
+ </build>
</project>
diff --git a/org.eclipse.jubula.releng/.gitignore b/org.eclipse.jubula.releng/.gitignore
index 4dc009173..6063275f7 100644
--- a/org.eclipse.jubula.releng/.gitignore
+++ b/org.eclipse.jubula.releng/.gitignore
@@ -1,2 +1,3 @@
/target
/bin
+/workspace
diff --git a/org.eclipse.jubula.tools/src/org/eclipse/jubula/tools/constants/CommandConstants.java b/org.eclipse.jubula.tools/src/org/eclipse/jubula/tools/constants/CommandConstants.java
index 3ccd90c9a..9b1f1e97d 100644
--- a/org.eclipse.jubula.tools/src/org/eclipse/jubula/tools/constants/CommandConstants.java
+++ b/org.eclipse.jubula.tools/src/org/eclipse/jubula/tools/constants/CommandConstants.java
@@ -35,14 +35,40 @@ public abstract class CommandConstants {
public static final String WEB_TOOLKIT = "com.bredexsw.guidancer.WebToolkitPlugin"; //$NON-NLS-1$
/** constant: "Html" */
public static final String HTML_TOOLKIT = "com.bredexsw.guidancer.HtmlToolkitPlugin"; //$NON-NLS-1$
- /** constant: "../AutServer/bin" */
- public static final String AUT_SERVER_BIN = "../org.eclipse.jubula.rc.swing/bin"; //$NON-NLS-1$
- /** constant: "../AutSWTServer/bin" */
- public static final String AUT_SWT_SERVER_BIN = "../org.eclipse.jubula.rc.swt/bin"; //$NON-NLS-1$
- /** constant: "./lib/AUTServer.jar" */
- public static final String AUT_SERVER_JAR = "./lib/org.eclipse.jubula.rc.swing.jar"; //$NON-NLS-1$
- /** constant: "./lib/AUTSwtServer.jar" */
- public static final String AUT_SWT_SERVER_JAR = "./lib/org.eclipse.jubula.rc.swt.jar"; //$NON-NLS-1$
+ /** ID of the SLF4J API bundle */
+ public static final String SLF4J_API_BUNDLE_ID = "org.slf4j.api"; //$NON-NLS-1$
+ /** ID of the SLF4J JCL bundle */
+ public static final String SLF4J_JCL_BUNDLE_ID = "org.slf4j.jcl"; //$NON-NLS-1$
+ /** ID of the SLF4J LOG4J bundle */
+ public static final String SLF4J_LOG4J_BUNDLE_ID = "org.slf4j.log4j"; //$NON-NLS-1$
+ /** ID of the logback classic bundle */
+ public static final String LOGBACK_CLASSIC_BUNDLE_ID = "ch.qos.logback.classic"; //$NON-NLS-1$
+ /** ID of the logback core bundle */
+ public static final String LOGBACK_CORE_BUNDLE_ID = "ch.qos.logback.core"; //$NON-NLS-1$
+ /** ID of the logback slf4j bundle */
+ public static final String LOGBACK_SLF4J_BUNDLE_ID = "ch.qos.logback.slf4j"; //$NON-NLS-1$
+ /** ID of the Apache Commons Lang bundle */
+ public static final String COMMONS_LANG_BUNDLE_ID = "org.apache.commons.lang"; //$NON-NLS-1$
+ /** ID of the Apache ORO bundle */
+ public static final String APACHE_ORO_BUNDLE_ID = "org.apache.oro"; //$NON-NLS-1$
+ /** ID of the Apache Commons Bean Utils bundle */
+ public static final String COMMONS_BEAN_UTILS_BUNDLE_ID = "org.apache.commons.beanutils"; //$NON-NLS-1$
+ /** ID of the Apache Commons Collections bundle */
+ public static final String COMMONS_COLLECTIONS_BUNDLE_ID = "org.apache.commons.collections"; //$NON-NLS-1$
+ /** ID of the Tools bundle */
+ public static final String TOOLS_BUNDLE_ID = "org.eclipse.jubula.tools"; //$NON-NLS-1$
+ /** ID of the Communication bundle */
+ public static final String COMMUNICATION_BUNDLE_ID = "org.eclipse.jubula.communication"; //$NON-NLS-1$
+ /** ID of the common RC bundle */
+ public static final String RC_COMMON_BUNDLE_ID = "org.eclipse.jubula.rc.common"; //$NON-NLS-1$
+ /** ID of the RC Common Agent bundle */
+ public static final String RC_COMMON_AGENT_BUNDLE_ID = "org.eclipse.jubula.rc.common.agent"; //$NON-NLS-1$
+ /** ID of the Swing RC bundle */
+ public static final String RC_SWING_BUNDLE_ID = "org.eclipse.jubula.rc.swing"; //$NON-NLS-1$
+ /** ID of the SWT RC bundle */
+ public static final String RC_SWT_BUNDLE_ID = "org.eclipse.jubula.rc.swt"; //$NON-NLS-1$
+ /** ID of the HTML RC bundle */
+ public static final String RC_HTML_BUNDLE_ID = "com.bredexsw.jubula.rc.html"; //$NON-NLS-1$
/** /** constant: "./lib/extImplClasses" - path name to external ImplClasses */
public static final String EXT_IMPLCLASSES_PATH = "./lib/extImplClasses"; //$NON-NLS-1$
/** constant: "./lib/ext" - path name for extension jars like monitoring */
@@ -51,10 +77,8 @@ public abstract class CommandConstants {
public static final String AUT_SERVER_BASE_BIN = "../org.eclipse.jubula.rc.common/bin"; //$NON-NLS-1$
/** constant: "./lib/AUTServerBase.jar" */
public static final String AUT_SERVER_BASE_JAR = "./lib/org.eclipse.jubula.rc.common.jar"; //$NON-NLS-1$
- /** constant: "./AUTLauncher.jar" */
- public static final String AUT_LAUNCHER_JAR = "./AUTLauncher.jar"; //$NON-NLS-1$
- /** constant: "./GDAgent.jar" */
- public static final String GDAGENT_JAR = "./org.eclipse.jubula.rc.common.agent.jar"; //$NON-NLS-1$
+ /** constant: "./lib/AUTServerBase.jar" */
+ public static final String AUT_LAUNCHER_JAR = "./lib/org.eclipse.jubula.rc.common.jar"; //$NON-NLS-1$
/** constant: "./resources" */
public static final String AUT_SERVER_RESOURCES = "./resources"; //$NON-NLS-1$
/** constant: "org.eclipse.jubula.rc.swing.commands.ActivateApplicationCommand" */
diff --git a/org.eclipse.jubula.tools/src/org/eclipse/jubula/tools/utils/ZipUtil.java b/org.eclipse.jubula.tools/src/org/eclipse/jubula/tools/utils/ZipUtil.java
index 3ef9aebb3..d1a605b77 100644
--- a/org.eclipse.jubula.tools/src/org/eclipse/jubula/tools/utils/ZipUtil.java
+++ b/org.eclipse.jubula.tools/src/org/eclipse/jubula/tools/utils/ZipUtil.java
@@ -16,10 +16,16 @@ import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
+import java.util.ArrayList;
import java.util.Enumeration;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
import java.util.zip.ZipEntry;
import java.util.zip.ZipFile;
import java.util.zip.ZipOutputStream;
+
+import org.apache.commons.lang.StringUtils;
/**
* This Util class contains methods to zip and unzip directories
*
@@ -27,6 +33,30 @@ import java.util.zip.ZipOutputStream;
* @created 13.08.2010
*/
public class ZipUtil {
+
+ /** file extension for JAR files, in lower case */
+ private static final String JAR_FILE_EXT = ".jar"; //$NON-NLS-1$
+
+ /** mapping from a ZIP file to its extracted temporary JAR files */
+ private static Map zipToTempJars = new HashMap();
+
+ /**
+ *
+ * @author BREDEX GmbH
+ * @created 23.06.2011
+ */
+ public static interface IZipEntryFilter {
+
+ /**
+ *
+ * @param entry The zip entry to filter.
+ * @return <code>true</code> if the zip entry should be accepted.
+ * Otherwise, <code>false</code>.
+ */
+ public boolean accept(ZipEntry entry);
+
+ }
+
/** to prevent instantiation */
private ZipUtil() {
//do nothing
@@ -80,30 +110,128 @@ public class ZipUtil {
*/
public static final void unzip(File zip, File extractTo)
throws IOException {
- ZipFile archive = new ZipFile(zip);
+
+ unzipFiles(zip, extractTo, new IZipEntryFilter() {
+ public boolean accept(ZipEntry entry) {
+ return true;
+ }
+ });
+ }
+
+ /**
+ * Extracts all JAR files from the given ZIP file into temporary JAR files.
+ * The directory structure of the extracted contents is not maintained.
+ * A mapping from ZIP file to extracted JARs is maintained by this class,
+ * so multiple calls to this method for a single ZIP file will extract JAR
+ * files once and return references to those files for each subsequent call.
+ * The extracted JAR files are deleted on VM exit.
+ *
+ *
+ * @param srcZip The ZIP file to extract.
+ * @return all extracted files.
+ * @throws IOException
+ */
+ public static File[] unzipTempJars(File srcZip)
+ throws IOException {
+
+ if (zipToTempJars.containsKey(srcZip)) {
+ return (File[])zipToTempJars.get(srcZip);
+ }
+
+ IZipEntryFilter filter = new IZipEntryFilter() {
+ public boolean accept(ZipEntry entry) {
+ return entry.getName().toLowerCase().endsWith(JAR_FILE_EXT);
+ }
+ };
+ ZipFile archive = new ZipFile(srcZip);
Enumeration e = archive.entries();
+ List extractedFiles = new ArrayList();
while (e.hasMoreElements()) {
ZipEntry entry = (ZipEntry)e.nextElement();
- File file = new File(extractTo, entry.getName());
- if (entry.isDirectory() && !file.exists()) {
- file.mkdirs();
- } else {
- if (!file.getParentFile().exists()) {
- file.getParentFile().mkdirs();
+ if (filter.accept(entry)) {
+ if (!entry.isDirectory()) {
+ String prefix = entry.getName().substring(
+ entry.getName().lastIndexOf("/") + 1, //$NON-NLS-1$
+ entry.getName().toLowerCase().lastIndexOf(
+ JAR_FILE_EXT));
+ File file = File.createTempFile(
+ StringUtils.rightPad(prefix, 3),
+ JAR_FILE_EXT);
+ extractedFiles.add(file);
+ file.deleteOnExit();
+ unzipFile(archive, file, entry);
}
+ }
+ }
- InputStream in = archive.getInputStream(entry);
- BufferedOutputStream out = new BufferedOutputStream(
- new FileOutputStream(file));
-
- byte[] buffer = new byte[8192];
- int read;
-
- while (-1 != (read = in.read(buffer))) {
- out.write(buffer, 0, read);
+ File [] files = (File[])extractedFiles.toArray(
+ new File[extractedFiles.size()]);
+ zipToTempJars.put(srcZip, files);
+ return files;
+ }
+
+ /**
+ * Unzips the contents of the given zip file into the given directory.
+ *
+ * @param srcZip The zip file to extract.
+ * @param targetDir The base directory for extracted files.
+ * @param filter Only files accepted by this filter will be extracted.
+ * @return all extracted files.
+ * @throws IOException
+ */
+ public static File[] unzipFiles(File srcZip, File targetDir,
+ IZipEntryFilter filter) throws IOException {
+
+ ZipFile archive = new ZipFile(srcZip);
+ Enumeration e = archive.entries();
+ List extractedFiles = new ArrayList();
+ while (e.hasMoreElements()) {
+ ZipEntry entry = (ZipEntry)e.nextElement();
+ if (filter.accept(entry)) {
+ File file = new File(targetDir, entry.getName());
+ if (entry.isDirectory() && !file.exists()) {
+ file.mkdirs();
+ } else {
+ if (!file.getParentFile().exists()) {
+ file.getParentFile().mkdirs();
+ }
+
+ extractedFiles.add(file);
+ unzipFile(archive, file, entry);
}
-
+ }
+ }
+
+ return (File[])extractedFiles.toArray();
+ }
+
+ /**
+ *
+ * @param archive The zip file from which to extract.
+ * @param targetFile The file to which the entry contents will be extracted.
+ * @param entry The entry to extract.
+ * @throws IOException
+ */
+ private static void unzipFile(ZipFile archive, File targetFile,
+ ZipEntry entry) throws IOException {
+ InputStream in = null;
+ BufferedOutputStream out = null;
+ try {
+ in = archive.getInputStream(entry);
+ out = new BufferedOutputStream(
+ new FileOutputStream(targetFile));
+
+ byte[] buffer = new byte[8192];
+ int read;
+
+ while (-1 != (read = in.read(buffer))) {
+ out.write(buffer, 0, read);
+ }
+ } finally {
+ if (in != null) {
in.close();
+ }
+ if (out != null) {
out.close();
}
}

Back to the top