[jbossseam-issues] [JBoss JIRA] Commented: (JBSEAM-538) Add the ability to regenerate the datasource
gregorypierce (JIRA)
jira-events at jboss.com
Fri Dec 1 18:38:55 EST 2006
[ http://jira.jboss.com/jira/browse/JBSEAM-538?page=comments#action_12348066 ]
gregorypierce commented on JBSEAM-538:
--------------------------------------
I will refactor and resubmit. Now that I know people are interested in the feature I will spend some time to make it clean.
> Add the ability to regenerate the datasource
> --------------------------------------------
>
> Key: JBSEAM-538
> URL: http://jira.jboss.com/jira/browse/JBSEAM-538
> Project: JBoss Seam
> Issue Type: Feature Request
> Components: Tools
> Affects Versions: 1.1.0.CR1
> Reporter: gregorypierce
>
> Allows you to swap datasources from the current datasource to a new datasource. Why? Because many times I will develop using HSQL and then later want to move to another datasource. Note: You will also have to add overwrite="true" to the various copy tasks or else they won't overwrite the existing datasource files.
> <target name="new-datasource">
> <!-- define the datasource -->
> <condition property="database.type.default" value="${database.type}">
> <isset property="database.type"/>
> </condition>
> <property name="database.type.default" value="hsql"/>
> <input addproperty="database.type.new"
> message="What kind of database are you using? [${database.type.default}] "
> validargs="hsql,mysql,oracle,postgres,mssql,db2,sybase,enterprisedb"
> defaultvalue="${database.type.default}"/>
>
> <!-- if the database type did not change, default to the previous values -->
>
> <condition property="hibernate.dialect.default" value="${hibernate.dialect}">
> <equals arg1="${database.type}" arg2="${database.type.new}"/>
> </condition>
> <condition property="hibernate.connection.url.default" value="${hibernate.connection.url}">
> <equals arg1="${database.type}" arg2="${database.type.new}"/>
> </condition>
> <condition property="hibernate.connection.driver_class.default" value="${hibernate.connection.driver_class}">
> <equals arg1="${database.type}" arg2="${database.type.new}"/>
> </condition>
>
> <!-- otherwise default to the defaults for the database type -->
>
> <condition property="hibernate.dialect.default" value="org.hibernate.dialect.HSQLDialect">
> <equals arg1="${database.type.new}" arg2="hsql"/>
> </condition>
> <condition property="hibernate.dialect.default" value="org.hibernate.dialect.MySQLDialect">
> <equals arg1="${database.type.new}" arg2="mysql"/>
> </condition>
> <condition property="hibernate.dialect.default" value="org.hibernate.dialect.OracleDialect">
> <equals arg1="${database.type.new}" arg2="oracle"/>
> </condition>
> <condition property="hibernate.dialect.default" value="org.hibernate.dialect.PostgreSQLDialect">
> <equals arg1="${database.type.new}" arg2="postgres"/>
> </condition>
> <condition property="hibernate.dialect.default" value="org.hibernate.dialect.PostgreSQLDialect">
> <equals arg1="${database.type.new}" arg2="enterprisedb"/>
> </condition>
> <condition property="hibernate.dialect.default" value="org.hibernate.dialect.SQLServerDialect">
> <equals arg1="${database.type.new}" arg2="mssql"/>
> </condition>
> <condition property="hibernate.dialect.default" value="org.hibernate.dialect.DB2Dialect">
> <equals arg1="${database.type.new}" arg2="db2"/>
> </condition>
> <condition property="hibernate.dialect.default" value="org.hibernate.dialect.SybaseDialect">
> <equals arg1="${database.type.new}" arg2="sybase"/>
> </condition>
>
> <condition property="hibernate.connection.driver_class.default" value="org.hsqldb.jdbcDriver">
> <equals arg1="${database.type.new}" arg2="hsql"/>
> </condition>
> <condition property="hibernate.connection.driver_class.default" value="com.mysql.jdbc.Driver">
> <equals arg1="${database.type.new}" arg2="mysql"/>
> </condition>
> <condition property="hibernate.connection.driver_class.default" value="oracle.jdbc.driver.OracleDriver">
> <equals arg1="${database.type.new}" arg2="oracle"/>
> </condition>
> <condition property="hibernate.connection.driver_class.default" value="org.postgresql.Driver">
> <equals arg1="${database.type.new}" arg2="postgres"/>
> </condition>
> <condition property="hibernate.connection.driver_class.default" value="com.edb.Driver">
> <equals arg1="${database.type.new}" arg2="enterprisedb"/>
> </condition>
> <condition property="hibernate.connection.driver_class.default" value="com.microsoft.sqlserver.jdbc.SQLServerDriver">
> <equals arg1="${database.type.new}" arg2="mssql"/>
> </condition>
> <condition property="hibernate.connection.driver_class.default" value="COM.ibm.db2.jdbc.app.DB2Driver">
> <equals arg1="${database.type.new}" arg2="db2"/>
> </condition>
> <condition property="hibernate.connection.driver_class.default" value="com.sybase.jdbc2.jdbc.SybDriver">
> <equals arg1="${database.type.new}" arg2="sybase"/>
> </condition>
> <condition property="hibernate.connection.url.default" value="jdbc:hsqldb:.">
> <equals arg1="${database.type.new}" arg2="hsql"/>
> </condition>
> <condition property="hibernate.connection.url.default" value="jdbc:mysql:///test">
> <equals arg1="${database.type.new}" arg2="mysql"/>
> </condition>
> <condition property="hibernate.connection.url.default" value="jdbc:oracle:thin:@localhost:1521:test">
> <equals arg1="${database.type.new}" arg2="oracle"/>
> </condition>
> <condition property="hibernate.connection.url.default" value="jdbc:postgresql:template1">
> <equals arg1="${database.type.new}" arg2="postgres"/>
> </condition>
> <condition property="hibernate.connection.url.default" value="jdbc:edb://localhost:5444/edb">
> <equals arg1="${database.type.new}" arg2="enterprisedb"/>
> </condition>
> <condition property="hibernate.connection.url.default" value="jdbc:sqlserver://localhost">
> <equals arg1="${database.type.new}" arg2="mssql"/>
> </condition>
> <condition property="hibernate.connection.url.default" value="jdbc:db2:test">
> <equals arg1="${database.type.new}" arg2="db2"/>
> </condition>
> <condition property="hibernate.connection.url.default" value="jdbc:sybase:Tds:localhost:5000/test">
> <equals arg1="${database.type.new}" arg2="sybase"/>
> </condition>
>
> <!-- finally, default them to HSQL -->
>
> <property name="hibernate.dialect.default" value="org.hibernate.dialect.HSQLDialect"/>
> <property name="hibernate.connection.driver_class.default" value="org.hsqldb.jdbcDriver"/>
> <property name="hibernate.connection.url.default" value="jdbc:hsqldb:."/>
>
> <input addproperty="hibernate.dialect.new"
> message="Enter the Hibernate dialect for your database [${hibernate.dialect.default}]"
> defaultvalue="${hibernate.dialect.default}"/>
>
> <property name="driver.jar" value="hsqldb.jar"/>
> <input addproperty="driver.jar.new"
> message="Enter the filesystem path to the JDBC driver jar [${driver.jar}]"
> defaultvalue="${seamgen.home}/lib/${driver.jar}"/>
>
> <input addproperty="hibernate.connection.driver_class.new"
> message="Enter JDBC driver class for your database [${hibernate.connection.driver_class.default}]"
> defaultvalue="${hibernate.connection.driver_class.default}"/>
>
> <input addproperty="hibernate.connection.url.new"
> message="Enter the JDBC URL for your database [${hibernate.connection.url.default}]"
> defaultvalue="${hibernate.connection.url.default}"/>
>
> <property name="hibernate.connection.username" value="sa"/>
> <input addproperty="hibernate.connection.username.new"
> message="Enter database username [${hibernate.connection.username}]"
> defaultvalue="${hibernate.connection.username}"/>
>
> <property name="hibernate.connection.password" value=""/>
> <input addproperty="hibernate.connection.password.new"
> message="Enter database password [${hibernate.connection.password}]"
> defaultvalue="${hibernate.connection.password}"/>
>
> <property name="database.exists" value="n"/>
> <input addproperty="database.exists.new"
> message="Are you working with tables that already exist in the database? [${database.exists}] "
> validargs="y,n,"
> defaultvalue="${database.exists}"/>
>
> <propertyfile file="${user.dir}/project.properties">
> <entry key="basepackage.name" value="${basepackage.name}" />
> <entry key="project.name" value="${project.name}"/>
> <entry key="project.home" value="${project.home}" />
>
> <!-- package names -->
> <entry key="action.package" value="${action.package}"/>
> <entry key="model.package" value="${model.package}"/>
> <entry key="test.package" value="${test.package}"/>
> <!-- project database information -->
> <entry key="database.type" value="${database.type.new}"/>
> <entry key="database.exists" value="${database.exists.new}"/>
> <entry key="hibernate.dialect" value="${hibernate.dialect.new}"/>
> <entry key="hibernate.connection.driver_class" value="${hibernate.connection.driver_class.new}"/>
> <entry key="hibernate.connection.url" value="${hibernate.connection.url.new}"/>
> <entry key="hibernate.connection.username" value="${hibernate.connection.username.new}"/>
> <entry key="hibernate.connection.password" value="${hibernate.connection.password.new}"/>
> <entry key="driver.jar" value="${driver.jar.new}"/>
>
> <entry key="eclipse.wtp" value="${eclipse.wtp.new}"/>
>
>
> </propertyfile>
>
> <property file="${user.dir}/project.properties" />
> <property file="${seam.home}/seam.properties" />
> <property file="${user.dir}/${project.name}/project.properties" />
>
> <condition property="wtp">
> <equals arg1="${eclipse.wtp}" arg2="y"/>
> </condition>
>
> <antcall target="file-copy" />
> <echo message="Your project has been created." />
> <echo message="Add the project from inside Eclipse (or type 'seam explode') and go to http://localhost:8080/${project.name}"/>
> </target>
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the seam-issues
mailing list