<?xml version="1.0" encoding="UTF-8" ?>
<!--
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 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">
	<modelVersion>4.0.0</modelVersion>
	<properties>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<sshwagon.version>2.6</sshwagon.version>
		<javadoc.version>2.10.3</javadoc.version>
		<slf4j.version>1.7.7</slf4j.version>
		<junit.version>4.11</junit.version>
		<guava.version>16.0.1</guava.version>
		<hadoop.version>2.6.0</hadoop.version>
		<jackson.version>2.6.3</jackson.version>
		<easymock.version>3.2</easymock.version>
		<httpcomponents.version>4.4.1</httpcomponents.version>
		<checksum-maven-plugin.version>1.2</checksum-maven-plugin.version>
		<skipTests>false</skipTests>
	</properties>
	<parent>
		<groupId>org.apache</groupId>
		<artifactId>apache</artifactId>
		<version>16</version>
	</parent>
	<scm>
		<url>https://git-wip-us.apache.org/repos/asf?p=metamodel.git</url>
		<connection>scm:git:http://git-wip-us.apache.org/repos/asf/metamodel.git</connection>
		<developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/metamodel.git</developerConnection>
		<tag>MetaModel-4.5.4</tag>
	</scm>
	<groupId>org.apache.metamodel</groupId>
	<artifactId>MetaModel</artifactId>
	<version>4.5.4</version>
	<name>MetaModel</name>
	<description>MetaModel is a library that encapsulates the differences and enhances 
		the capabilities of different datastores. Rich querying abilities are
		offered to datastores that do not otherwise support advanced querying
		and a unified view of the datastore structure is offered through a
		single model of the schemas, tables, columns and relationships.</description>
	<url>http://metamodel.apache.org</url>
	<inceptionYear>2007</inceptionYear>
	<packaging>pom</packaging>
	<modules>
		<module>core</module>
		<module>pojo</module>
		<module>fixedwidth</module>
		<module>excel</module>
		<module>csv</module>
		<module>json</module>
		<module>xml</module>
		<module>jdbc</module>
		<module>elasticsearch</module>
		<module>hadoop</module>
		<module>hbase</module>
		<module>cassandra</module>
		<module>mongodb</module>
		<module>couchdb</module>
		<module>openoffice</module>
		<module>salesforce</module>
		<module>sugarcrm</module>
		<module>full</module>
		<module>spring</module>
		<module>neo4j</module>
	</modules>
	<issueManagement>
		<system>Jira</system>
		<url>https://issues.apache.org/jira/browse/METAMODEL</url>
	</issueManagement>
	<mailingLists>
		<mailingList>
			<name>Development</name>
			<post>dev@metamodel.apache.org</post>
			<subscribe>dev-subscribe@metamodel.apache.org</subscribe>
			<unsubscribe>dev-unsubscribe@metamodel.apache.org</unsubscribe>
			<archive>http://mail-archives.apache.org/mod_mbox/metamodel-dev/</archive>
		</mailingList>
		<mailingList>
			<name>Commits</name>
			<post>commits@metamodel.apache.org</post>
			<subscribe>commits-subscribe@metamodel.apache.org</subscribe>
			<unsubscribe>commits-unsubscribe@metamodel.apache.org</unsubscribe>
			<archive>http://mail-archives.apache.org/mod_mbox/metamodel-commits/</archive>
		</mailingList>
	</mailingLists>
	<organization>
		<name>The Apache Software Foundation</name>
		<url>http://www.apache.org/</url>
	</organization>
	<developers>
		<developer>
			<id>kasper</id>
			<name>Kasper Sørensen</name>
			<email>kasper.sorensen@humaninference.com</email>
			<url>http://kasper.eobjects.org</url>
			<organization>Human Inference</organization>
			<organizationUrl>http://www.humaninference.com</organizationUrl>
		</developer>
	</developers>
	<contributors>
		<contributor>
			<name>Francisco Javier Cano</name>
			<organization>Stratio</organization>
		</contributor>
		<contributor>
			<name>Saurabh Gupta</name>
			<organization>Xebia India</organization>
		</contributor>
		<contributor>
			<name>Balendra Singh</name>
			<organization>Xebia India</organization>
		</contributor>
		<contributor>
			<name>Sameer Arora</name>
			<organization>Xebia India</organization>
		</contributor>
	</contributors>
	<licenses>
		<license>
			<name>The Apache Software License, Version 2.0</name>
			<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
		</license>
	</licenses>
	<distributionManagement>
		<repository>
			<id>apache.releases.https</id>
			<name>Apache Release Distribution Repository</name>
			<url>https://repository.apache.org/service/local/staging/deploy/maven2</url>
		</repository>
		<snapshotRepository>
			<id>apache.snapshots.https</id>
			<name>Apache Development Snapshot Repository</name>
			<url>https://repository.apache.org/content/repositories/snapshots</url>
		</snapshotRepository>
	</distributionManagement>

	<repositories>
		<repository>
			<id>apache.snapshots</id>
			<url>http://repository.apache.org/snapshots/</url>
			<name>Apache Snapshot Repo</name>
			<snapshots>
				<enabled>true</enabled>
			</snapshots>
			<releases>
				<enabled>false</enabled>
			</releases>
		</repository>
	</repositories>

	<build>
		<plugins>
			<plugin>
				<!-- Ensures java 7 compatibility -->
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-compiler-plugin</artifactId>
				<configuration>
					<source>1.7</source>
					<target>1.7</target>
					<encoding>utf-8</encoding>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.apache.rat</groupId>
				<artifactId>apache-rat-plugin</artifactId>
				<executions>
					<execution>
						<id>rat-verify</id>
						<phase>validate</phase>
						<goals>
							<goal>check</goal>
						</goals>
					</execution>
				</executions>
			</plugin>

			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-release-plugin</artifactId>
				<configuration>
					<autoVersionSubmodules>true</autoVersionSubmodules>
					<goals>deploy</goals>
				</configuration>
				<dependencies>
					<dependency>
						<groupId>org.apache.maven.scm</groupId>
						<artifactId>maven-scm-provider-gitexe</artifactId>
						<version>1.9.2</version>
					</dependency>
				</dependencies>
			</plugin>

			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-surefire-plugin</artifactId>
			</plugin>

			<plugin>
				<groupId>org.codehaus.sonar</groupId>
				<artifactId>sonar-maven3-plugin</artifactId>
				<version>2.8</version>
			</plugin>

			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>cobertura-maven-plugin</artifactId>
				<version>2.5.2</version>
			</plugin>

			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-site-plugin</artifactId>
				<dependencies>
					<dependency>
						<!-- Provide support for scp based deployment of site -->
						<groupId>org.apache.maven.wagon</groupId>
						<artifactId>wagon-ssh</artifactId>
						<version>${sshwagon.version}</version>
					</dependency>
				</dependencies>
			</plugin>

			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-javadoc-plugin</artifactId>
				<executions>
					<execution>
						<!-- create aggregate report when "mvn site" is invoked. -->
						<id>aggregate</id>
						<goals>
							<goal>aggregate</goal>
						</goals>
						<phase>site</phase>
					</execution>
				</executions>
				<configuration>
					<excludePackageNames>com.sugarcrm.ws.soap</excludePackageNames>
				</configuration>
			</plugin>
			<plugin>
				<groupId>net.ju-n.maven.plugins</groupId>
				<artifactId>checksum-maven-plugin</artifactId>
				<version>${checksum-maven-plugin.version}</version>
			</plugin>

			<plugin>
				<!-- enforce certain banned dependencies -->
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-enforcer-plugin</artifactId>
				<executions>
					<execution>
						<id>enforce-versions</id>
						<goals>
							<goal>enforce</goal>
						</goals>
						<configuration>
							<rules>
								<bannedDependencies>
									<excludes>
										<exclude>commons-logging:commons-logging:compile</exclude>
										<exclude>org.codehaus.jackson:compile</exclude>

										<!-- commons-beanutils-core is redundant when we already depend 
											on commons-beanutils -->
										<exclude>commons-beanutils:commons-beanutils-core:*</exclude>

										<!-- stax-api is overlapping with xml-apis -->
										<exclude>stax:stax-api:*</exclude>
										<exclude>javax.xml.stream:stax-api</exclude>

										<!-- findbugs-annotations is overlapping with annotations -->
										<exclude>com.github.stephenc.findbugs:findbugs-annotations:*</exclude>
									</excludes>
								</bannedDependencies>
							</rules>
						</configuration>
					</execution>
				</executions>
			</plugin>

		</plugins>

		<extensions>
			<extension>
				<!-- Provide support for scp based deployment of site -->
				<groupId>org.apache.maven.wagon</groupId>
				<artifactId>wagon-ssh</artifactId>
				<version>${sshwagon.version}</version>
			</extension>
		</extensions>

		<pluginManagement>
			<plugins>
				<plugin>
					<!-- Ignore instructions for m2e (overrides eclipse warning) -->
					<groupId>org.eclipse.m2e</groupId>
					<artifactId>lifecycle-mapping</artifactId>
					<version>1.0.0</version>
					<configuration>
						<lifecycleMappingMetadata>
							<pluginExecutions>
								<pluginExecution>
									<pluginExecutionFilter>
										<groupId>org.apache.maven.plugins</groupId>
										<artifactId>maven-enforcer-plugin</artifactId>
										<versionRange>[1.0,)</versionRange>
										<goals>
											<goal>enforce</goal>
										</goals>
									</pluginExecutionFilter>
									<action>
										<ignore />
									</action>
								</pluginExecution>
								<pluginExecution>
									<pluginExecutionFilter>
										<groupId>
											org.apache.rat
										</groupId>
										<artifactId>
											apache-rat-plugin
										</artifactId>
										<versionRange>
											[0.8,)
										</versionRange>
										<goals>
											<goal>check</goal>
										</goals>
									</pluginExecutionFilter>
									<action>
										<ignore />
									</action>
								</pluginExecution>
							</pluginExecutions>
						</lifecycleMappingMetadata>
					</configuration>
				</plugin>

				<plugin>
					<groupId>org.apache.rat</groupId>
					<artifactId>apache-rat-plugin</artifactId>
					<configuration>
						<licenses>
							<license implementation="org.apache.rat.analysis.license.SimplePatternBasedLicense">
								<licenseFamilyCategory>ASL20</licenseFamilyCategory>
								<licenseFamilyName>Apache Software License, 2.0</licenseFamilyName>
								<notes>Single licensed ASL v2.0</notes>
								<patterns>
									<pattern>Licensed to the Apache Software Foundation (ASF) under
										one
										or more contributor license agreements.</pattern>
								</patterns>
							</license>
						</licenses>
						<excludeSubProjects>false</excludeSubProjects>
						<excludes>
							<exclude>KEYS</exclude>
							<exclude>*.md</exclude>
							<exclude>example-metamodel-integrationtest-configuration.properties</exclude>
							<exclude>travis-metamodel-integrationtest-configuration.properties</exclude>
							<exclude>**/src/assembly/metamodel-packaged-assembly-descriptor.xml</exclude>
							<exclude>**/.gitignore/**</exclude>
							<exclude>.git/**</exclude>
							<exclude>**/src/main/resources/META-INF/services/**</exclude>
							<exclude>**/src/test/resources/**</exclude>
							<exclude>**/src/site/**</exclude>
							<exclude>**/.project</exclude>
							<exclude>**/.classpath</exclude>
							<exclude>**/.settings/**</exclude>
							<exclude>**/.travis.yml</exclude>
							<exclude>**/target/**</exclude>
							<exclude>**/*.iml/**</exclude>
							<exclude>**/*.iws/**</exclude>
							<exclude>**/*.ipr/**</exclude>
							<exclude>**/.idea/**</exclude>
							<exclude>**/tattletale-filters.properties</exclude>
							<exclude>DEPENDENCIES</exclude>
							<exclude>DISCLAIMER</exclude>
							<exclude>neo4j-community-*/**</exclude>
						</excludes>
					</configuration>
				</plugin>

			</plugins>
		</pluginManagement>
	</build>
	<reporting>
		<plugins>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-javadoc-plugin</artifactId>
				<version>${javadoc.version}</version>
				<reportSets>
					<reportSet>
						<id>aggregate</id>
						<reports>
							<report>aggregate</report>
						</reports>
					</reportSet>
				</reportSets>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-project-info-reports-plugin</artifactId>
				<version>2.6</version>
				<configuration>
					<dependencyDetailsEnabled>false</dependencyDetailsEnabled>
					<dependencyLocationsEnabled>false</dependencyLocationsEnabled>
				</configuration>
			</plugin>
		</plugins>
	</reporting>

	<dependencyManagement>
		<dependencies>
			<dependency>
				<groupId>com.google.guava</groupId>
				<artifactId>guava</artifactId>
				<version>${guava.version}</version>
			</dependency>
			<dependency>
				<groupId>org.apache.httpcomponents</groupId>
				<artifactId>httpclient</artifactId>
				<version>${httpcomponents.version}</version>
				<exclusions>
					<exclusion>
						<artifactId>commons-logging</artifactId>
						<groupId>commons-logging</groupId>
					</exclusion>
				</exclusions>
			</dependency>
			<dependency>
				<groupId>commons-beanutils</groupId>
				<artifactId>commons-beanutils</artifactId>
				<version>1.9.2</version>
				<exclusions>
					<exclusion>
						<artifactId>commons-logging</artifactId>
						<groupId>commons-logging</groupId>
					</exclusion>
				</exclusions>
			</dependency>
			<dependency>
				<groupId>net.sourceforge.findbugs</groupId>
				<artifactId>annotations</artifactId>
				<version>1.3.2</version>
			</dependency>
			<dependency>
				<groupId>org.apache.httpcomponents</groupId>
				<artifactId>httpcore</artifactId>
				<version>${httpcomponents.version}</version>
			</dependency>
			<dependency>
				<groupId>org.apache.httpcomponents</groupId>
				<artifactId>httpclient-cache</artifactId>
				<version>${httpcomponents.version}</version>
			</dependency>
			<dependency>
				<groupId>commons-lang</groupId>
				<artifactId>commons-lang</artifactId>
				<version>2.6</version>
			</dependency>
			<dependency>
				<groupId>commons-codec</groupId>
				<artifactId>commons-codec</artifactId>
				<version>1.7</version>
			</dependency>
			<dependency>
				<groupId>commons-io</groupId>
				<artifactId>commons-io</artifactId>
				<version>2.4</version>
			</dependency>
			<dependency>
				<groupId>commons-pool</groupId>
				<artifactId>commons-pool</artifactId>
				<version>1.6</version>
			</dependency>
			<dependency>
				<groupId>org.slf4j</groupId>
				<artifactId>slf4j-api</artifactId>
				<version>${slf4j.version}</version>
			</dependency>
			<dependency>
				<groupId>org.slf4j</groupId>
				<artifactId>jcl-over-slf4j</artifactId>
				<version>${slf4j.version}</version>
			</dependency>
			<dependency>
				<groupId>com.fasterxml.jackson.core</groupId>
				<artifactId>jackson-core</artifactId>
				<version>${jackson.version}</version>
			</dependency>
			<dependency>
				<groupId>com.fasterxml.jackson.core</groupId>
				<artifactId>jackson-databind</artifactId>
				<version>${jackson.version}</version>
			</dependency>
			<dependency>
				<groupId>com.fasterxml.jackson.core</groupId>
				<artifactId>jackson-annotations</artifactId>
				<version>${jackson.version}</version>
			</dependency>
			<dependency>
				<groupId>com.fasterxml.jackson.datatype</groupId>
				<artifactId>jackson-datatype-json-org</artifactId>
				<version>${jackson.version}</version>
				<exclusions>
					<exclusion>
						<groupId>org.codehaus.jackson</groupId>
						<artifactId>jackson-core-asl</artifactId>
					</exclusion>
					<exclusion>
						<groupId>org.codehaus.jackson</groupId>
						<artifactId>jackson-mapper-asl</artifactId>
					</exclusion>
				</exclusions>
			</dependency>
			<dependency>
				<groupId>hsqldb</groupId>
				<artifactId>hsqldb</artifactId>
				<version>1.8.0.10</version>
			</dependency>

			<!-- Hadoop -->
			<dependency>
				<groupId>org.apache.hadoop</groupId>
				<artifactId>hadoop-client</artifactId>
				<version>${hadoop.version}</version>
				<exclusions>
					<exclusion>
						<artifactId>jetty-util</artifactId>
						<groupId>org.mortbay.jetty</groupId>
					</exclusion>
					<exclusion>
						<groupId>com.github.stephenc.findbugs</groupId>
						<artifactId>findbugs-annotations</artifactId>
					</exclusion>
					<exclusion>
						<groupId>commons-logging</groupId>
						<artifactId>commons-logging</artifactId>
					</exclusion>
					<exclusion>
						<groupId>org.codehaus.jackson</groupId>
						<artifactId>jackson-mapper-asl</artifactId>
					</exclusion>
					<exclusion>
						<groupId>org.codehaus.jackson</groupId>
						<artifactId>jackson-core</artifactId>
					</exclusion>
					<exclusion>
						<groupId>org.codehaus.jackson</groupId>
						<artifactId>jackson-core-asl</artifactId>
					</exclusion>
					<exclusion>
						<groupId>org.codehaus.jackson</groupId>
						<artifactId>jackson-jaxrs</artifactId>
					</exclusion>
					<exclusion>
						<groupId>org.codehaus.jackson</groupId>
						<artifactId>jackson-xc</artifactId>
					</exclusion>
				</exclusions>
			</dependency>
			<dependency>
				<groupId>org.apache.hadoop</groupId>
				<artifactId>hadoop-mapreduce-client-core</artifactId>
				<version>${hadoop.version}</version>
				<exclusions>
					<exclusion>
						<groupId>javax.xml.stream</groupId>
						<artifactId>stax-api</artifactId>
					</exclusion>
				</exclusions>
			</dependency>
			<dependency>
				<groupId>org.apache.hadoop</groupId>
				<artifactId>hadoop-common</artifactId>
				<version>${hadoop.version}</version>
				<exclusions>
					<exclusion>
						<groupId>jdk.tools</groupId>
						<artifactId>jdk.tools</artifactId>
					</exclusion>
					<exclusion>
						<groupId>org.slf4j</groupId>
						<artifactId>slf4j-log4j12</artifactId>
					</exclusion>
					<exclusion>
						<artifactId>log4j</artifactId>
						<groupId>log4j</groupId>
					</exclusion>
					<exclusion>
						<artifactId>commons-logging</artifactId>
						<groupId>commons-logging</groupId>
					</exclusion>
					<exclusion>
						<groupId>commons-beanutils</groupId>
						<artifactId>commons-beanutils-core</artifactId>
					</exclusion>
					<exclusion>
						<artifactId>jetty</artifactId>
						<groupId>org.mortbay.jetty</groupId>
					</exclusion>
					<exclusion>
						<artifactId>jetty-util</artifactId>
						<groupId>org.mortbay.jetty</groupId>
					</exclusion>
					<exclusion>
						<groupId>tomcat</groupId>
						<artifactId>jasper-runtime</artifactId>
					</exclusion>
					<exclusion>
						<groupId>tomcat</groupId>
						<artifactId>jasper-compiler</artifactId>
					</exclusion>
					<exclusion>
						<groupId>javax.servlet</groupId>
						<artifactId>servlet-api</artifactId>
					</exclusion>
					<exclusion>
						<groupId>google-collections</groupId>
						<artifactId>google-collections</artifactId>
					</exclusion>
					<exclusion>
						<groupId>net.sourceforge.collections</groupId>
						<artifactId>collections-generic</artifactId>
					</exclusion>
					<exclusion>
						<groupId>com.sun.jersey</groupId>
						<artifactId>jersey-core</artifactId>
					</exclusion>
					<exclusion>
						<groupId>com.sun.jersey</groupId>
						<artifactId>jersey-server</artifactId>
					</exclusion>
					<exclusion>
						<groupId>org.mortbay.jetty</groupId>
						<artifactId>jsp-2.1</artifactId>
					</exclusion>
					<exclusion>
						<groupId>com.sun.jersey</groupId>
						<artifactId>jersey-json</artifactId>
					</exclusion>
					<exclusion>
						<groupId>org.mortbay.jetty</groupId>
						<artifactId>jsp-api-2.1</artifactId>
					</exclusion>
					<exclusion>
						<groupId>io.netty</groupId>
						<artifactId>netty</artifactId>
					</exclusion>
					<exclusion>
						<groupId>commons-httpclient</groupId>
						<artifactId>commons-httpclient</artifactId>
					</exclusion>
					<exclusion>
						<groupId>org.codehaus.jackson</groupId>
						<artifactId>jackson-mapper-asl</artifactId>
					</exclusion>
					<exclusion>
						<groupId>org.codehaus.jackson</groupId>
						<artifactId>jackson-core</artifactId>
					</exclusion>
					<exclusion>
						<groupId>org.codehaus.jackson</groupId>
						<artifactId>jackson-core-asl</artifactId>
					</exclusion>
					<exclusion>
						<groupId>org.codehaus.jackson</groupId>
						<artifactId>jackson-jaxrs</artifactId>
					</exclusion>
					<exclusion>
						<groupId>org.codehaus.jackson</groupId>
						<artifactId>jackson-xc</artifactId>
					</exclusion>
				</exclusions>
			</dependency>

			<!-- Test dependencies -->
			<dependency>
				<groupId>junit</groupId>
				<artifactId>junit</artifactId>
				<version>${junit.version}</version>
				<scope>test</scope>
			</dependency>
			<dependency>
				<groupId>org.easymock</groupId>
				<artifactId>easymock</artifactId>
				<version>${easymock.version}</version>
				<scope>test</scope>
			</dependency>
			<dependency>
				<groupId>org.slf4j</groupId>
				<artifactId>slf4j-nop</artifactId>
				<version>${slf4j.version}</version>
				<scope>test</scope>
			</dependency>
			<dependency>
				<groupId>org.slf4j</groupId>
				<artifactId>slf4j-simple</artifactId>
				<version>${slf4j.version}</version>
				<scope>test</scope>
			</dependency>
			<dependency>
				<groupId>org.slf4j</groupId>
				<artifactId>slf4j-log4j12</artifactId>
				<version>${slf4j.version}</version>
				<scope>test</scope>
			</dependency>
		</dependencies>
	</dependencyManagement>
</project>
