<!--
 ~ Copyright (c) 2005-2011, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
 ~
 ~ WSO2 Inc. 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 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/maven-v4_0_0.xsd">

    <parent>
        <groupId>org.wso2.carbon.business-process</groupId>
        <artifactId>bpel-feature</artifactId>
        <version>4.5.49</version>
        <relativePath>../pom.xml</relativePath>
    </parent>

    <modelVersion>4.0.0</modelVersion>
    <artifactId>org.wso2.carbon.bpel.server.feature</artifactId>
    <packaging>pom</packaging>
    <name>WSO2 Carbon - BPEL Core Feature</name>
    <url>http://wso2.org</url>
    <description>This feature contains the core bundles required for Back-end BPEL functionality
    </description>

    <dependencies>
        <dependency>
            <groupId>org.wso2.orbit.com.h2database</groupId>
            <artifactId>h2</artifactId>
        </dependency>
        <dependency>
            <groupId>org.wso2.carbon.business-process</groupId>
            <artifactId>org.wso2.carbon.bpel.skeleton</artifactId>
        </dependency>
        <dependency>
            <groupId>org.wso2.carbon.business-process</groupId>
            <artifactId>org.wso2.carbon.bpel.deployer</artifactId>
        </dependency>
        <dependency>
            <groupId>org.wso2.carbon.business-process</groupId>
            <artifactId>org.wso2.carbon.bpel</artifactId>
        </dependency>
        <dependency>
            <groupId>org.wso2.carbon.business-process</groupId>
            <artifactId>org.wso2.carbon.bpel.b4p</artifactId>
        </dependency>
        <dependency>
            <groupId>org.wso2.carbon.business-process</groupId>
            <artifactId>org.wso2.carbon.bpel.cluster.notifier</artifactId>
        </dependency>
        <dependency>
            <groupId>org.wso2.orbit.org.apache.ode</groupId>
            <artifactId>ode</artifactId>
            <exclusions>
                <exclusion>
                    <groupId>com.h2database</groupId>
                    <artifactId>h2</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-antrun-plugin</artifactId>
                <version>1.1</version>
                <executions>
                    <execution>
                        <id>clean-bpel-h2-database</id>
                        <phase>prepare-package</phase>
                        <goals>
                            <goal>run</goal>
                        </goals>
                        <configuration>
                            <tasks>
                                <delete file="resources/conf/jpadb.mv.db" />
                            </tasks>
                        </configuration>
                    </execution>
                    <execution>
                        <id>create-bpel-h2-database</id>
                        <phase>package</phase>
                        <goals>
                            <goal>run</goal>
                        </goals>
                        <configuration>
                            <tasks>
                                <path id="h2.classpath">
                                    <path refid="maven.compile.classpath" />
                                </path>

                                <echo message="########### Create BPEL Database ##############" />

                                <sql driver="org.h2.Driver" url="jdbc:h2:${basedir}/resources/conf/jpadb;create=true" userid="wso2carbon" password="wso2carbon" autocommit="true" onerror="continue">
                                    <classpath>
                                        <path refid="h2.classpath" />
                                    </classpath>
                                    <fileset file="${basedir}/resources/dbscripts/create/h2.sql" />
                                </sql>
                                <echo message="##################### END ############################" />
                                <echo message="********Version of H2: " />
                                <echo>${orbit.version.h2.engine}</echo>
                            </tasks>
                        </configuration>
                    </execution>
                    <execution>
                        <id>clean_target</id>
                        <phase>install</phase>
                        <configuration>
                            <tasks>
                                <delete dir="src/main/resources" />
                                <delete dir="src/main" />
                                <delete dir="src" />
                            </tasks>
                        </configuration>
                        <goals>
                            <goal>run</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>

            <plugin>
                <artifactId>maven-resources-plugin</artifactId>
                <executions>
                    <execution>
                        <id>prefilter-resources</id>
                        <phase>package</phase>
                        <goals>
                            <goal>copy-resources</goal>
                        </goals>
                        <configuration>
                            <outputDirectory>src/main/resources</outputDirectory>
                            <resources>
                                <resource>
                                    <directory>resources</directory>
                                    <includes>
                                        <include>**/bps.xml</include>
                                        <incluse>**/b4p-coordination-config.xml</incluse>
                                        <include>**/jpadb.mv.db</include>
                                        <include>**/bps-datasources.xml</include>
                                        <include>**/*.sql</include>
                                        <include>p2.inf</include>
                                        <include>build.properties</include>
                                    </includes>
                                </resource>
                            </resources>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.wso2.maven</groupId>
                <artifactId>carbon-p2-plugin</artifactId>
                <version>${carbon.p2.plugin.version}</version>
                <executions>
                    <execution>
                        <id>4-p2-feature-generation</id>
                        <phase>package</phase>
                        <goals>
                            <goal>p2-feature-gen</goal>
                        </goals>
                        <configuration>
                            <id>org.wso2.carbon.bpel.server</id>
                            <propertiesFile>../../etc/feature.properties</propertiesFile>
                            <adviceFile>
                                <properties>
                                    <propertyDef>org.wso2.carbon.p2.category.type:server
                                    </propertyDef>
                                    <propertyDef>org.eclipse.equinox.p2.type.group:false
                                    </propertyDef>
                                </properties>
                            </adviceFile>
                            <bundles>
                                <bundleDef>org.wso2.carbon.business-process:org.wso2.carbon.bpel
                                </bundleDef>
                                <bundleDef>
                                    org.wso2.carbon.business-process:org.wso2.carbon.bpel.deployer
                                </bundleDef>
                                <bundleDef>
                                    org.wso2.carbon.business-process:org.wso2.carbon.bpel.cluster.notifier
                                </bundleDef>
                                <bundleDef>
                                    org.wso2.carbon.business-process:org.wso2.carbon.bpel.b4p
                                </bundleDef>
                                <bundleDef>
                                    org.wso2.carbon.business-process:org.wso2.carbon.bpel.skeleton
                                </bundleDef>
                            </bundles>
                            <importBundles>
                                <importBundleDef>org.wso2.orbit.org.apache.ode:ode</importBundleDef>
                                <importBundleDef>org.ow2.asm:asm</importBundleDef>
                                <importBundleDef>org.ow2.asm:asm-commons</importBundleDef>
                                <importBundleDef>org.ow2.asm:asm-tree</importBundleDef>
                                <importBundleDef>cglib.wso2:cglib</importBundleDef>
                                <!--importBundleDef>org.apache.axis2.wso2:axis2-jibx</importBundleDef-->
                                <importBundleDef>org.jibx.wso2:jibx</importBundleDef>
                                <importBundleDef>org.apache.axis2.wso2:axis2-jaxbri
                                </importBundleDef>
                                <importBundleDef>org.wso2.orbit.sun.xml.bind:jaxb</importBundleDef>
                                <importBundleDef>org.apache.bcel.wso2:bcel</importBundleDef>
                                <importBundleDef>axion.wso2:axion</importBundleDef>
                                <importBundleDef>commons-primitives.wso2:commons-primitives
                                </importBundleDef>
                                <importBundleDef>
                                    org.apache.geronimo.components.wso2:geronimo-connector
                                </importBundleDef>
                                <!--importBundleDef>org.apache.geronimo.specs.wso2:geronimo-ejb_2.1_spec</importBundleDef-->
                                <importBundleDef>
                                    org.apache.geronimo.specs.wso2:geronimo-j2ee-connector_1.5_spec
                                </importBundleDef>
                                <importBundleDef>org.apache.geronimo.framework:geronimo-kernel
                                </importBundleDef>
                                <importBundleDef>geronimo-spec.wso2:geronimo-spec-javamail
                                </importBundleDef>
                                <importBundleDef>geronimo-spec.wso2:geronimo-spec-jms
                                </importBundleDef>
                                <importBundleDef>
                                    org.apache.geronimo.components.wso2:geronimo-transaction
                                </importBundleDef>
                                <importBundleDef>org.apache.openjpa:openjpa</importBundleDef>
                                <importBundleDef>org.apache.geronimo.specs:geronimo-jpa_2.0_spec
                                </importBundleDef>
                                <importBundleDef>net.sf.saxon.wso2:saxon.he</importBundleDef>
                                <importBundleDef>net.sourceforge.serp.wso2:serp</importBundleDef>
                                <importBundleDef>org.wso2.orbit.tranql:tranql-connector</importBundleDef>
                                <importBundleDef>antlr.wso2:antlr</importBundleDef>
                                <importBundleDef>rhino.wso2:js</importBundleDef>
                                <importBundleDef>
                                    org.wso2.carbon.business-process:org.wso2.carbon.bpel.common
                                </importBundleDef>
                            </importBundles>
                            <importFeatures>
                                <importFeatureDef>
                                    org.wso2.carbon.core.server:compatible:${carbon.kernel.feature.version}
                                </importFeatureDef>
                                <importFeatureDef>
                                    org.wso2.carbon.unifiedendpoint.server:compatible:${carbon.business-process.version}
                                </importFeatureDef>
                                <importFeatureDef>
                                    org.wso2.carbon.system.statistics.server:compatible:${carbon.commons.version}
                                </importFeatureDef>
                                <importFeatureDef>
                                    org.wso2.carbon.attachment.mgt.server:compatible:${carbon.business-process.version}
                                </importFeatureDef>
                            </importFeatures>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>

</project>

