You are viewing a plain text version of this content. The canonical link for it is here.
Posted to torque-dev@db.apache.org by tf...@apache.org on 2007/10/01 09:25:14 UTC
svn commit: r580875 - in /db/torque:
maven2-plugin/trunk/src/main/java/org/apache/torque/mojo/IdTableInitSqlMojo.java
maven2-plugin/trunk/src/main/java/org/apache/torque/mojo/SqlMojo.java
site/trunk/xdocs/changes.xml test/trunk/test-project/pom.xml
Author: tfischer
Date: Mon Oct 1 00:25:08 2007
New Revision: 580875
URL: http://svn.apache.org/viewvc?rev=580875&view=rev
Log:
- Added the id-table-init-sql goal to the maven2 plugin
- the suffix parameter in the sql goal in the maven2 plugin now works.
Fixes TORQUE-101. Thanks to Marc Kannegiesser for the patch.
Added:
db/torque/maven2-plugin/trunk/src/main/java/org/apache/torque/mojo/IdTableInitSqlMojo.java
Modified:
db/torque/maven2-plugin/trunk/src/main/java/org/apache/torque/mojo/SqlMojo.java
db/torque/site/trunk/xdocs/changes.xml
db/torque/test/trunk/test-project/pom.xml
Added: db/torque/maven2-plugin/trunk/src/main/java/org/apache/torque/mojo/IdTableInitSqlMojo.java
URL: http://svn.apache.org/viewvc/db/torque/maven2-plugin/trunk/src/main/java/org/apache/torque/mojo/IdTableInitSqlMojo.java?rev=580875&view=auto
==============================================================================
--- db/torque/maven2-plugin/trunk/src/main/java/org/apache/torque/mojo/IdTableInitSqlMojo.java (added)
+++ db/torque/maven2-plugin/trunk/src/main/java/org/apache/torque/mojo/IdTableInitSqlMojo.java Mon Oct 1 00:25:08 2007
@@ -0,0 +1,189 @@
+package org.apache.torque.mojo;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import org.apache.commons.configuration.PropertiesConfiguration;
+import org.apache.torque.task.TorqueSQLTask;
+import org.apache.maven.plugin.MojoExecutionException;
+
+/**
+ * Generates SQL for creating the database from the schema.xml files.
+ *
+ * @author Raphael Pieroni (rafale_at_codehaus.org)
+ * @author <a href="fischer@seitenbau.de">Thomas Fischer</a>
+ * @author <a href="kannegiesser@synyx.de">Marc Kannegiesser</a>
+ *
+ * @goal id-table-init-sql
+ * @phase generate-sources
+ */
+public class IdTableInitSqlMojo extends SqlMojo
+{
+ public static final String INITIALID_CONTEXT_PROPERTY
+ = "initialID";
+ public static final String INITIALIDVALUE_CONTEXT_PROPERTY
+ = "initialIDValue";
+ public static final String INITIALIDSTEP_CONTEXT_PROPERTY
+ = "initialIDStep";
+
+ // The following dummies trick the Mojo Description Extractor
+ // into setting the correct default values for
+ // reportFile and contextPropertiesPath
+ /**
+ * The location where the report file will be generated.
+ *
+ * @parameter property="reportFile"
+ * expression="../../torque/report.${project.artifact.artifactId}.idtable-init-sql.generation"
+ */
+ private String dummy2;
+
+ /**
+ * The location where the context property file for velocity will be
+ * generated.
+ *
+ * @parameter property="contextPropertiesPath"
+ * expression="${project.build.directory}/torque/context.idtable-init-sql.properties"
+ */
+ private String dummy3;
+
+ /**
+ * The initial ID of the idtables
+ *
+ * @parameter expression="101"
+ */
+ private String initialID;
+
+ /**
+ * The initial IDValue of the idtable
+ *
+ * @parameter expression="1000"
+ */
+ private String initialIDValue;
+
+ /**
+ * The initial ID Step of the idtable
+ *
+ * @parameter expression="10"
+ */
+ private String initialIDStep;
+
+ /**
+ * Creates a new IdTableInitSqlMojo object.
+ */
+ public IdTableInitSqlMojo()
+ {
+ }
+
+ /**
+ * Sets the initial id of the idtables
+ *
+ * @param initialID The initial of the idtables
+ */
+ public void setInitialID(String initialID)
+ {
+ this.initialID = initialID;
+ }
+
+ /**
+ * Returns the initial id of the idtable
+ *
+ * @return initialID The initial ID of the idtables
+ */
+ public String getInitialID()
+ {
+ return this.initialID;
+ }
+
+
+
+ /**
+ * Sets the initial id value of the idtables
+ *
+ * @param initialIDValue The initial id value of the tables
+ */
+ public void setInitialIDValue(String initialIDValue)
+ {
+ this.initialIDValue = initialIDValue;
+ }
+
+ /**
+ * Returns the initial id value of the idtables
+ *
+ * @return initialIDValue the initial id value of the idtables
+ */
+ public String getInitialIDValue()
+ {
+ return this.initialIDValue;
+ }
+
+
+
+ /**
+ * Sets the initial id step of the idtables
+ *
+ * @param initialIDStep The initial id step of the tables
+ */
+ public void setInitialIDStep(String initialIDStep)
+ {
+ this.initialIDStep = initialIDStep;
+ }
+
+ /**
+ * Returns the initial id step of the idtables
+ *
+ * @return initialIDStep the initial id step of the idtables
+ */
+ public String getInitialIDStep()
+ {
+ return this.initialIDStep;
+ }
+
+ /**
+ * Returns the context properties for the Texen task.
+ *
+ * @return The PropertiesConfiguration containing all context properties,
+ * not null.
+ */
+ protected PropertiesConfiguration getMojoContextProperties()
+ {
+ PropertiesConfiguration configuration = super.getMojoContextProperties();
+ configuration.addProperty(
+ INITIALID_CONTEXT_PROPERTY,
+ initialID);
+
+ configuration.addProperty(
+ INITIALIDVALUE_CONTEXT_PROPERTY,
+ initialIDValue);
+
+ configuration.addProperty(
+ INITIALIDSTEP_CONTEXT_PROPERTY,
+ initialIDStep);
+ return configuration;
+ }
+
+ /**
+ * Returns the path to the control template.
+ *
+ * @return "sql/id-table/Control.vm"
+ */
+ protected String getControlTemplate()
+ {
+ return "sql/id-table/Control.vm";
+ }
+}
Modified: db/torque/maven2-plugin/trunk/src/main/java/org/apache/torque/mojo/SqlMojo.java
URL: http://svn.apache.org/viewvc/db/torque/maven2-plugin/trunk/src/main/java/org/apache/torque/mojo/SqlMojo.java?rev=580875&r1=580874&r2=580875&view=diff
==============================================================================
--- db/torque/maven2-plugin/trunk/src/main/java/org/apache/torque/mojo/SqlMojo.java (original)
+++ db/torque/maven2-plugin/trunk/src/main/java/org/apache/torque/mojo/SqlMojo.java Mon Oct 1 00:25:08 2007
@@ -20,6 +20,7 @@
*/
import org.apache.commons.configuration.PropertiesConfiguration;
+import org.apache.maven.plugin.MojoExecutionException;
import org.apache.torque.task.TorqueSQLTask;
/**
@@ -27,6 +28,7 @@
*
* @author Raphael Pieroni (rafale_at_codehaus.org)
* @author <a href="fischer@seitenbau.de">Thomas Fischer</a>
+ * @author <a href="kannegiesser@synyx.de">Marc Kannegiesser</a>
*
* @goal sql
* @phase generate-sources
@@ -149,4 +151,30 @@
{
return "sql/base/Control.vm";
}
+
+ /**
+ * Configures the Texen task which is wrapped by this mojo.
+ * In this implementation, the context properties, useClasspath,
+ * the output directory, the control template, the schema Fileset,
+ * the target package, the target database and the suffix are set.
+ *
+ * @throws MojoExecutionException if an error occurs when setting the Tasks
+ * properties.
+ *
+ * @see TexenTaskMojo#configureTask()
+ */
+ protected void configureTask() throws MojoExecutionException
+ {
+ super.configureTask();
+
+ TorqueSQLTask task
+ = (TorqueSQLTask) super.getGeneratorTask();
+
+ if (suffix != null)
+ {
+ getLog().debug("Adding suffix: " + suffix );
+ task.setSuffix(suffix);
+ }
+
+ }
}
Modified: db/torque/site/trunk/xdocs/changes.xml
URL: http://svn.apache.org/viewvc/db/torque/site/trunk/xdocs/changes.xml?rev=580875&r1=580874&r2=580875&view=diff
==============================================================================
--- db/torque/site/trunk/xdocs/changes.xml (original)
+++ db/torque/site/trunk/xdocs/changes.xml Mon Oct 1 00:25:08 2007
@@ -31,6 +31,12 @@
<body>
<release version="3.3-RC3" date="in SVN">
+ <action type="add" dev="tfischer" issue="TORQUE-101" due-to="Marc Kannegiesser">
+ Implemented the goal id-broker-init-sql in the Maven2 plugin.
+ </action>
+ <action type="fix" dev="tfischer" due-to="Marc Kannegiesser">
+ The suffix parameter to the Maven2-plugin's sql task now works.
+ </action>
<action type="add" dev="tfischer" issue="TORQUE-99" due-to="Tobias Hilka">
Added copy(..) and add<ForeignKey>(..) methods with a connection
parameter.
Modified: db/torque/test/trunk/test-project/pom.xml
URL: http://svn.apache.org/viewvc/db/torque/test/trunk/test-project/pom.xml?rev=580875&r1=580874&r2=580875&view=diff
==============================================================================
--- db/torque/test/trunk/test-project/pom.xml (original)
+++ db/torque/test/trunk/test-project/pom.xml Mon Oct 1 00:25:08 2007
@@ -160,6 +160,7 @@
<goal>sql</goal>
<goal>sqlExec</goal>
<goal>documentation</goal>
+ <goal>id-table-init-sql</goal>
</goals>
</execution>
<execution>
---------------------------------------------------------------------
To unsubscribe, e-mail: torque-dev-unsubscribe@db.apache.org
For additional commands, e-mail: torque-dev-help@db.apache.org