[jboss-cvs] JBossAS SVN: r97062 - in projects/ejb3/trunk/package-manager/src: main/java/org/jboss/ejb3/packagemanager/db and 8 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Fri Nov 27 00:13:15 EST 2009
Author: jaikiran
Date: 2009-11-27 00:13:13 -0500 (Fri, 27 Nov 2009)
New Revision: 97062
Added:
projects/ejb3/trunk/package-manager/src/main/java/org/jboss/ejb3/packagemanager/Constants.java
projects/ejb3/trunk/package-manager/src/main/java/org/jboss/ejb3/packagemanager/main/Setup.java
Modified:
projects/ejb3/trunk/package-manager/src/main/java/org/jboss/ejb3/packagemanager/db/DefaultDatabaseManager.java
projects/ejb3/trunk/package-manager/src/main/java/org/jboss/ejb3/packagemanager/main/Main.java
projects/ejb3/trunk/package-manager/src/main/java/org/jboss/ejb3/packagemanager/proxy/PackageManagerInvocationHandler.java
projects/ejb3/trunk/package-manager/src/main/resources/package.xsd
projects/ejb3/trunk/package-manager/src/main/resources/setup.sh
projects/ejb3/trunk/package-manager/src/test/java/org/jboss/ejb3/packagemanager/test/dependency/unit/DependencyInstallTestCase.java
projects/ejb3/trunk/package-manager/src/test/java/org/jboss/ejb3/packagemanager/test/install/unit/BasicInstallTestCase.java
projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/common/package-with-just-install-file.xml
projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/common/package-with-packaged-dependency.xml
projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/common/package-with-post-install-script.xml
projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/common/package-with-post-uninstall-script.xml
projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/common/package-with-pre-install-script.xml
projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/common/package-with-pre-uninstall-script.xml
projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/dependency/unit/dependee-package1.xml
projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/dependency/unit/dependee-package2.xml
projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/dependency/unit/dependee-package3.xml
projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/dependency/unit/package-with-multiple-packaged-dependencies.xml
projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/dependency/unit/package-with-unprocessed-dependencies.xml
projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/upgrade/unit/package-version1.xml
projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/upgrade/unit/package-version2.xml
Log:
EJBTHREE-1942 Fixed/changed the target namespace of package.xsd schema
Added: projects/ejb3/trunk/package-manager/src/main/java/org/jboss/ejb3/packagemanager/Constants.java
===================================================================
--- projects/ejb3/trunk/package-manager/src/main/java/org/jboss/ejb3/packagemanager/Constants.java (rev 0)
+++ projects/ejb3/trunk/package-manager/src/main/java/org/jboss/ejb3/packagemanager/Constants.java 2009-11-27 05:13:13 UTC (rev 97062)
@@ -0,0 +1,37 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.ejb3.packagemanager;
+
+/**
+ * Constants
+ *
+ * @author Jaikiran Pai
+ * @version $Revision: $
+ */
+public class Constants
+{
+
+ /**
+ * System property representing package manager home
+ */
+ public static final String PACKAGE_MANAGER_HOME_SYSTEM_PROPERTY = "PACKAGE_MANAGER_HOME";
+}
Modified: projects/ejb3/trunk/package-manager/src/main/java/org/jboss/ejb3/packagemanager/db/DefaultDatabaseManager.java
===================================================================
--- projects/ejb3/trunk/package-manager/src/main/java/org/jboss/ejb3/packagemanager/db/DefaultDatabaseManager.java 2009-11-27 04:53:56 UTC (rev 97061)
+++ projects/ejb3/trunk/package-manager/src/main/java/org/jboss/ejb3/packagemanager/db/DefaultDatabaseManager.java 2009-11-27 05:13:13 UTC (rev 97062)
@@ -82,10 +82,6 @@
PackageManagerEnvironment environment = pkgMgrCtx.getPackageManagerEnvironment();
// we use derby (filesystem) based DB
File dbHome = environment.getDataDir();
- if (!dbHome.exists())
- {
- dbHome.mkdirs();
- }
// set the Derby system home property to point to the package manager db
System.setProperty("derby.system.home", dbHome.getAbsolutePath());
Modified: projects/ejb3/trunk/package-manager/src/main/java/org/jboss/ejb3/packagemanager/main/Main.java
===================================================================
--- projects/ejb3/trunk/package-manager/src/main/java/org/jboss/ejb3/packagemanager/main/Main.java 2009-11-27 04:53:56 UTC (rev 97061)
+++ projects/ejb3/trunk/package-manager/src/main/java/org/jboss/ejb3/packagemanager/main/Main.java 2009-11-27 05:13:13 UTC (rev 97062)
@@ -30,6 +30,7 @@
import java.sql.SQLException;
import java.util.Set;
+import org.jboss.ejb3.packagemanager.Constants;
import org.jboss.ejb3.packagemanager.PackageManager;
import org.jboss.ejb3.packagemanager.PackageManagerEnvironment;
import org.jboss.ejb3.packagemanager.PackageManagerFactory;
@@ -40,7 +41,6 @@
/**
* Main
*
- * TODO: Command line parsing is WIP.
*
* @author Jaikiran Pai
* @version $Revision: $
@@ -66,7 +66,6 @@
public static void main(String[] args) throws PackageManagerException
{
CmdLineParser cmdLineParser = new CmdLineParser();
- CmdLineParser.Option setupCmdOption = cmdLineParser.addStringOption("setup");
CmdLineParser.Option installCmdOption = cmdLineParser.addStringOption('i', "install");
CmdLineParser.Option upgradeCmdOption = cmdLineParser.addStringOption('u', "upgrade");
CmdLineParser.Option removeCmdOption = cmdLineParser.addStringOption('r', "remove");
@@ -85,76 +84,44 @@
throw new PackageManagerException(e.getMessage());
}
File currentDir = new File(".");
- String packageManagerHome = (String) cmdLineParser.getOptionValue(packageManagerHomeCmdOption,currentDir.getAbsolutePath());
- String jbossHome = (String) cmdLineParser.getOptionValue(jbossHomeCmdOption);
+ // Get the package manager home from system property. If not set, then defaults to
+ // current directory
+ String packageManagerHomeEnvVariableValue = System.getProperty(Constants.PACKAGE_MANAGER_HOME_SYSTEM_PROPERTY, currentDir.getAbsolutePath());
+ // Override the package manager home if it's explicitly passed through the -p option
+ String packageManagerHome = (String) cmdLineParser.getOptionValue(packageManagerHomeCmdOption,packageManagerHomeEnvVariableValue);
if (packageManagerHome == null)
{
throw new PackageManagerException("Package manager home has not been set");
}
- if (jbossHome == null)
- {
- throw new PackageManagerException("JBoss Home has not been set");
- }
-
+
File pmHome = new File(packageManagerHome);
if (!pmHome.exists())
{
throw new PackageManagerException("Package manager home " + pmHome + " does not exist!");
}
-
+ logger.info("Using Package Manager Home: " + packageManagerHome);
+ PackageManagerEnvironment env = new PackageManagerEnvironment(packageManagerHome);
+ // Check for JBOSS_HOME
+ String jbossHome = (String) cmdLineParser.getOptionValue(jbossHomeCmdOption);
+ if (packageManagerHome == null)
+ {
+ throw new PackageManagerException("Package manager home has not been set");
+ }
+ if (jbossHome == null)
+ {
+ throw new PackageManagerException("JBoss Home has not been set");
+ }
File jbHome = new File(jbossHome);
if (!jbHome.exists())
{
throw new PackageManagerException("JBoss home " + jbHome + " does not exist!");
}
- logger.info("Using Package Manager Home: " + packageManagerHome);
logger.info("Using JBoss Home: " + jbossHome);
- PackageManagerEnvironment env = new PackageManagerEnvironment(packageManagerHome);
+
+ // Create a package manager now
PackageManager pm = PackageManagerFactory.getDefaultPackageManager(env, jbossHome);
- String schemaSetupScript = (String) cmdLineParser.getOptionValue(setupCmdOption);
- if (schemaSetupScript != null)
- {
- File schemaFile = new File(schemaSetupScript);
- if (!schemaFile.exists())
- {
- throw new PackageManagerException(
- "Could not setup the database for package manager, because of non-existent schema file "
- + schemaSetupScript);
- }
- Connection conn = null;
- try
- {
- conn = DriverManager.getConnection("jdbc:derby:pmdb;create=true");
- DBUtil.runSql(conn, schemaFile);
- logger.info("Successfully setup the package manager database");
- }
- catch (SQLException sqle)
- {
- throw new PackageManagerException("Could not setup package manager database: ", sqle);
- }
- catch (IOException ioe)
- {
- throw new PackageManagerException("Could not setup package manager database: ", ioe);
- }
- finally
- {
- if (conn != null)
- {
- try
- {
- conn.close();
- }
- catch (SQLException sqle)
- {
- // can't do much
- logger.trace("Could not close connection:",sqle);
- }
- }
- }
-
- }
-
+ // Parse the options from the command line and do appropriate action(s)
Boolean query = (Boolean) cmdLineParser.getOptionValue(queryCmdOption, Boolean.FALSE);
String packageToInstall = (String) cmdLineParser.getOptionValue(installCmdOption);
String packageToUpgrade = (String) cmdLineParser.getOptionValue(upgradeCmdOption);
Added: projects/ejb3/trunk/package-manager/src/main/java/org/jboss/ejb3/packagemanager/main/Setup.java
===================================================================
--- projects/ejb3/trunk/package-manager/src/main/java/org/jboss/ejb3/packagemanager/main/Setup.java (rev 0)
+++ projects/ejb3/trunk/package-manager/src/main/java/org/jboss/ejb3/packagemanager/main/Setup.java 2009-11-27 05:13:13 UTC (rev 97062)
@@ -0,0 +1,154 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.ejb3.packagemanager.main;
+
+import jargs.gnu.CmdLineParser;
+
+import java.io.File;
+import java.io.IOException;
+import java.sql.Connection;
+import java.sql.DriverManager;
+import java.sql.SQLException;
+
+import org.jboss.ejb3.packagemanager.Constants;
+import org.jboss.ejb3.packagemanager.PackageManagerEnvironment;
+import org.jboss.ejb3.packagemanager.exception.PackageManagerException;
+import org.jboss.ejb3.packagemanager.util.DBUtil;
+import org.jboss.logging.Logger;
+
+/**
+ * Setup
+ *
+ * @author Jaikiran Pai
+ * @version $Revision: $
+ */
+public class Setup
+{
+
+ /**
+ * Logger
+ */
+ private static Logger logger = Logger.getLogger(Setup.class);
+
+ /**
+ * One of the entry points to the package manager.
+ * Accepts the command line arguments and carries out appropriate operations
+ * through the package-manager.
+ *
+ * TODO: The command line arguments, haven't yet been finalized
+ *
+ * @param args
+ * @throws PackageManagerException
+ */
+ public static void main(String[] args) throws PackageManagerException
+ {
+ CmdLineParser cmdLineParser = new CmdLineParser();
+ CmdLineParser.Option schemaFileCmdOption = cmdLineParser.addStringOption('f', "file");
+
+ try
+ {
+ cmdLineParser.parse(args);
+ }
+ catch (CmdLineParser.OptionException e)
+ {
+ System.err.println("Error parsing command " + e.getMessage());
+ printUsage();
+ throw new PackageManagerException(e.getMessage());
+ }
+ File currentDir = new File(".");
+ // Get the package manager home from system property. If not set, then defaults to
+ // current directory
+ String packageManagerHome = System.getProperty(Constants.PACKAGE_MANAGER_HOME_SYSTEM_PROPERTY, currentDir.getAbsolutePath());
+ if (packageManagerHome == null)
+ {
+ throw new PackageManagerException("Package manager home has not been set");
+ }
+
+ File pmHome = new File(packageManagerHome);
+ if (!pmHome.exists())
+ {
+ throw new PackageManagerException("Package manager home " + pmHome + " does not exist!");
+ }
+ logger.info("Using Package Manager Home: " + packageManagerHome);
+ PackageManagerEnvironment env = new PackageManagerEnvironment(packageManagerHome);
+
+ // Run the setup script
+ String schemaSetupScript = (String) cmdLineParser.getOptionValue(schemaFileCmdOption);
+ if (schemaSetupScript != null)
+ {
+ File schemaFile = new File(schemaSetupScript);
+ if (!schemaFile.exists())
+ {
+ throw new PackageManagerException(
+ "Could not setup the database for package manager, because of non-existent schema file "
+ + schemaSetupScript);
+ }
+ Connection conn = null;
+ // We use Derby Embedded which is file based (so point to the DB home).
+ // TODO: This should ideally be handled by the PackageDatabaseManager,
+ // or some central place which is aware of the DB type. Let's just
+ // do this here for now.
+ File dbHome = env.getDataDir();
+ // set the Derby system home property to point to the package manager db
+ System.setProperty("derby.system.home", dbHome.getAbsolutePath());
+ logger.info("Package manager DB home set to " + System.getProperty("derby.system.home"));
+
+ try
+ {
+ conn = DriverManager.getConnection("jdbc:derby:pmdb;create=true");
+ DBUtil.runSql(conn, schemaFile);
+ logger.info("Successfully setup the package manager database");
+ }
+ catch (SQLException sqle)
+ {
+ throw new PackageManagerException("Could not setup package manager database: ", sqle);
+ }
+ catch (IOException ioe)
+ {
+ throw new PackageManagerException("Could not setup package manager database: ", ioe);
+ }
+ finally
+ {
+ if (conn != null)
+ {
+ try
+ {
+ conn.close();
+ }
+ catch (SQLException sqle)
+ {
+ // can't do much
+ logger.trace("Could not close connection:",sqle);
+ }
+ }
+ }
+
+ }
+ }
+
+
+ private static void printUsage()
+ {
+ System.out.println("Usage: setup [-f path_to_schema_file]");
+ }
+
+}
Modified: projects/ejb3/trunk/package-manager/src/main/java/org/jboss/ejb3/packagemanager/proxy/PackageManagerInvocationHandler.java
===================================================================
--- projects/ejb3/trunk/package-manager/src/main/java/org/jboss/ejb3/packagemanager/proxy/PackageManagerInvocationHandler.java 2009-11-27 04:53:56 UTC (rev 97061)
+++ projects/ejb3/trunk/package-manager/src/main/java/org/jboss/ejb3/packagemanager/proxy/PackageManagerInvocationHandler.java 2009-11-27 05:13:13 UTC (rev 97062)
@@ -46,10 +46,20 @@
public class PackageManagerInvocationHandler implements InvocationHandler
{
+ /**
+ * Package manager
+ */
private PackageManager packageManager;
+ /**
+ * Logger
+ */
private static Logger logger = Logger.getLogger(PackageManagerInvocationHandler.class);
+ /**
+ * Constructs an invocation handler for a package manager
+ * @param packageManager
+ */
public PackageManagerInvocationHandler(PackageManager packageManager)
{
this.packageManager = packageManager;
@@ -88,7 +98,10 @@
{
// start new tx
txManager.begin();
- logger.debug("Started in invocation handler " + txManager.getTransaction() + " for method " + method);
+ if (logger.isTraceEnabled())
+ {
+ logger.trace("Started tx " + txManager.getTransaction() + " for method " + method);
+ }
currentTx = txManager.getTransaction();
registerForSynchronization(txManager.getTransaction());
txInitiator = true;
@@ -102,12 +115,18 @@
if (txManager.getStatus() == Status.STATUS_MARKED_ROLLBACK)
{
txManager.rollback();
+ if (logger.isTraceEnabled())
+ {
+ logger.trace("Rolled back tx " + txManager.getTransaction() + " for method " + method);
+ }
}
else
{
- logger.debug("Commiting in invocation handler " + txManager.getTransaction() + " for method " + method);
txManager.commit();
- logger.debug("Commited in invocation handler " + txManager.getTransaction() + " for method " + method);
+ if (logger.isTraceEnabled())
+ {
+ logger.trace("Committed tx for method " + method);
+ }
}
}
@@ -140,9 +159,17 @@
{
// suspend current tx
txManager.suspend();
+ if (logger.isTraceEnabled())
+ {
+ logger.trace("Suspended tx " + txManager.getTransaction() + " for method " + method);
+ }
}
// start new tx and invoke the method
txManager.begin();
+ if (logger.isTraceEnabled())
+ {
+ logger.trace("Started tx " + txManager.getTransaction() + " for method " + method);
+ }
Transaction newTx = txManager.getTransaction();
registerForSynchronization(newTx);
try
@@ -152,11 +179,19 @@
{
// rollback
newTx.rollback();
+ if (logger.isTraceEnabled())
+ {
+ logger.trace("Rolled back tx " + txManager.getTransaction() + " for method " + method);
+ }
}
else
{
// method successfully completed, so commit tx
newTx.commit();
+ if (logger.isTraceEnabled())
+ {
+ logger.trace("Committed tx " + txManager.getTransaction() + " for method " + method);
+ }
}
return result;
}
Modified: projects/ejb3/trunk/package-manager/src/main/resources/package.xsd
===================================================================
--- projects/ejb3/trunk/package-manager/src/main/resources/package.xsd 2009-11-27 04:53:56 UTC (rev 97061)
+++ projects/ejb3/trunk/package-manager/src/main/resources/package.xsd 2009-11-27 05:13:13 UTC (rev 97062)
@@ -22,10 +22,12 @@
-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
- targetNamespace="http://www.jboss.org/schema"
- xmlns:jboss="http://www.jboss.org/schema">
+ targetNamespace="org/jboss/packagemanager/package"
+ xmlns:package="org/jboss/packagemanager/package"
+ elementFormDefault="qualified"
+ attributeFormDefault="unqualified">
- <xs:element name="package" type="jboss:packageType">
+ <xs:element name="package" type="package:packageType">
<xs:annotation>
<xs:documentation>
A package represents a collection of files that are to be installed into
@@ -42,13 +44,13 @@
<xs:complexType name="packageType">
<xs:sequence>
- <xs:element name="system-requirements" minOccurs="0" maxOccurs="1" type="jboss:system-requirementsType"/>
- <xs:element name="file" minOccurs="0" maxOccurs="unbounded" type="jboss:fileType"/>
- <xs:element name="dependencies" minOccurs="0" maxOccurs="1" type="jboss:dependenciesType"/>
- <xs:element name="pre-install" minOccurs="0" maxOccurs="1" type="jboss:pre-installType"/>
- <xs:element name="post-install" minOccurs="0" maxOccurs="1" type="jboss:post-installType"/>
- <xs:element name="pre-uninstall" minOccurs="0" maxOccurs="1" type="jboss:pre-uninstallType"/>
- <xs:element name="post-uninstall" minOccurs="0" maxOccurs="1" type="jboss:post-uninstallType"/>
+ <xs:element name="system-requirements" minOccurs="0" maxOccurs="1" type="package:system-requirementsType"/>
+ <xs:element name="file" minOccurs="0" maxOccurs="unbounded" type="package:fileType"/>
+ <xs:element name="dependencies" minOccurs="0" maxOccurs="1" type="package:dependenciesType"/>
+ <xs:element name="pre-install" minOccurs="0" maxOccurs="1" type="package:pre-installType"/>
+ <xs:element name="post-install" minOccurs="0" maxOccurs="1" type="package:post-installType"/>
+ <xs:element name="pre-uninstall" minOccurs="0" maxOccurs="1" type="package:pre-uninstallType"/>
+ <xs:element name="post-uninstall" minOccurs="0" maxOccurs="1" type="package:post-uninstallType"/>
</xs:sequence>
<xs:attribute name="name" use="required" type="xs:string"/>
<xs:attribute name="version" use="required" type="xs:string"/>
@@ -95,8 +97,8 @@
</xs:documentation>
</xs:annotation>
<xs:sequence>
- <xs:element name="packaged-dependency" minOccurs="0" maxOccurs="unbounded" type="jboss:packaged-dependencyType"/>
- <xs:element name="unprocessed-dependencies" minOccurs="0" maxOccurs="1" type="jboss:unprocessed-dependenciesType"/>
+ <xs:element name="packaged-dependency" minOccurs="0" maxOccurs="unbounded" type="package:packaged-dependencyType"/>
+ <xs:element name="unprocessed-dependencies" minOccurs="0" maxOccurs="1" type="package:unprocessed-dependenciesType"/>
</xs:sequence>
@@ -115,7 +117,7 @@
</xs:annotation>
<xs:sequence>
- <xs:element name="script" minOccurs="1" maxOccurs="unbounded" type="jboss:scriptType"/>
+ <xs:element name="script" minOccurs="1" maxOccurs="unbounded" type="package:scriptType"/>
</xs:sequence>
</xs:complexType>
@@ -131,7 +133,7 @@
</xs:annotation>
<xs:sequence>
- <xs:element name="script" minOccurs="1" maxOccurs="unbounded" type="jboss:scriptType"/>
+ <xs:element name="script" minOccurs="1" maxOccurs="unbounded" type="package:scriptType"/>
</xs:sequence>
</xs:complexType>
@@ -146,7 +148,7 @@
</xs:annotation>
<xs:sequence>
- <xs:element name="script" minOccurs="1" maxOccurs="unbounded" type="jboss:scriptType"/>
+ <xs:element name="script" minOccurs="1" maxOccurs="unbounded" type="package:scriptType"/>
</xs:sequence>
</xs:complexType>
@@ -162,7 +164,7 @@
</xs:annotation>
<xs:sequence>
- <xs:element name="script" minOccurs="1" maxOccurs="unbounded" type="jboss:scriptType"/>
+ <xs:element name="script" minOccurs="1" maxOccurs="unbounded" type="package:scriptType"/>
</xs:sequence>
</xs:complexType>
Modified: projects/ejb3/trunk/package-manager/src/main/resources/setup.sh
===================================================================
--- projects/ejb3/trunk/package-manager/src/main/resources/setup.sh 2009-11-27 04:53:56 UTC (rev 97061)
+++ projects/ejb3/trunk/package-manager/src/main/resources/setup.sh 2009-11-27 05:13:13 UTC (rev 97062)
@@ -64,7 +64,7 @@
PACKAGE_MANAGER_CLASSPATH="$PACKAGE_MANAGER_HOME/lib/*"
# Setup JBoss Package Manager specific properties
-JAVA_OPTS="-Dprogram.name=$PROGNAME $JAVA_OPTS"
+JAVA_OPTS="-Dprogram.name=$PROGNAME -DPACKAGE_MANAGER_HOME=$PACKAGE_MANAGER_HOME $JAVA_OPTS"
# Sample JPDA settings for remote socket debugging
#JAVA_OPTS="$JAVA_OPTS -Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=y"
@@ -88,7 +88,7 @@
"$JAVA" $JAVA_OPTS \
-classpath "$PACKAGE_MANAGER_CLASSPATH" \
- org.jboss.ejb3.packagemanager.main.Main --setup "$PACKAGE_MANAGER_HOME/script/schema.sql" \
+ org.jboss.ejb3.packagemanager.main.Setup -f "$PACKAGE_MANAGER_HOME/script/schema.sql" \
"$@"
PACKAGE_MANAGER_STATUS=$?
Modified: projects/ejb3/trunk/package-manager/src/test/java/org/jboss/ejb3/packagemanager/test/dependency/unit/DependencyInstallTestCase.java
===================================================================
--- projects/ejb3/trunk/package-manager/src/test/java/org/jboss/ejb3/packagemanager/test/dependency/unit/DependencyInstallTestCase.java 2009-11-27 04:53:56 UTC (rev 97061)
+++ projects/ejb3/trunk/package-manager/src/test/java/org/jboss/ejb3/packagemanager/test/dependency/unit/DependencyInstallTestCase.java 2009-11-27 05:13:13 UTC (rev 97062)
@@ -110,7 +110,7 @@
public void testPackageWithMultiplePackagedDependencies() throws Exception
{
File packageToInstall = this
- .createPackageWithMultiplePackagedDependencies("package-with-multiple-packaged-dependencies.jar");
+ .createPackageWithMultiplePackagedDependencies("package-with-multiple-packaged-dependencies");
this.pkgMgr.installPackage(packageToInstall.toURI().toURL());
@@ -147,6 +147,7 @@
URL packageXmlURL = this.getResource(this.getClass(), "package-with-unprocessed-dependencies.xml");
File file = new File(packageXmlURL.getFile());
+ file = this.processPackageXml(file, "package-with-unprocessed-dependencies", DEFAULT_PACKAGE_VERSION);
archive.addResource("package.xml", file);
// now write out the package to disk
@@ -168,9 +169,11 @@
* @return
* @throws IOException
*/
- protected File createPackageWithMultiplePackagedDependencies(String packageFileName) throws IOException
+ protected File createPackageWithMultiplePackagedDependencies(String packageName) throws IOException
{
+ String packageFileName = packageName + JAR_SUFFIX;
+
File dummyJar = this.createDummyJar();
// create dependee package#1
File dependeePackageOne = new File(perTestTargetDir, "dependee-package-one.jar");
@@ -178,6 +181,7 @@
archiveOne.addResource("dummy1.jar", dummyJar);
URL packageXmlURL = this.getResource(this.getClass(), "dependee-package1.xml");
File file = new File(packageXmlURL.getFile());
+ file = this.processPackageXml(file, "dependee-package1" , DEFAULT_PACKAGE_VERSION);
archiveOne.addResource("package.xml", file);
// pre-install script
URL preInstallScriptXml = this.getResource(this.getClass(), "pre-install-build.xml");
@@ -194,6 +198,7 @@
archiveTwo.addResource("dummy2.jar", dummyJar);
URL packageXmlTwo = this.getResource(this.getClass(), "dependee-package2.xml");
File packageXmlTwoFile = new File(packageXmlTwo.getFile());
+ packageXmlTwoFile = this.processPackageXml(packageXmlTwoFile, "dependee-package2" , DEFAULT_PACKAGE_VERSION);
archiveTwo.addResource("package.xml", packageXmlTwoFile);
// post-install script
URL postInstallXml = this.getResource(this.getClass(), "post-install-build.xml");
@@ -210,6 +215,7 @@
archiveThree.addResource("dummy3.jar", dummyJar);
URL packageXmlThree = this.getResource(this.getClass(), "dependee-package3.xml");
File packageXmlThreeFile = new File(packageXmlThree.getFile());
+ packageXmlThreeFile = this.processPackageXml(packageXmlThreeFile, "dependee-package3" , DEFAULT_PACKAGE_VERSION);
archiveThree.addResource("package.xml", packageXmlThreeFile);
// pre-install and post-install script
URL scriptXml = this.getResource(this.getClass(), "build.xml");
@@ -226,6 +232,7 @@
aggregatedArchive.addResource("dummy-main.jar", dummyJar);
URL aggPackageXml = this.getResource(this.getClass(), "package-with-multiple-packaged-dependencies.xml");
File aggPackageXmlFile = new File(aggPackageXml.getFile());
+ aggPackageXmlFile = this.processPackageXml(aggPackageXmlFile, packageName , DEFAULT_PACKAGE_VERSION);
aggregatedArchive.addResource("package.xml", aggPackageXmlFile);
URL someDeployerConfigXml = this.getResource(this.getClass(), "some-deployer-jboss-beans.xml");
File deployerConfigFile = new File(someDeployerConfigXml.getFile());
Modified: projects/ejb3/trunk/package-manager/src/test/java/org/jboss/ejb3/packagemanager/test/install/unit/BasicInstallTestCase.java
===================================================================
--- projects/ejb3/trunk/package-manager/src/test/java/org/jboss/ejb3/packagemanager/test/install/unit/BasicInstallTestCase.java 2009-11-27 04:53:56 UTC (rev 97061)
+++ projects/ejb3/trunk/package-manager/src/test/java/org/jboss/ejb3/packagemanager/test/install/unit/BasicInstallTestCase.java 2009-11-27 05:13:13 UTC (rev 97062)
@@ -145,7 +145,7 @@
/**
* Note: This test assumes the presence of a "package" at
- * http://snapshots.jboss.org/maven2/org/jboss/ejb3/tmp/simple-package.jar
+ * http://snapshots.jboss.org/maven2/org/jboss/ejb3/tmp/simple-package/1.0.0.Alpha1/simple-package-1.0.0.Alpha1.jar
*
* TODO: Once we have packages uploaded to Maven repo, we can point to a different
* URL from this tmp one.
@@ -162,7 +162,7 @@
public void testHttpPackageInstall() throws Exception
{
// TODO: See javadocs of this test. This URL will change in near future
- String httpPackageURL = "http://snapshots.jboss.org/maven2/org/jboss/ejb3/tmp/simple-package.jar";
+ String httpPackageURL = "http://snapshots.jboss.org/maven2/org/jboss/ejb3/tmp/simple-package/1.0.0.Alpha1/simple-package-1.0.0.Alpha1.jar";
// install the package
this.pkgMgr.installPackage(httpPackageURL);
Modified: projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/common/package-with-just-install-file.xml
===================================================================
--- projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/common/package-with-just-install-file.xml 2009-11-27 04:53:56 UTC (rev 97061)
+++ projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/common/package-with-just-install-file.xml 2009-11-27 05:13:13 UTC (rev 97062)
@@ -1,8 +1,7 @@
-<sh:package name="${package.name}" version="${package.version}"
-xmlns:sh="http://www.jboss.org/schema">
+<package name="${package.name}" version="${package.version}" xmlns="org/jboss/packagemanager/package">
<!-- Package to install a dummy jar into JBOSS_AS/common/lib -->
<file name="dummy.jar" dest-path="common/lib" type="library"/>
-</sh:package>
\ No newline at end of file
+</package>
\ No newline at end of file
Modified: projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/common/package-with-packaged-dependency.xml
===================================================================
--- projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/common/package-with-packaged-dependency.xml 2009-11-27 04:53:56 UTC (rev 97061)
+++ projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/common/package-with-packaged-dependency.xml 2009-11-27 05:13:13 UTC (rev 97062)
@@ -1,5 +1,4 @@
-<sh:package name="${package.name}" version="${package.version}"
-xmlns:sh="http://www.jboss.org/schema">
+<package name="${package.name}" version="${package.version}" xmlns="org/jboss/packagemanager/package">
<!-- Package to install a dummy jar into JBOSS_AS/server/default/lib -->
<file name="dummy.jar" dest-path="server/default/lib" type="library"/>
@@ -8,4 +7,4 @@
<packaged-dependency file="dependee-package.jar"/>
</dependencies>
-</sh:package>
\ No newline at end of file
+</package>
\ No newline at end of file
Modified: projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/common/package-with-post-install-script.xml
===================================================================
--- projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/common/package-with-post-install-script.xml 2009-11-27 04:53:56 UTC (rev 97061)
+++ projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/common/package-with-post-install-script.xml 2009-11-27 05:13:13 UTC (rev 97062)
@@ -1,5 +1,4 @@
-<sh:package name="${package.name}" version="${package.version}"
-xmlns:sh="http://www.jboss.org/schema">
+<package name="${package.name}" version="${package.version}" xmlns="org/jboss/packagemanager/package">
<!-- Package to install a dummy jar into JBOSS_AS/server/default/deploy -->
<file name="dummy.jar" dest-path="server/default/deploy" type="library"/>
@@ -8,4 +7,4 @@
<script name="build.xml"/>
</post-install>
-</sh:package>
\ No newline at end of file
+</package>
\ No newline at end of file
Modified: projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/common/package-with-post-uninstall-script.xml
===================================================================
--- projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/common/package-with-post-uninstall-script.xml 2009-11-27 04:53:56 UTC (rev 97061)
+++ projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/common/package-with-post-uninstall-script.xml 2009-11-27 05:13:13 UTC (rev 97062)
@@ -1,5 +1,4 @@
-<sh:package name="${package.name}" version="${package.version}"
-xmlns:sh="http://www.jboss.org/schema">
+<package name="${package.name}" version="${package.version}" xmlns="org/jboss/packagemanager/package">
<!-- Package to install a dummy jar into JBOSS_AS/server/default/deploy -->
<file name="dummy.jar" dest-path="server/default/deploy" type="library"/>
@@ -8,4 +7,4 @@
<script name="build.xml"/>
</post-uninstall>
-</sh:package>
\ No newline at end of file
+</package>
\ No newline at end of file
Modified: projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/common/package-with-pre-install-script.xml
===================================================================
--- projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/common/package-with-pre-install-script.xml 2009-11-27 04:53:56 UTC (rev 97061)
+++ projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/common/package-with-pre-install-script.xml 2009-11-27 05:13:13 UTC (rev 97062)
@@ -1,6 +1,4 @@
-<sh:package name="${package.name}" version="${package.version}"
-xmlns:sh="http://www.jboss.org/schema">
-
+<package name="${package.name}" version="${package.version}" xmlns="org/jboss/packagemanager/package">
<!-- Package to install a dummy jar into JBOSS_AS/server/default/deploy -->
<file name="dummy.jar" dest-path="server/default/deploy" type="library"/>
@@ -8,4 +6,4 @@
<script name="build.xml"/>
</pre-install>
-</sh:package>
\ No newline at end of file
+</package>
\ No newline at end of file
Modified: projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/common/package-with-pre-uninstall-script.xml
===================================================================
--- projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/common/package-with-pre-uninstall-script.xml 2009-11-27 04:53:56 UTC (rev 97061)
+++ projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/common/package-with-pre-uninstall-script.xml 2009-11-27 05:13:13 UTC (rev 97062)
@@ -1,6 +1,4 @@
-<sh:package name="${package.name}" version="${package.version}"
-xmlns:sh="http://www.jboss.org/schema">
-
+<package name="${package.name}" version="${package.version}" xmlns="org/jboss/packagemanager/package">
<!-- Package to install a dummy jar into JBOSS_AS/server/default/deploy -->
<file name="dummy.jar" dest-path="server/default/deploy" type="library"/>
@@ -8,4 +6,4 @@
<script name="build.xml"/>
</pre-uninstall>
-</sh:package>
\ No newline at end of file
+</package>
\ No newline at end of file
Modified: projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/dependency/unit/dependee-package1.xml
===================================================================
--- projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/dependency/unit/dependee-package1.xml 2009-11-27 04:53:56 UTC (rev 97061)
+++ projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/dependency/unit/dependee-package1.xml 2009-11-27 05:13:13 UTC (rev 97062)
@@ -1,6 +1,4 @@
-<sh:package name="DependencyInstallTestCase-dependeee-package1" version="1.0.0"
-xmlns:sh="http://www.jboss.org/schema">
-
+<package name="${package.name}" version="${package.version}" xmlns="org/jboss/packagemanager/package">
<file name="dummy1.jar" dest-path="server/default/deployers" type="library"/>
@@ -8,4 +6,4 @@
<script path="scripts" name="pre-install-build.xml"/>
</pre-install>
-</sh:package>
\ No newline at end of file
+</package>
\ No newline at end of file
Modified: projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/dependency/unit/dependee-package2.xml
===================================================================
--- projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/dependency/unit/dependee-package2.xml 2009-11-27 04:53:56 UTC (rev 97061)
+++ projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/dependency/unit/dependee-package2.xml 2009-11-27 05:13:13 UTC (rev 97062)
@@ -1,11 +1,9 @@
-<sh:package name="DependencyInstallTestCase-dependeee-package2" version="1.0.1"
-xmlns:sh="http://www.jboss.org/schema">
+<package name="${package.name}" version="${package.version}" xmlns="org/jboss/packagemanager/package">
-
<file name="dummy2.jar" dest-path="server/default/deployers" type="library"/>
<post-install>
<script path="scripts" name="post-install-build.xml"/>
</post-install>
-</sh:package>
\ No newline at end of file
+</package>
\ No newline at end of file
Modified: projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/dependency/unit/dependee-package3.xml
===================================================================
--- projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/dependency/unit/dependee-package3.xml 2009-11-27 04:53:56 UTC (rev 97061)
+++ projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/dependency/unit/dependee-package3.xml 2009-11-27 05:13:13 UTC (rev 97062)
@@ -1,6 +1,4 @@
-<sh:package name="DependencyInstallTestCase-dependeee-package3" version="0.0.1"
-xmlns:sh="http://www.jboss.org/schema">
-
+<package name="${package.name}" version="${package.version}" xmlns="org/jboss/packagemanager/package">
<file name="dummy3.jar" dest-path="server/default/deployers" type="library"/>
@@ -12,4 +10,4 @@
<script name="build.xml"/>
</post-install>
-</sh:package>
\ No newline at end of file
+</package>
\ No newline at end of file
Modified: projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/dependency/unit/package-with-multiple-packaged-dependencies.xml
===================================================================
--- projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/dependency/unit/package-with-multiple-packaged-dependencies.xml 2009-11-27 04:53:56 UTC (rev 97061)
+++ projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/dependency/unit/package-with-multiple-packaged-dependencies.xml 2009-11-27 05:13:13 UTC (rev 97062)
@@ -1,6 +1,4 @@
-<sh:package name="DependencyInstallTestCase-package-with-multiple-packaged-deps" version="1.0.0-Alpha1"
-xmlns:sh="http://www.jboss.org/schema">
-
+<package name="${package.name}" version="${package.version}" xmlns="org/jboss/packagemanager/package">
<file name="dummy-main.jar" dest-path="server/default/deployers" type="library"/>
<file name="some-deployer-jboss-beans.xml" src-path="some-config-folder" dest-path="server/default/deployers" type="config"/>
@@ -11,4 +9,4 @@
<packaged-dependency file="/subfolder/deep-nested-folder/dependee-package3.jar"/>
</dependencies>
-</sh:package>
\ No newline at end of file
+</package>
\ No newline at end of file
Modified: projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/dependency/unit/package-with-unprocessed-dependencies.xml
===================================================================
--- projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/dependency/unit/package-with-unprocessed-dependencies.xml 2009-11-27 04:53:56 UTC (rev 97061)
+++ projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/dependency/unit/package-with-unprocessed-dependencies.xml 2009-11-27 05:13:13 UTC (rev 97062)
@@ -1,6 +1,4 @@
-<sh:package name="DependencyInstallTestCase-package-with-unprocessed-deps" version="1.0.0"
-xmlns:sh="http://www.jboss.org/schema">
-
+<package name="${package.name}" version="${package.version}" xmlns="org/jboss/packagemanager/package">
<file name="dummy.jar" dest-path="server/default/deployers" type="library"/>
<file name="some-deployer-jboss-beans.xml" dest-path="server/default/deployers" type="config"/>
@@ -9,4 +7,4 @@
<unprocessed-dependencies file="ivy.xml"/>
</dependencies>
-</sh:package>
\ No newline at end of file
+</package>
\ No newline at end of file
Modified: projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/upgrade/unit/package-version1.xml
===================================================================
--- projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/upgrade/unit/package-version1.xml 2009-11-27 04:53:56 UTC (rev 97061)
+++ projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/upgrade/unit/package-version1.xml 2009-11-27 05:13:13 UTC (rev 97062)
@@ -1,5 +1,4 @@
-<sh:package name="${package.name}" version="${package.version}"
-xmlns:sh="http://www.jboss.org/schema">
+<package name="${package.name}" version="${package.version}" xmlns="org/jboss/packagemanager/package">
<!-- Package to install a dummy jar into JBOSS_AS/server/default/deploy -->
<file name="dummy-version1.jar" dest-path="server/default/deploy" type="library"/>
@@ -13,4 +12,4 @@
<script name="build-version1.xml"/>
</post-uninstall>
-</sh:package>
\ No newline at end of file
+</package>
\ No newline at end of file
Modified: projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/upgrade/unit/package-version2.xml
===================================================================
--- projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/upgrade/unit/package-version2.xml 2009-11-27 04:53:56 UTC (rev 97061)
+++ projects/ejb3/trunk/package-manager/src/test/resources/org/jboss/ejb3/packagemanager/test/upgrade/unit/package-version2.xml 2009-11-27 05:13:13 UTC (rev 97062)
@@ -1,6 +1,4 @@
-<sh:package name="${package.name}" version="${package.version}"
-xmlns:sh="http://www.jboss.org/schema">
-
+<package name="${package.name}" version="${package.version}" xmlns="org/jboss/packagemanager/package">
<!-- Package to install a dummy jar into JBOSS_AS/server/default/deploy -->
<file name="dummy-version2.jar" dest-path="server/default/deploy" type="library"/>
<file name="common-util.jar" dest-path="common/lib" type="library"/>
@@ -13,4 +11,4 @@
<script name="build-version2.xml"/>
</post-uninstall>
-</sh:package>
\ No newline at end of file
+</package>
\ No newline at end of file
More information about the jboss-cvs-commits
mailing list