<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>

	<parent>
		<relativePath>..</relativePath>
		<groupId>eclipselink.example.jpa</groupId>
		<artifactId>employee</artifactId>
		<version>2.4.2-SNAPSHOT</version>
	</parent>

	<artifactId>employee.model</artifactId>
	<packaging>jar</packaging>
	<name>Employee Model</name>

	<dependencies>
		<dependency>
			<groupId>${eclipselink.groupid}</groupId>
			<artifactId>${eclipselink.artifactid}</artifactId>
			<version>${eclipselink.version}</version>
			<exclusions>
				<exclusion>
					<artifactId>commonj.sdo</artifactId>
					<groupId>commonj.sdo</groupId>
				</exclusion>
			</exclusions>
			<scope>provided</scope>
		</dependency>

		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>4.11</version>
			<scope>test</scope>
		</dependency>

		<dependency>
			<groupId>org.apache.derby</groupId>
			<artifactId>derby</artifactId>
			<version>10.9.1.0</version>
			<scope>test</scope>
		</dependency>

		<dependency>
			<groupId>org.glassfish</groupId>
			<artifactId>javax.ejb</artifactId>
			<version>3.1.1</version>
			<scope>provided</scope>
		</dependency>
	</dependencies>

	<build>
		<defaultGoal>test</defaultGoal>

		<plugins>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-surefire-plugin</artifactId>
				<version>2.12.4</version>
				<configuration>
					<systemProperties>
						<property>
							<name>derby.stream.error.file</name>
							<value>target/derby.log</value>
						</property>
					</systemProperties>
					<argLine>"-javaagent:${settings.localRepository}/org/eclipse/persistence/eclipselink/${eclipselink.version}/eclipselink-${eclipselink.version}.jar"</argLine>
				</configuration>
			</plugin>

			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>build-helper-maven-plugin</artifactId>
				<version>1.1</version>
				<executions>
					<execution>
						<id>add-source</id>
						<phase>generate-sources</phase>
						<goals>
							<goal>add-source</goal>
						</goals>
						<configuration>
							<sources>
								<source>src/main/jpa-model</source>
							</sources>
						</configuration>
					</execution>
				</executions>
			</plugin>

		</plugins>
		<pluginManagement>
			<plugins>
				<!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.-->
				<plugin>
					<groupId>org.eclipse.m2e</groupId>
					<artifactId>lifecycle-mapping</artifactId>
					<version>1.0.0</version>
					<configuration>
						<lifecycleMappingMetadata>
							<pluginExecutions>
								<pluginExecution>
									<pluginExecutionFilter>
										<groupId>
											org.codehaus.mojo
										</groupId>
										<artifactId>
											build-helper-maven-plugin
										</artifactId>
										<versionRange>
											[1.1,)
										</versionRange>
										<goals>
											<goal>add-source</goal>
										</goals>
									</pluginExecutionFilter>
									<action>
										<ignore></ignore>
									</action>
								</pluginExecution>
							</pluginExecutions>
						</lifecycleMappingMetadata>
					</configuration>
				</plugin>
			</plugins>
		</pluginManagement>
	</build>

	<!-- Profile to demonstrate how an additional database can be configured 
		for use in testing. Also useful in populating the target database your container's 
		data source will be using. USAGE: mvn -P mysql -->
	<profiles>
		<profile>
			<id>mysql</id>
			<activation>
				<property>
					<name>mysql</name>
				</property>
			</activation>
			<dependencies>
				<dependency>
					<groupId>mysql</groupId>
					<artifactId>mysql-connector-java</artifactId>
					<version>5.1.22</version>
					<scope>test</scope>
				</dependency>
			</dependencies>

			<build>
				<plugins>
					<plugin>
						<groupId>org.apache.maven.plugins</groupId>
						<artifactId>maven-surefire-plugin</artifactId>
						<version>2.12.4</version>
						<configuration>
							<systemProperties>
								<property>
									<name>javax.persistence.jdbc.url</name>
									<value>jdbc:mysql://localhost:3306/employee</value>
								</property>
								<property>
									<name>javax.persistence.jdbc.driver</name>
									<value>com.mysql.jdbc.Driver</value>
								</property>
								<property>
									<name>javax.persistence.jdbc.user</name>
									<value>root</value>
								</property>
								<property>
									<name>javax.persistence.jdbc.password</name>
									<value>password</value>
								</property>
							</systemProperties>
						</configuration>
					</plugin>
				</plugins>
			</build>
		</profile>
	</profiles>

</project>
