| <!-- |
| ~ 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. |
| --> |
| |
| <project> |
| |
| <property name="db.scripts.dir" value="${basedir}/target" /> |
| <property name="sql.dir" value="${basedir}/src/main/sql"/> |
| <property name="dao-hibernate.classes" value="${basedir}/../dao-hibernate/target/classes" /> |
| <property name="bpel-store.classes" value="${basedir}/../bpel-store/target/classes" /> |
| |
| <path id="classpath"> |
| <pathelement path="${maven.runtime.classpath}"/> |
| </path> |
| |
| <target name="create-schema"> |
| |
| <taskdef name="schemaexport" classname="org.hibernate.tool.hbm2ddl.SchemaExportTask" |
| classpathref="classpath"/> |
| |
| <mkdir dir="target"/> |
| <mkdir dir="${db.scripts.dir}" /> |
| |
| <!-- Derby --> |
| <create-ddl db="derby"/> |
| |
| <!-- MySQL --> |
| <create-ddl db="mysql"/> |
| |
| <!-- Oracle --> |
| <create-ddl db="oracle"/> |
| |
| <!-- PostgreSQL --> |
| <create-ddl db="postgres"/> |
| |
| <!-- Sybase --> |
| <create-ddl db="hsql" /> |
| <create-ddl db="h2" /> |
| |
| <!-- MSSQL --> |
| <create-ddl db="sqlserver" /> |
| |
| <!-- Firebird --> |
| <create-ddl db="firebird" /> |
| |
| </target> |
| |
| <target name="zip-derby-db"> |
| <zip destfile="${basedir}/target/ode-dao-hibernate-db-${ode.version}.zip" basedir="${basedir}/target/derby/" /> |
| |
| </target> |
| |
| <!-- |
| ============================================ |
| Macro defs, no need to change anything below |
| ============================================ |
| --> |
| |
| <macrodef name="create-ddl"> |
| <attribute name="db"/> |
| |
| <sequential> |
| <echo></echo> |
| <echo>=====================</echo> |
| <echo>Create DDL @{db}</echo> |
| <schemaexport |
| properties="${sql.dir}/ode.@{db}.properties" |
| quiet="yes" |
| text="yes" |
| create="yes" |
| delimiter=";" |
| output="${db.scripts.dir}/partial.@{db}.sql"> |
| <fileset dir="${dao-hibernate.classes}/"> |
| <include name="**/*.hbm.xml"/> |
| <exclude name="**/HMessageExchangeProperty.hbm.xml" /> |
| </fileset> |
| <fileset dir="${bpel-store.classes}/"> |
| <include name="**/*.hbm.xml"/> |
| </fileset> |
| </schemaexport> |
| <concat destfile="${db.scripts.dir}/@{db}.sql"> |
| <fileset file="${sql.dir}/common.sql"/> |
| <fileset file="${sql.dir}/simplesched-@{db}.sql"/> |
| <fileset file="${db.scripts.dir}/partial.@{db}.sql"/> |
| </concat> |
| <echo>Done.</echo> |
| <echo>=====================</echo> |
| </sequential> |
| </macrodef> |
| |
| </project> |