<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/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <dependencies>
        <dependency>
            <groupId>fish.focus.uvms.maven</groupId>
            <artifactId>uvms-pom-java11-deps</artifactId>
            <type>pom</type>
            <scope>provided</scope>
        </dependency>
    </dependencies>

    <parent>
        <groupId>fish.focus.uvms.movement-rules</groupId>
        <artifactId>movement-rules</artifactId>
        <version>2.4.16</version>
    </parent>

    <artifactId>movement-rules-model</artifactId>
    <name>movement-rules-model</name>
    <packaging>ejb</packaging>
    <description>This module shall have interfaces, XSD, and DTOs</description>

    <properties>
        <wsdl.contract.name>RulesModuleService</wsdl.contract.name>
        <binding.xml>binding-date.xml</binding.xml>
    </properties>

    <build>
        <finalName>${project.parent.artifactId}-model-${project.version}</finalName>
        <plugins>
			<plugin>
				<artifactId>maven-clean-plugin</artifactId>
				<executions>
					<execution>
						<id>clean-generated-sources</id>
						<phase>clean</phase>
						<goals>
							<goal>clean</goal>
						</goals>
						<configuration>
							<filesets>
								<fileset>
									<directory>${basedir}/src/main/java/fish/focus/schema</directory>									
								</fileset>
								<fileset>
									<directory>${basedir}/src/main/java/org</directory>									
								</fileset>								
							</filesets>
						</configuration>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<groupId>org.apache.cxf</groupId>
				<artifactId>cxf-codegen-plugin</artifactId>
				<version>3.5.0</version>
				<executions>
					<execution>
						<id>generate-asset-module</id>
						<phase>generate-sources</phase>
						<configuration>
							<wsdlOptions>
								<wsdlOption>

									<wsdl>${basedir}/src/main/resources/contract/${wsdl.contract.name}.wsdl
									</wsdl>
									<bindingFiles>
										<bindingFile>${basedir}/src/main/resources/${binding.xml}</bindingFile>
									</bindingFiles>
								</wsdlOption>
							</wsdlOptions>
						</configuration>
						<goals>
							<goal>wsdl2java</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
            <plugin>
                <groupId>org.jacoco</groupId>
                <artifactId>jacoco-maven-plugin</artifactId>
                <configuration>
                    <destFile>${sonar.jacoco.reportPath}</destFile>
                    <append>true</append>
                </configuration>
                <executions>
                    <execution>
                        <id>jacoco-initialize</id>
                        <goals>
                            <goal>prepare-agent</goal>
                        </goals>
                    </execution>
                    <execution>
                        <id>jacoco-site</id>
                        <phase>verify</phase>
                        <goals>
                            <goal>report</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-ejb-plugin</artifactId>
                <configuration>
                    <ejbVersion>3.1</ejbVersion>
                </configuration>
            </plugin>
            <plugin>
                <artifactId>maven-release-plugin</artifactId>
                <dependencies>
                    <dependency>
                        <groupId>org.apache.maven.scm</groupId>
                        <artifactId>maven-scm-provider-gitexe</artifactId>
                        <version>1.12.2</version>
                    </dependency>
                </dependencies>
                <configuration>
                    <checkModificationExcludes>
                        <checkModificationExclude>src/main/java/fish/focus/schema</checkModificationExclude>
                    </checkModificationExcludes>
                </configuration>
            </plugin>
        </plugins>
    </build>

</project>
