<?xml version='1.0' encoding='UTF-8'?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
   <modelVersion>4.0.0</modelVersion>
   <parent>
      <groupId>org.infinispan</groupId>
      <artifactId>infinispan-bom</artifactId>
      <version>7.1.1.Final</version>
      <relativePath>../bom/pom.xml</relativePath>
   </parent>
   <artifactId>infinispan-parent</artifactId>
   <packaging>pom</packaging>
   <name>Infinispan Common Parent</name>
   <description>Infinispan common parent POM module</description>
   <url>http://www.infinispan.org</url>
   <organization>
      <name>JBoss, a division of Red Hat</name>
      <url>http://www.jboss.org</url>
   </organization>
   <licenses>
      <license>
         <name>Apache License</name>
         <url>http://www.apache.org/licenses/LICENSE-2.0</url>
         <distribution>repo</distribution>
      </license>
   </licenses>
   <developers>
      <developer>
         <id>placeholder</id>
         <name>See http://www.infinispan.org for a complete list of contributors</name>
      </developer>
   </developers>
   <mailingLists>
      <mailingList>
         <name>Infinispan Issues</name>
         <subscribe>https://lists.jboss.org/mailman/listinfo/infinispan-issues</subscribe>
         <unsubscribe>https://lists.jboss.org/mailman/listinfo/infinispan-issues</unsubscribe>
         <post>infinispan-issues@lists.jboss.org</post>
         <archive>http://lists.jboss.org/pipermail/infinispan-issues/</archive>
      </mailingList>
      <mailingList>
         <name>Infinispan Developers</name>
         <subscribe>https://lists.jboss.org/mailman/listinfo/infinispan-dev</subscribe>
         <unsubscribe>https://lists.jboss.org/mailman/listinfo/infinispan-dev</unsubscribe>
         <post>infinispan-dev@lists.jboss.org</post>
         <archive>http://lists.jboss.org/pipermail/infinispan-dev/</archive>
      </mailingList>
   </mailingLists>
   <scm>
      <connection>scm:git:git@github.com:infinispan/infinispan.git</connection>
      <developerConnection>scm:git:git@github.com:infinispan/infinispan.git</developerConnection>
      <url>https://github.com/infinispan/infinispan</url>
   </scm>
   <issueManagement>
      <system>jira</system>
      <url>https://issues.jboss.org/browse/ISPN</url>
   </issueManagement>
   <ciManagement>
      <system>TeamCity</system>
      <url>http://ci.infinispan.org</url>
      <notifiers>
         <notifier>
            <type>mail</type>
            <address>infinispan-commits@lists.jboss.org</address>
         </notifier>
      </notifiers>
   </ciManagement>
   <distributionManagement>
      <repository>
         <id>jboss-releases-repository</id>
         <name>JBoss Release Repository</name>
         <url>${jboss.releases.repo.url}</url>
      </repository>
      <snapshotRepository>
         <id>jboss-snapshots-repository</id>
         <name>JBoss Snapshot Repository</name>
         <url>${jboss.snapshots.repo.url}</url>
      </snapshotRepository>
   </distributionManagement>
   <properties>
      <buildDirectory>target</buildDirectory>
      <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
      <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
      <defaultTestGroup>functional,unit,arquillian</defaultTestGroup>
      
      <defaultExcludedTestGroup>unstable,stress,unstable_xsite</defaultExcludedTestGroup>
      <forkJvmArgs>-Xmx1024m -XX:MaxPermSize=256m</forkJvmArgs>
      <testNGListener>org.infinispan.test.fwk.UnitTestTestNGListener</testNGListener>
      <infinispan.test.parallel.threads>15</infinispan.test.parallel.threads>
      <infinispan.test.jgroups.protocol>tcp</infinispan.test.jgroups.protocol>
      <jboss.releases.repo.url>https://repository.jboss.org/nexus/service/local/staging/deploy/maven2/</jboss.releases.repo.url>
      <jboss.snapshots.repo.url>https://repository.jboss.org/nexus/content/repositories/snapshots/</jboss.snapshots.repo.url>
      <packaging>jar</packaging>
      <module.skipComponentMetaDataProcessing>true</module.skipComponentMetaDataProcessing>
      <module.metadata.isCoreModule>false</module.metadata.isCoreModule>
      
      <version.ant>1.9.4</version.ant>
      <version.antlr>3.4</version.antlr>
      <version.apache.ds>2.0.0-M15</version.apache.ds>
      <version.arquillian>1.1.5.Final</version.arquillian>
      <version.arquillian.container.weld>1.0.0.CR3</version.arquillian.container.weld>
      <version.aspectj.aspectjweaver>1.8.1</version.aspectj.aspectjweaver>
      <version.avro>1.7.6</version.avro>
      <version.c3p0>0.9.5-pre8</version.c3p0>
      <version.c3p0_dep.mchange-commons-java>0.2.7</version.c3p0_dep.mchange-commons-java>
      <version.com.intellij.forms_rt>6.0.5</version.com.intellij.forms_rt>
      <version.commons.compress>1.4</version.commons.compress>
      <version.commons.codec>1.4</version.commons.codec>
      <version.commons.collections>3.2.1</version.commons.collections>
      <version.commons.dbcp>1.4</version.commons.dbcp>
      <version.commons.httpclient>3.1</version.commons.httpclient>
      <version.commons.io>1.3.2</version.commons.io>
      <version.commons.logging>1.1</version.commons.logging>
      <version.commons.math>2.2</version.commons.math>
      <version.guava>11.0.2</version.guava>
      <version.geronimo.tm>3.1.1</version.geronimo.tm>
      <version.h2.driver>1.4.180</version.h2.driver>
      <version.hibernate.annotations>3.5.6-Final</version.hibernate.annotations>
      <version.hibernate.core>4.3.6.Final</version.hibernate.core>
      <version.hibernate.entitymanager>${version.hibernate.core}</version.hibernate.entitymanager>
      <version.hibernate.hql.parser>1.1.0.Final</version.hibernate.hql.parser>
      <version.hibernate.osgi>${version.hibernate.core}</version.hibernate.osgi>
      <version.hibernate_dep.antlr>2.7.7_5</version.hibernate_dep.antlr>
      <version.hibernate_dep.classmate>0.5.4</version.hibernate_dep.classmate>
      <version.hibernate_dep.dom4j>1.6.1_5</version.hibernate_dep.dom4j>
      <version.hibernate_dep.hibernate-commons-annotations>4.0.5.Final</version.hibernate_dep.hibernate-commons-annotations>
      <version.hibernate_dep.infinispan>7.0.0.Final</version.hibernate_dep.infinispan>
      <version.hibernate_dep.jandex>1.1.0.Final</version.hibernate_dep.jandex>
      <version.hibernate_dep.javaassist>3.18.1-GA</version.hibernate_dep.javaassist>
      <version.httpclient>4.2.4</version.httpclient>
      <version.howl>1.0.1-1</version.howl>
      <version.jackson>1.9.13</version.jackson>
      <version.javax.cache.cache-tests>${version.javax.cache}</version.javax.cache.cache-tests>
      <version.javax.servlet>2.5</version.javax.servlet>
      <version.jbossjta>5.0.4.Final</version.jbossjta>
      <version.jboss.logging.processor>1.1.0.Final</version.jboss.logging.processor>
      <version.jboss.logmanager>1.3.1.Final</version.jboss.logmanager>
      <version.jboss.remotingjmx>2.0.0.Final</version.jboss.remotingjmx>
      <version.jboss.sasl>1.0.4.Final</version.jboss.sasl>
      <version.jboss.spec>1.0.2.Final</version.jboss.spec>
      <version.jboss.jboss-transaction-spi>7.1.0.Final</version.jboss.jboss-transaction-spi>
      <version.jboss.xnio>3.2.2.Final</version.jboss.xnio>
      <version.jcipannotations>1.0</version.jcipannotations>
      <version.jetty>6.1.25</version.jetty>
      <version.jgoodies.forms>1.0.7</version.jgoodies.forms>
      <version.jsap>2.1</version.jsap>
      <version.jstl>1.2</version.jstl>
      <version.junit>4.11</version.junit>
      <version.leveldb>0.7</version.leveldb>
      <version.leveldbjni>1.7</version.leveldbjni>
      <version.log4j>1.2.16</version.log4j>
      <version.lucene>4.10.3</version.lucene>
      <version.mc4j>1.2.6</version.mc4j>
      <version.milyn.smooks>1.2.2</version.milyn.smooks>
      <version.mockito>1.9.5</version.mockito>
      <version.mockito_dep.objenesis>1.4</version.mockito_dep.objenesis>
      <version.mysql.driver>5.1.19</version.mysql.driver>
      <version.org.jboss.naming>5.0.6.CR1</version.org.jboss.naming>
      <version.org.picketbox>4.0.20.Final</version.org.picketbox>
      <version.postgresql.driver>9.3-1101-jdbc41</version.postgresql.driver>
      <version.resteasy>3.0.7.Final</version.resteasy>
      <version.shrinkwrapResolver>2.1.0</version.shrinkwrapResolver>
      <version.slf4j>1.7.5</version.slf4j>
      <version.snappy>1.0.5</version.snappy>
      <version.solder>3.1.0.Final</version.solder>
      <version.spring3>3.2.9.RELEASE</version.spring3>
      <version.spring4>4.1.0.RELEASE</version.spring4>
      <version.spymemcached>2.5</version.spymemcached>
      <version.testng>6.8.8</version.testng>
      <version.testng.arquillian>6.5.2</version.testng.arquillian>
      <version.webdav.servlet>2.0.1</version.webdav.servlet>
      <version.weld>1.1.13.Final</version.weld>
      <version.wildfly>8.1.0.Final</version.wildfly>
      <version.javassist>3.18.1-GA</version.javassist>
      <version.maven.buildhelper>1.8</version.maven.buildhelper>
      <version.maven.bundle>2.4.0</version.maven.bundle>
      <version.maven.source>2.3</version.maven.source>
      <version.maven.genjavadoc>0.8</version.maven.genjavadoc>
      <version.maven.scala>2.15.2</version.maven.scala>
      <version.maven.surefire>2.17</version.maven.surefire>
      <version.maven.invoker>1.8</version.maven.invoker>
      <version.metainf-services>1.5</version.metainf-services>
      <version.jacoco>0.5.10.201208310627</version.jacoco>
      <version.asm>3.3.1</version.asm>
      <version.pax.url>2.2.0</version.pax.url>
      <version.karaf>2.3.3</version.karaf>
      <version.pax.exam>4.2.0</version.pax.exam>
      <reportTitle>Infinispan JaCoCo Report</reportTitle>
      <dir.ispn>../</dir.ispn>
      <dir.report>../jacoco-html</dir.report>
      <m2e.apt.activation>jdt_apt</m2e.apt.activation>
      
      <bnd.consumer.policy>$&lt;range;[==,+)&gt;</bnd.consumer.policy>
      <bnd.provider.policy>$&lt;range;[==,=+)&gt;</bnd.provider.policy>
   </properties>
   
   <dependencyManagement>
      <dependencies>
         <dependency>
            <groupId>${project.groupId}</groupId>
            <artifactId>infinispan-cachestore-jdbc</artifactId>
            <version>${project.version}</version>
         </dependency>
         <dependency>
            <groupId>${project.groupId}</groupId>
            <artifactId>infinispan-cachestore-jdbc</artifactId>
            <version>${project.version}</version>
            <type>test-jar</type>
         </dependency>
         <dependency>
            <groupId>${project.groupId}</groupId>
            <artifactId>infinispan-cachestore-jpa</artifactId>
            <version>${project.version}</version>
            <type>test-jar</type>
         </dependency>
         <dependency>
            <groupId>${project.groupId}</groupId>
            <artifactId>infinispan-cachestore-remote</artifactId>
            <version>${project.version}</version>
         </dependency>
         <dependency>
            <groupId>${project.groupId}</groupId>
            <artifactId>infinispan-cdi</artifactId>
            <version>${project.version}</version>
         </dependency>
         <dependency>
            <groupId>${project.groupId}</groupId>
            <artifactId>infinispan-cdi</artifactId>
            <version>${project.version}</version>
            <type>test-jar</type>
         </dependency>
         <dependency>
            <groupId>${project.groupId}</groupId>
            <artifactId>infinispan-client-hotrod</artifactId>
            <version>${project.version}</version>
         </dependency>
         <dependency>
            <groupId>${project.groupId}</groupId>
            <artifactId>infinispan-client-hotrod</artifactId>
            <version>${project.version}</version>
            <type>test-jar</type>
         </dependency>
         
         <dependency>
            <groupId>${project.groupId}</groupId>
            <artifactId>infinispan-core</artifactId>
            <version>${project.version}</version>
         </dependency>
         <dependency>
            <groupId>${project.groupId}</groupId>
            <artifactId>infinispan-core</artifactId>
            <version>${project.version}</version>
            <type>test-jar</type>
         </dependency>
         <dependency>
            <groupId>${project.groupId}</groupId>
            <artifactId>infinispan-ec2-demo</artifactId>
            <version>${project.version}</version>
         </dependency>
         <dependency>
            <groupId>${project.groupId}</groupId>
            <artifactId>infinispan-lucene-directory</artifactId>
            <version>${project.version}</version>
         </dependency>
         <dependency>
            <groupId>${project.groupId}</groupId>
            <artifactId>infinispan-lucene-directory</artifactId>
            <version>${project.version}</version>
            <type>test-jar</type>
         </dependency>
         <dependency>
            <groupId>${project.groupId}</groupId>
            <artifactId>infinispan-server-core</artifactId>
            <version>${project.version}</version>
         </dependency>
         <dependency>
            <groupId>${project.groupId}</groupId>
            <artifactId>infinispan-server-core</artifactId>
            <version>${project.version}</version>
            <type>test-jar</type>
         </dependency>
         <dependency>
            <groupId>${project.groupId}</groupId>
            <artifactId>infinispan-server-hotrod</artifactId>
            <version>${project.version}</version>
         </dependency>
         <dependency>
            <groupId>${project.groupId}</groupId>
            <artifactId>infinispan-server-hotrod</artifactId>
            <version>${project.version}</version>
            <type>test-jar</type>
         </dependency>
         <dependency>
            <groupId>${project.groupId}</groupId>
            <artifactId>infinispan-server-memcached</artifactId>
            <version>${project.version}</version>
         </dependency>
         <dependency>
            <groupId>${project.groupId}</groupId>
            <artifactId>infinispan-server-memcached</artifactId>
            <version>${project.version}</version>
            <type>test-jar</type>
         </dependency>
         <dependency>
            <groupId>${project.groupId}</groupId>
            <artifactId>infinispan-server-rest</artifactId>
            <classifier>classes</classifier>
            <version>${project.version}</version>
         </dependency>
         <dependency>
            <groupId>${project.groupId}</groupId>
            <artifactId>infinispan-server-rest</artifactId>
            <version>${project.version}</version>
            <type>test-jar</type>
         </dependency>
         <dependency>
            <groupId>${project.groupId}</groupId>
            <artifactId>infinispan-tools</artifactId>
            <version>${project.version}</version>
         </dependency>
         <dependency>
            <groupId>${project.groupId}</groupId>
            <artifactId>infinispan-tree</artifactId>
            <version>${project.version}</version>
         </dependency>
         <dependency>
            <groupId>${project.groupId}</groupId>
            <artifactId>infinispan-jcache</artifactId>
            <version>${project.version}</version>
         </dependency>
         <dependency>
            <groupId>${project.groupId}</groupId>
            <artifactId>infinispan-cli-client</artifactId>
            <version>${project.version}</version>
         </dependency>
         <dependency>
            <groupId>${project.groupId}</groupId>
            <artifactId>infinispan-cli-interpreter</artifactId>
            <version>${project.version}</version>
         </dependency>
         <dependency>
            <groupId>${project.groupId}</groupId>
            <artifactId>infinispan-osgi</artifactId>
            <version>${project.version}</version>
         </dependency>
         <dependency>
            <groupId>com.mchange</groupId>
            <artifactId>c3p0</artifactId>
            <version>${version.c3p0}</version>
         </dependency>
         <dependency>
            <groupId>com.h2database</groupId>
            <artifactId>h2</artifactId>
            <version>${version.h2.driver}</version>
         </dependency>
         <dependency>
            <groupId>com.intellij</groupId>
            <artifactId>forms_rt</artifactId>
            <version>${version.com.intellij.forms_rt}</version>
         </dependency>
         <dependency>
            <groupId>com.martiansoftware</groupId>
            <artifactId>jsap</artifactId>
            <version>${version.jsap}</version>
         </dependency>
         <dependency>
            <groupId>commons-dbcp</groupId>
            <artifactId>commons-dbcp</artifactId>
            <version>${version.commons.dbcp}</version>
         </dependency>
         <dependency>
            <groupId>commons-httpclient</groupId>
            <artifactId>commons-httpclient</artifactId>
            <version>${version.commons.httpclient}</version>
         </dependency>
         <dependency>
            <groupId>commons-io</groupId>
            <artifactId>commons-io</artifactId>
            <version>${version.commons.io}</version>
         </dependency>
         <dependency>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
            <version>${version.commons.logging}</version>
            <scope>runtime</scope>
         </dependency>
         <dependency>
            <groupId>org.javassist</groupId>
            <artifactId>javassist</artifactId>
            <version>${version.javassist}</version>
         </dependency>
         <dependency>
            <groupId>javax.cache</groupId>
            <artifactId>cache-tests</artifactId>
            <version>${version.javax.cache.cache-tests}</version>
         </dependency>
         <dependency>
            <groupId>javax.cache</groupId>
            <artifactId>cache-tests</artifactId>
            <version>${version.javax.cache.cache-tests}</version>
            <classifier>tests</classifier>
         </dependency>
         <dependency>
            <groupId>javax.cache</groupId>
            <artifactId>cdi-weld-annotations-test-harness</artifactId>
            <version>${version.javax.cache.cache-tests}</version>
         </dependency>
         <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>jstl</artifactId>
            <version>${version.jstl}</version>
         </dependency>
         <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>servlet-api</artifactId>
            <version>${version.javax.servlet}</version>
         </dependency>
         <dependency>
            <groupId>com.jgoodies</groupId>
            <artifactId>forms</artifactId>
            <version>${version.jgoodies.forms}</version>
         </dependency>
         <dependency>
            <groupId>log4j</groupId>
            <artifactId>log4j</artifactId>
            <version>${version.log4j}</version>
         </dependency>
         <dependency>
            <groupId>mc4j</groupId>
            <artifactId>org-mc4j-ems</artifactId>
            <version>${version.mc4j}</version>
         </dependency>
         <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>${version.mysql.driver}</version>
         </dependency>
         <dependency>
            <groupId>org.postgresql</groupId>
            <artifactId>postgresql</artifactId>
            <version>${version.postgresql.driver}</version>
         </dependency>
         <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>${version.junit}</version>
         </dependency>
         <dependency>
            <groupId>net.sf.webdav-servlet</groupId>
            <artifactId>webdav-servlet</artifactId>
            <version>${version.webdav.servlet}</version>
         </dependency>
         <dependency>
            <groupId>org.antlr</groupId>
            <artifactId>antlr-runtime</artifactId>
            <version>${version.antlr}</version>
         </dependency>
         <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-compress</artifactId>
            <version>${version.commons.compress}</version>
         </dependency>
         <dependency>
            <groupId>org.aspectj</groupId>
            <artifactId>aspectjweaver</artifactId>
            <version>${version.aspectj.aspectjweaver}</version>
         </dependency>
         <dependency>
            <groupId>commons-codec</groupId>
            <artifactId>commons-codec</artifactId>
            <version>${version.commons.codec}</version>
         </dependency>
         <dependency>
            <groupId>commons-collections</groupId>
            <artifactId>commons-collections</artifactId>
            <version>${version.commons.collections}</version>
         </dependency>
         <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-math</artifactId>
            <version>${version.commons.math}</version>
         </dependency>
         <dependency>
            <groupId>org.apache.avro</groupId>
            <artifactId>avro</artifactId>
            <version>${version.avro}</version>
         </dependency>
         <dependency>
            <groupId>org.codehaus.jackson</groupId>
            <artifactId>jackson-core-asl</artifactId>
            <version>${version.jackson}</version>
         </dependency>
         <dependency>
            <groupId>org.codehaus.jackson</groupId>
            <artifactId>jackson-mapper-asl</artifactId>
            <version>${version.jackson}</version>
         </dependency>
         <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-annotations</artifactId>
            <version>${version.hibernate.annotations}</version>
         </dependency>
         <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-core</artifactId>
            <version>${version.hibernate.core}</version>
         </dependency>
         <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-entitymanager</artifactId>
            <version>${version.hibernate.entitymanager}</version>
         </dependency>
         <dependency>
            <groupId>org.hibernate.hql</groupId>
            <artifactId>hibernate-hql-parser</artifactId>
            <version>${version.hibernate.hql.parser}</version>
         </dependency>
         <dependency>
            <groupId>org.hibernate.hql</groupId>
            <artifactId>hibernate-hql-lucene</artifactId>
            <version>${version.hibernate.hql.parser}</version>
         </dependency>
         <dependency>
            <groupId>org.jboss.arquillian</groupId>
            <artifactId>arquillian-bom</artifactId>
            <version>${version.arquillian}</version>
            <type>pom</type>
            <scope>import</scope>
         </dependency>
         <dependency>
            <groupId>org.wildfly</groupId>
            <artifactId>wildfly-arquillian-container-managed</artifactId>
            <version>${version.wildfly}</version>
            <scope>test</scope>
         </dependency>
         <dependency>
            <groupId>org.jboss.arquillian.container</groupId>
            <artifactId>arquillian-weld-ee-embedded-1.1</artifactId>
            <version>${version.arquillian.container.weld}</version>
            <scope>test</scope>
         </dependency>
         <dependency>
            <groupId>org.jboss.remotingjmx</groupId>
            <artifactId>remoting-jmx</artifactId>
            <version>${version.jboss.remotingjmx}</version>
         </dependency>
         <dependency>
            <groupId>org.jboss.sasl</groupId>
            <artifactId>jboss-sasl</artifactId>
            <version>${version.jboss.sasl}</version>
         </dependency>
         <dependency>
            <groupId>org.jboss.shrinkwrap.resolver</groupId>
            <artifactId>shrinkwrap-resolver-bom</artifactId>
            <version>${version.shrinkwrapResolver}</version>
            <type>pom</type>
            <scope>import</scope>
         </dependency>
         <dependency>
            <groupId>org.jboss.shrinkwrap.resolver</groupId>
            <artifactId>shrinkwrap-resolver-impl-maven</artifactId>
            <version>${version.shrinkwrapResolver}</version>
            <exclusions>
               <exclusion>
                  <groupId>com.google.collections</groupId>
                  <artifactId>google-collections</artifactId>
               </exclusion>
            </exclusions>
         </dependency>
         <dependency>
            <groupId>org.jboss.spec</groupId>
            <artifactId>jboss-javaee-7.0</artifactId>
            <version>${version.jboss.spec}</version>
            <type>pom</type>
            <scope>test</scope>
         </dependency>
         <dependency>
            <groupId>org.jboss.naming</groupId>
            <artifactId>jnp-client</artifactId>
            <version>${version.org.jboss.naming}</version>
            <exclusions>
               <exclusion>
                  <artifactId>jboss-logging-spi</artifactId>
                  <groupId>org.jboss.logging</groupId>
               </exclusion>
            </exclusions>
         </dependency>
         <dependency>
            <groupId>org.jboss.naming</groupId>
            <artifactId>jnpserver</artifactId>
            <version>${version.org.jboss.naming}</version>
            <exclusions>
               <exclusion>
                  <artifactId>jboss-logging-spi</artifactId>
                  <groupId>org.jboss.logging</groupId>
               </exclusion>
            </exclusions>
         </dependency>
         <dependency>
            <groupId>org.jboss.logmanager</groupId>
            <artifactId>jboss-logmanager</artifactId>
            <version>${version.jboss.logmanager}</version>
            <scope>test</scope>
         </dependency>
         <dependency>
            <groupId>org.jboss.resteasy</groupId>
            <artifactId>resteasy-jaxrs</artifactId>
            <version>${version.resteasy}</version>
         </dependency>
         <dependency>
            <groupId>org.jboss.solder</groupId>
            <artifactId>solder-impl</artifactId>
            <version>${version.solder}</version>
         </dependency>
         <dependency>
            <groupId>org.jboss</groupId>
            <artifactId>jboss-transaction-spi</artifactId>
            <version>${version.jboss.jboss-transaction-spi}</version>
            <exclusions>
               <exclusion>
                  <groupId>org.jboss.logging</groupId>
                  <artifactId>jboss-logging-spi</artifactId>
               </exclusion>
               <exclusion>
                  <groupId>org.jboss.ironjacamar</groupId>
                  <artifactId>ironjacamar-spec-api</artifactId>
               </exclusion>
               <exclusion>
                  <groupId>org.jboss.spec.javax.resource</groupId>
                  <artifactId>jboss-connector-api_1.5_spec</artifactId>
               </exclusion>
               <exclusion>
                  <groupId>org.jboss.spec.javax.transaction</groupId>
                  <artifactId>jboss-transaction-api_1.2_spec</artifactId>
               </exclusion>
            </exclusions>
         </dependency>
         <dependency>
            <groupId>org.jboss.weld</groupId>
            <artifactId>weld-core</artifactId>
            <version>${version.weld}</version>
            <scope>test</scope>
         </dependency>
         <dependency>
            <groupId>org.jboss.xnio</groupId>
            <artifactId>xnio-nio</artifactId>
            <version>${version.jboss.xnio}</version>
         </dependency>
         <dependency>
            <groupId>org.milyn</groupId>
            <artifactId>milyn-smooks-javabean</artifactId>
            <version>${version.milyn.smooks}</version>
         </dependency>
         <dependency>
            <groupId>org.milyn</groupId>
            <artifactId>milyn-smooks-csv</artifactId>
            <version>${version.milyn.smooks}</version>
         </dependency>
         <dependency>
            <groupId>org.mortbay.jetty</groupId>
            <artifactId>jetty-embedded</artifactId>
            <version>${version.jetty}</version>
         </dependency>
         <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-api</artifactId>
            <version>${version.slf4j}</version>
            <scope>test</scope>
         </dependency>
         <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-simple</artifactId>
            <version>${version.slf4j}</version>
         </dependency>
         <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-jdk14</artifactId>
            <version>${version.slf4j}</version>
            <scope>test</scope>
         </dependency>
         <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-log4j12</artifactId>
            <version>${version.slf4j}</version>
            <scope>test</scope>
         </dependency>
         
         <dependency>
            <groupId>org.testng</groupId>
            <artifactId>testng</artifactId>
            <version>${version.testng}</version>
            <scope>test</scope>
            <exclusions>
              <exclusion>
                <groupId>org.yaml</groupId>
                <artifactId>snakeyaml</artifactId>
              </exclusion>
            </exclusions>
         </dependency>
         <dependency>
            <groupId>spy</groupId>
            <artifactId>memcached</artifactId>
            <version>${version.spymemcached}</version>
         </dependency>
         <dependency>
            <groupId>org.fusesource.leveldbjni</groupId>
            <artifactId>leveldbjni-all</artifactId>
            <version>${version.leveldbjni}</version>
         </dependency>
         <dependency>
            <groupId>org.iq80.leveldb</groupId>
            <artifactId>leveldb</artifactId>
            <version>${version.leveldb}</version>
         </dependency>
         <dependency>
            <groupId>org.apache.httpcomponents</groupId>
            <artifactId>httpclient</artifactId>
            <version>${version.httpclient}</version>
         </dependency>
         <dependency>
            <groupId>org.jboss.narayana.jta</groupId>
            <artifactId>narayana-jta</artifactId>
            <version>${version.jbossjta}</version>
            <exclusions>
               <exclusion>
                  <artifactId>commons-httpclient</artifactId>
                  <groupId>commons-httpclient</groupId>
               </exclusion>
               <exclusion>
                  <artifactId>ironjacamar-spec-api</artifactId>
                  <groupId>org.jboss.ironjacamar</groupId>
               </exclusion>
               <exclusion>
                  <artifactId>jbogging-spi</artifactId>
                  <groupId>org.jboss.logging</groupId>
               </exclusion>
               <exclusion>
                  <artifactId>jboss-logging</artifactId>
                  <groupId>org.jboss.logging</groupId>
               </exclusion>
               <exclusion>
                  <artifactId>jboss-logging-processor</artifactId>
                  <groupId>org.jboss.logging</groupId>
               </exclusion>
               <exclusion>
                  <artifactId>jboss-logging-generator</artifactId>
                  <groupId>org.jboss.logging</groupId>
               </exclusion>
               <exclusion>
                  <artifactId>jbossws-native-core</artifactId>
                  <groupId>org.jboss.ws.native</groupId>
               </exclusion>
               <exclusion>
                  <artifactId>emma</artifactId>
                  <groupId>emma</groupId>
               </exclusion>
               <exclusion>
                  <artifactId>emma_ant</artifactId>
                  <groupId>emma</groupId>
               </exclusion>
               <exclusion>
                  <artifactId>hornetq-core</artifactId>
                  <groupId>org.hornetq</groupId>
               </exclusion>
               <exclusion>
                  <artifactId>netty</artifactId>
                  <groupId>io.netty</groupId>
               </exclusion>
               <exclusion>
                  <artifactId>wrapper</artifactId>
                  <groupId>tanukisoft</groupId>
               </exclusion>
               <exclusion>
                  <artifactId>jacorb</artifactId>
                  <groupId>jacorb</groupId>
               </exclusion>
               <exclusion>
                  <artifactId>jfreechart</artifactId>
                  <groupId>jfree</groupId>
               </exclusion>
               <exclusion>
                  <artifactId>jboss-corba-ots-spi</artifactId>
                  <groupId>org.jboss.integration</groupId>
               </exclusion>
               <exclusion>
                  <artifactId>jboss-server-manager</artifactId>
                  <groupId>org.jboss.jbossas</groupId>
               </exclusion>
               <exclusion>
                  <artifactId>jboss-ejb-api_3.1_spec</artifactId>
                  <groupId>org.jboss.spec.javax.ejb</groupId>
               </exclusion>
               <exclusion>
                  <artifactId>jnp-client</artifactId>
                  <groupId>org.jboss.naming</groupId>
               </exclusion>
               <exclusion>
                  <artifactId>jboss-servlet-api_3.0_spec</artifactId>
                  <groupId>org.jboss.spec.javax.servlet</groupId>
               </exclusion>
               <exclusion>
                  <artifactId>jbossws-common</artifactId>
                  <groupId>org.jboss.ws</groupId>
               </exclusion>
               <exclusion>
                  <artifactId>jcl-over-slf4j</artifactId>
                  <groupId>org.slf4j</groupId>
               </exclusion>
               <exclusion>
                  <artifactId>stax-api</artifactId>
                  <groupId>stax</groupId>
               </exclusion>
               <exclusion>
                  <artifactId>idl</artifactId>
                  <groupId>jacorb</groupId>
               </exclusion>
               <exclusion>
                  <artifactId>jboss-logging-tools</artifactId>
                  <groupId>org.jboss.logging</groupId>
               </exclusion>
               <exclusion>
                  <artifactId>jboss-connector-api_1.5_spec</artifactId>
                  <groupId>org.jboss.spec.javax.resource</groupId>
               </exclusion>
               <exclusion>
                  <artifactId>jboss-remoting</artifactId>
                  <groupId>org.jboss.remoting</groupId>
               </exclusion>
               <exclusion>
                  <artifactId>slf4j-api</artifactId>
                  <groupId>org.slf4j</groupId>
               </exclusion>
               <exclusion>
                  <artifactId>dom4j</artifactId>
                  <groupId>dom4j</groupId>
               </exclusion>
               <exclusion>
                  <artifactId>commons-codec</artifactId>
                  <groupId>commons-codec</groupId>
               </exclusion>
               <exclusion>
                  <artifactId>jboss-logmanager</artifactId>
                  <groupId>org.jboss.logmanager</groupId>
               </exclusion>
               <exclusion>
                  <artifactId>hibernate-jpa-2.0-api</artifactId>
                  <groupId>org.hibernate.javax.persistence</groupId>
               </exclusion>
               <exclusion>
                  <artifactId>commons-logging</artifactId>
                  <groupId>commons-logging</groupId>
               </exclusion>
               <exclusion>
                  <artifactId>jcommon</artifactId>
                  <groupId>jfree</groupId>
               </exclusion>
               <exclusion>
                  <artifactId>jboss-transaction-api_1.1_spec</artifactId>
                  <groupId>org.jboss.spec.javax.transaction</groupId>
               </exclusion>
               <exclusion>
                  <artifactId>byteman</artifactId>
                  <groupId>org.jboss.byteman</groupId>
               </exclusion>
               <exclusion>
                  <artifactId>byteman-submit</artifactId>
                  <groupId>org.jboss.byteman</groupId>
               </exclusion>
            </exclusions>
         </dependency>
         <dependency>
            <groupId>org.apache.directory.server</groupId>
            <artifactId>apacheds-all</artifactId>
            <version>${version.apache.ds}</version>
            <scope>test</scope>
         </dependency>
         <dependency>
            <groupId>org.picketbox</groupId>
            <artifactId>jbosssx-bare</artifactId>
            <version>${version.org.picketbox}</version>
            <scope>test</scope>
         </dependency>
         <dependency>
            <groupId>org.apache.karaf</groupId>
            <artifactId>apache-karaf</artifactId>
            <version>${version.karaf}</version>
            <type>zip</type>
            <scope>test</scope>
            <exclusions>
               <exclusion>
                  <groupId>org.ops4j.pax.logging</groupId>
                  <artifactId>pax-logging-api</artifactId>
               </exclusion>
               <exclusion>
                  <groupId>org.ops4j.pax.logging</groupId>
                  <artifactId>pax-logging-service</artifactId>
               </exclusion>
            </exclusions>
         </dependency>
         <dependency>
            <groupId>org.apache.karaf.features</groupId>
            <artifactId>org.apache.karaf.features.core</artifactId>
            <version>${version.karaf}</version>
            <scope>test</scope>
         </dependency>
         <dependency>
            <groupId>org.ops4j.pax.exam</groupId>
            <artifactId>pax-exam-container-karaf</artifactId>
            <version>${version.pax.exam}</version>
            <scope>test</scope>
         </dependency>
         <dependency>
            <groupId>org.ops4j.pax.exam</groupId>
            <artifactId>pax-exam</artifactId>
            <version>${version.pax.exam}</version>
            <scope>test</scope>
         </dependency>
         <dependency>
            <groupId>org.ops4j.pax.exam</groupId>
            <artifactId>pax-exam-junit4</artifactId>
            <version>${version.pax.exam}</version>
            <scope>test</scope>
         </dependency>
         <dependency>
            <groupId>org.ops4j.pax.exam</groupId>
            <artifactId>pax-exam-inject</artifactId>
            <version>${version.pax.exam}</version>
            <scope>test</scope>
         </dependency>
         <dependency>
            <groupId>org.xerial.snappy</groupId>
            <artifactId>snappy-java</artifactId>
            <version>${version.snappy}</version>
         </dependency>
         <dependency>
            <groupId>org.apache.geronimo.components</groupId>
            <artifactId>geronimo-transaction</artifactId>
            <version>${version.geronimo.tm}</version>
            <scope>test</scope>
         </dependency>
         <dependency>
            <groupId>org.objectweb.howl</groupId>
            <artifactId>howl</artifactId>
            <version>${version.howl}</version>
            <scope>test</scope>
         </dependency>
         <dependency>
            <groupId>org.ops4j.pax.url</groupId>
            <artifactId>pax-url-aether</artifactId>
            <version>${version.pax.url}</version>
            <scope>test</scope>
         </dependency>
         <dependency>
            <groupId>org.ops4j.pax.url</groupId>
            <artifactId>pax-url-assembly</artifactId>
            <version>${version.pax.url}</version>
            <scope>test</scope>
         </dependency>
         <dependency>
            <groupId>org.ops4j.pax.url</groupId>
            <artifactId>pax-url-wrap</artifactId>
            <version>${version.pax.url}</version>
            <scope>test</scope>
         </dependency>
         <dependency>
            <groupId>org.apache.lucene</groupId>
            <artifactId>lucene-queryparser</artifactId>
            <version>${version.lucene}</version>
         </dependency>
         <dependency>
            <groupId>org.apache.lucene</groupId>
            <artifactId>lucene-core</artifactId>
            <version>${version.lucene}</version>
         </dependency>
         <dependency>
            <groupId>org.apache.lucene</groupId>
            <artifactId>lucene-analyzers-common</artifactId>
            <version>${version.lucene}</version>
         </dependency>
          <dependency>
              <groupId>com.google.guava</groupId>
              <artifactId>guava</artifactId>
              <version>${version.guava}</version>
          </dependency>
          <dependency>
              <groupId>org.kohsuke.metainf-services</groupId>
              <artifactId>metainf-services</artifactId>
              <version>${version.metainf-services}</version>
              <optional>true</optional>
          </dependency>
      </dependencies>
   </dependencyManagement>
   <dependencies>
      
      <dependency>
         <groupId>com.thoughtworks.xstream</groupId>
         <artifactId>xstream</artifactId>
         <scope>test</scope>
      </dependency>
      <dependency>
         <groupId>log4j</groupId>
         <artifactId>log4j</artifactId>
         <optional>true</optional>
      </dependency>
      <dependency>
         <groupId>net.jcip</groupId>
         <artifactId>jcip-annotations</artifactId>
         <version>${version.jcipannotations}</version>
         <optional>true</optional>
      </dependency>
      <dependency>
         <groupId>org.mockito</groupId>
         <artifactId>mockito-all</artifactId>
         <version>${version.mockito}</version>
         <scope>test</scope>
      </dependency>
      <dependency>
         <groupId>org.jboss</groupId>
         <artifactId>jboss-transaction-spi</artifactId>
         <scope>test</scope>
      </dependency>
      <dependency>
         <groupId>org.jboss.narayana.jta</groupId>
         <artifactId>narayana-jta</artifactId>
         <scope>test</scope>
      </dependency>
      <dependency>
         <groupId>org.jboss.narayana.jta</groupId>
         <artifactId>narayana-jta</artifactId>
         <scope>test</scope>
      </dependency>
      <dependency>
         <groupId>org.jboss.logging</groupId>
         <artifactId>jboss-logging-processor</artifactId>
         <version>${version.jboss.logging.processor}</version>
         <scope>provided</scope>
      </dependency>
      <dependency>
         <groupId>org.testng</groupId>
         <artifactId>testng</artifactId>
         <scope>test</scope>
      </dependency>
      <dependency>
         <groupId>junit</groupId>
         <artifactId>junit</artifactId>
         <scope>test</scope>
      </dependency>
   </dependencies>
   <repositories>
      <repository>
         <releases>
            <enabled>true</enabled>
         </releases>
         <snapshots>
            <enabled>true</enabled>
         </snapshots>
         <id>jboss-public-repository</id>
         <name>JBoss Public Repository and Proxy for third party repositories</name>
         <url>https://repository.jboss.org/nexus/content/groups/public</url>
      </repository>
   </repositories>
   <pluginRepositories>
      <pluginRepository>
         <releases>
            <enabled>true</enabled>
         </releases>
         <snapshots>
            <enabled>true</enabled>
         </snapshots>
         <id>jboss-public-plugin-repository</id>
         <name>JBoss Public Plugin Repository and Proxy for third party plugin repositories</name>
         <url>https://repository.jboss.org/nexus/content/groups/public</url>
      </pluginRepository>
      <pluginRepository>
         <releases>
            <enabled>true</enabled>
         </releases>
         <snapshots>
            <enabled>true</enabled>
         </snapshots>
         <id>jboss-public-thirdparty-snapshots</id>
         <name>JBoss Public third party snapshots plugin repositories</name>
         <url>https://repository.jboss.org/nexus/content/groups/public-thirdparty-snapshots</url>
      </pluginRepository>
   </pluginRepositories>
   <build>
      <directory>${buildDirectory}</directory>
      <finalName>${project.artifactId}</finalName>
      <pluginManagement>
         <plugins>
            <plugin>
               <groupId>org.antlr</groupId>
               <artifactId>antlr3-maven-plugin</artifactId>
               <version>${version.antlr}</version>
               <executions>
                 <execution>
                     <goals>
                         <goal>antlr</goal>
                     </goals>
                 </execution>
             </executions>
            </plugin>
            <plugin>
               <groupId>org.apache.maven.plugins</groupId>
               <artifactId>maven-clean-plugin</artifactId>
               <version>2.6.1</version>
            </plugin>
            <plugin>
               <groupId>org.apache.maven.plugins</groupId>
               <artifactId>maven-install-plugin</artifactId>
               <version>2.5.1</version>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-help-plugin</artifactId>
                <version>2.1.1</version>
            </plugin>
            <plugin>
               <groupId>org.apache.maven.plugins</groupId>
               <artifactId>maven-deploy-plugin</artifactId>
               <version>2.8.1</version>
            </plugin>
            <plugin>
               <groupId>org.apache.maven.plugins</groupId>
               <artifactId>maven-antrun-plugin</artifactId>
               <version>1.8</version>
            </plugin>
            <plugin>
               <groupId>org.apache.felix</groupId>
               <artifactId>maven-bundle-plugin</artifactId>
               <version>${version.maven.bundle}</version>
            </plugin>
            <plugin>
               <groupId>org.apache.maven.plugins</groupId>
               <artifactId>maven-assembly-plugin</artifactId>
               <version>2.4</version>
            </plugin>
            <plugin>
               <groupId>org.apache.maven.plugins</groupId>
               <artifactId>maven-dependency-plugin</artifactId>
               <version>2.8</version>
            </plugin>
            <plugin>
               <groupId>org.apache.servicemix.tooling</groupId>
               <artifactId>depends-maven-plugin</artifactId>
               <version>1.2</version>
            </plugin>
            <plugin>
               <groupId>org.apache.maven.plugins</groupId>
               <artifactId>maven-failsafe-plugin</artifactId>
               <version>${version.maven.surefire}</version>
            </plugin>
            <plugin>
               <groupId>org.apache.maven.plugins</groupId>
               <artifactId>maven-javadoc-plugin</artifactId>
               <version>2.10</version>
            </plugin>
            <plugin>
               <groupId>org.apache.maven.plugins</groupId>
               <artifactId>maven-pmd-plugin</artifactId>
               
               <version>2.7.1</version>
               <configuration>
                  <minimumTokens>100</minimumTokens>
                  <targetJdk>${version.java}</targetJdk>
                  <linkXref>false</linkXref>
                  <sourceEncoding>utf-8</sourceEncoding>
               </configuration>
            </plugin>
            <plugin>
               <groupId>org.apache.maven.plugins</groupId>
               <artifactId>maven-shade-plugin</artifactId>
               <version>2.3</version>
            </plugin>
            <plugin>
               <groupId>org.apache.maven.plugins</groupId>
               <artifactId>maven-surefire-plugin</artifactId>
               <version>${version.maven.surefire}</version>
            </plugin>
            <plugin>
               <artifactId>maven-war-plugin</artifactId>
               <version>2.1.1</version>
               <configuration>
                  <attachClasses>false</attachClasses>
               </configuration>
            </plugin>
            <plugin>
               <groupId>org.codehaus.mojo</groupId>
               <artifactId>appassembler-maven-plugin</artifactId>
               <version>1.0</version>
            </plugin>
            <plugin>
               <groupId>org.codehaus.mojo</groupId>
               <artifactId>build-helper-maven-plugin</artifactId>
               <version>${version.maven.buildhelper}</version>
            </plugin>
            <plugin>
               <groupId>org.codehaus.mojo</groupId>
               <artifactId>exec-maven-plugin</artifactId>
               <version>1.2.1</version>
            </plugin>
            <plugin>
               <groupId>org.codehaus.mojo</groupId>
               <artifactId>ideauidesigner-maven-plugin</artifactId>
               <version>1.0-beta-1</version>
            </plugin>
            <plugin>
               <groupId>org.jboss.maven.plugins</groupId>
               <artifactId>maven-injection-plugin</artifactId>
               <version>1.0.2</version>
            </plugin>
            <plugin>
               <groupId>org.mortbay.jetty</groupId>
               <artifactId>jetty-maven-plugin</artifactId>
               <version>8.0.0.M3</version>
            </plugin>
            <plugin>
               <groupId>org.jacoco</groupId>
               <artifactId>jacoco-maven-plugin</artifactId>
               <version>${version.jacoco}</version>
               <configuration>
                  <includes>
                     <include>org.infinispan.*</include>
                  </includes>
               </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-checkstyle-plugin</artifactId>
                <version>2.10</version>
                <dependencies>
                   <dependency>
                      <groupId>org.infinispan</groupId>
                      <artifactId>infinispan-checkstyle</artifactId>
                      <version>${project.version}</version>
                   </dependency>
                </dependencies>
                <configuration>
                   
                   <configLocation>checkstyle.xml</configLocation>
                   <consoleOutput>true</consoleOutput>
                   <failsOnError>true</failsOnError>
                   <violationSeverity>error</violationSeverity>
                   <includeTestSourceDirectory>true</includeTestSourceDirectory>
                </configuration>
                <executions>
                   <execution>
                      <id>check-style</id>
                      <phase>verify</phase>
                      <goals>
                         <goal>checkstyle</goal>
                      </goals>
                   </execution>
                </executions>
             </plugin>
             <plugin>
                <groupId>org.scala-tools</groupId>
                <artifactId>maven-scala-plugin</artifactId>
                <version>${version.maven.scala}</version>
                <executions>
                   
                   <execution>
                      <id>compile</id>
                      <phase>none</phase> 
                      <goals>
                         <goal>compile</goal>
                      </goals>
                   </execution>
                   <execution>
                      <id>test-compile</id>
                      <phase>none</phase> 
                      <goals>
                         <goal>testCompile</goal>
                      </goals>
                      <configuration>
                         <args>
                            <arg>-P:genjavadoc:out=${project.build.directory}/genjavadoctest</arg>
                         </args>
                      </configuration>
                   </execution>
                   <execution>
                      <phase>none</phase> 
                      <goals>
                         <goal>compile</goal>
                      </goals>
                   </execution>
                   <execution>
                      <id>generate-blueprint</id>
                      <phase>none</phase>
                      <goals>
                         <goal>script</goal>
                      </goals>
                      <configuration>
                         <keepGeneratedScript>true</keepGeneratedScript>
                         
                         <script>
                           
                             import scala.io.Source
                             import java.io.{File, PrintWriter}
                             val serviceDir = new File(project.getBuild().getOutputDirectory() + "/META-INF/services")
                             if (serviceDir.exists &amp;&amp; serviceDir.listFiles.length != 0) {
                                val services =
                                   for (file &lt;- serviceDir.listFiles; line &lt;- Source.fromFile(file).getLines())
                                   yield {
                                          val beanName = line.substring(line.lastIndexOf(".") + 1).toLowerCase
                                          "&lt;bean id=\"" + beanName + "\" class=\"" + line + "\"/&gt;" + "\n" +
                                          "&lt;service ref=\"" + beanName + "\" interface=\"" + file.getName + "\"/&gt;\n"
                                         }
                                val targetBlueprint = new File(project.getBuild().getOutputDirectory() + "/OSGI-INF/blueprint/blueprint.xml")
                                val input = Source.fromFile(targetBlueprint).getLines.mkString("\n")
                                val output = new PrintWriter(targetBlueprint)
                                try {
                                   output.println(input.replace("${services}", services.toArray.mkString("\n")))
                                } finally {
                                   output.close
                                }
                             }
                           
                         </script>
                      </configuration>
                   </execution>
                </executions>
                <configuration>
                   <jvmArgs>
                      <jvmArg>-Xmx256m</jvmArg>
                   </jvmArgs>
                   <args>
                      <arg>-P:genjavadoc:out=${project.parent.build.directory}/genjavadoc</arg>
                   </args>
                   <compilerPlugins>
                      <compilerPlugin>
                         <groupId>com.typesafe.genjavadoc</groupId>
                         <artifactId>genjavadoc-plugin_${version.scala}</artifactId>
                         <version>${version.maven.genjavadoc}</version>
                      </compilerPlugin>
                   </compilerPlugins>
                </configuration>
             </plugin>
         </plugins>
      </pluginManagement>
      <plugins>
         <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-enforcer-plugin</artifactId>
            <version>1.3.1</version>
            <executions>
               <execution>
                  <id>enforce-java</id>
                  <goals>
                     <goal>enforce</goal>
                  </goals>
                  <configuration>
                     <rules>
                        <requireJavaVersion>
                           <version>[${version.java},)</version>
                        </requireJavaVersion>
                        <requireMavenVersion>
                           <version>[3.0.5,)</version>
                        </requireMavenVersion>
                     </rules>
                  </configuration>
               </execution>
            </executions>
         </plugin>
         <plugin>
            <artifactId>maven-remote-resources-plugin</artifactId>
            <version>1.1</version>
            <executions>
               <execution>
                  <id>attach-license</id>
                  <goals>
                     <goal>process</goal>
                  </goals>
                  <inherited>true</inherited>
                  <configuration>
                     <resourceBundles>
                        <resourceBundle>org.infinispan:infinispan-license:1</resourceBundle>
                     </resourceBundles>
                  </configuration>
               </execution>
            </executions>
         </plugin>
         <plugin>
            <groupId>org.apache.felix</groupId>
            <artifactId>maven-bundle-plugin</artifactId>
            <extensions>true</extensions>
            <configuration>
               <instructions>
                  <Bundle-DocURL>http://www.infinispan.org/</Bundle-DocURL>
                  <Export-Package>${project.groupId}.*;version=${project.version};-split-package:=error</Export-Package>
                  <_consumer-policy>${bnd.consumer.policy}</_consumer-policy>
                  <_provider-policy>${bnd.provider.policy}</_provider-policy>
                  <Include-Resource>{maven-resources}</Include-Resource>
               </instructions>
            </configuration>
         </plugin>
         
         <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-antrun-plugin</artifactId>
            <dependencies>
                <dependency>
                    <groupId>org.apache.ant</groupId>
                    <artifactId>ant</artifactId>
                    <version>${version.ant}</version>
                </dependency>
            </dependencies>
            <executions>
               <execution>
                  <id>copy_serialized_metadata</id>
                  <phase>process-test-resources</phase>
                  <goals>
                     <goal>run</goal>
                  </goals>
                  <configuration>
                     <skip>${module.skipComponentMetaDataProcessing}</skip>
                     <target>
                        <copy file="${basedir}/src/main/resources/${project.artifactId}-component-metadata.dat" todir="${project.build.outputDirectory}" />
                     </target>
                  </configuration>
               </execution>
            </executions>
         </plugin>
         
         <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-eclipse-plugin</artifactId>
            <version>2.7</version>
            <configuration>
               <downloadSources>true</downloadSources>
               <buildOutputDirectory>${basedir}/eclipse-output</buildOutputDirectory>
            </configuration>
         </plugin>
         
         <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-idea-plugin</artifactId>
            <version>2.2</version>
            <configuration>
               <downloadSources>true</downloadSources>
            </configuration>
         </plugin>
         <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-jar-plugin</artifactId>
            <version>2.4</version>
            <executions>
               <execution>
                  <id>build-test-jar</id>
                  <goals>
                     <goal>test-jar</goal>
                  </goals>
                  <configuration>
                     <archive>
                        <manifest>
                           <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries>
                           <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
                        </manifest>
                     </archive>
                     <excludes>
                        <excludes>**/jbossts-properties.xml</excludes>
                     </excludes>
                  </configuration>
               </execution>
            </executions>
            <configuration>
               <archive>
                  <manifest>
                     <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries>
                     <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
                     <mainClass>org.infinispan.Version</mainClass>
                  </manifest>
               </archive>
               <excludes>
                  <exclude>**/log4j.xml</exclude>
                  <exclude>**/*.bat</exclude>
                  <exclude>**/*.sh</exclude>
                  <exclude>**/*.txt</exclude>
               </excludes>
            </configuration>
         </plugin>
         <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-release-plugin</artifactId>
            <version>2.2.2</version>
         </plugin>
         <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-resources-plugin</artifactId>
            <version>2.6</version>
            <configuration>
               <encoding>UTF-8</encoding>
            </configuration>
         </plugin>
         
         <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-plugin</artifactId>
            <configuration>
               <parallel>tests</parallel>
               <threadCount>${infinispan.test.parallel.threads}</threadCount>
               <forkCount>1</forkCount>
               <reuseForks>true</reuseForks>
               <groups>${defaultTestGroup}</groups>
               <excludedGroups>${defaultExcludedTestGroup}</excludedGroups>
               <systemPropertyVariables>
                  <infinispan.test.jgroups.protocol>${infinispan.test.jgroups.protocol}</infinispan.test.jgroups.protocol>
                  <jgroups.bind_addr>127.0.0.1</jgroups.bind_addr>
                  <java.net.preferIPv4Stack>true</java.net.preferIPv4Stack>
                  <infinispan.unsafe.allow_jdk8_chm>true</infinispan.unsafe.allow_jdk8_chm>
                  <log4j.configuration>${log4j.configuration}</log4j.configuration>
                  <build.directory>${project.build.directory}</build.directory>
                 
                 <infinispan.module-name>${project.artifactId}</infinispan.module-name>
               </systemPropertyVariables>
               <trimStackTrace>false</trimStackTrace>
               <properties>
                  <property>
                     
                     <name>usedefaultlisteners</name>
                     <value>false</value>
                  </property>
                  <property>
                     <name>listener</name>
                     <value>${testNGListener}</value>
                  </property>
               </properties>
               
               <argLine>${forkJvmArgs} -Dsun.nio.ch.bugLevel</argLine>
            </configuration>
         </plugin>
         
         <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>exec-maven-plugin</artifactId>
            <executions>
               <execution>
                  <id>serialize_component_metadata</id>
                  <phase>process-classes</phase>
                  <goals>
                     <goal>java</goal>
                  </goals>
                  <configuration>
                     <skip>${module.skipComponentMetaDataProcessing}</skip>
                     <mainClass>org.infinispan.factories.components.ComponentMetadataPersister</mainClass>
                     <arguments>
                        <argument>${project.build.outputDirectory}</argument>
                        <argument>${basedir}/src/main/resources/${project.artifactId}-component-metadata.dat</argument>
                     </arguments>
                     <systemProperties>
                        <systemProperty>
                           <key>infinispan.isCoreModule</key>
                           <value>${module.metadata.isCoreModule}</value>
                        </systemProperty>
                     </systemProperties>
                  </configuration>
               </execution>
            </executions>
         </plugin>
      </plugins>
   </build>
   <reporting>
      <plugins>
         
         <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-pmd-plugin</artifactId>
            
            <version>2.7.1</version>
         </plugin>
         <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-report-plugin</artifactId>
            <version>2.12.2</version>
         </plugin>
         
         <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>findbugs-maven-plugin</artifactId>
            <version>2.5.2</version>
            <configuration>
               <onlyAnalyze>org.infinispan.*</onlyAnalyze>
               <xmlOutput>true</xmlOutput>
               <xmlOutputDirectory>target</xmlOutputDirectory>
            </configuration>
         </plugin>
      </plugins>
   </reporting>
   <profiles>
      <profile>
         <id>distribution</id>
         <properties>
            <skipTests>true</skipTests>
         </properties>

         <build>
            <plugins>
               
               <plugin>
                  <groupId>org.apache.maven.plugins</groupId>
                  <artifactId>maven-dependency-plugin</artifactId>
                  <executions>
                     <execution>
                        <id>create-classpath</id>
                        <phase>package</phase>
                        <goals>
                           <goal>build-classpath</goal>
                        </goals>
                        <configuration>
                           <includeScope>runtime</includeScope>
                           <excludeScope>test</excludeScope>
                           <excludeArtifactIds>infinispan-embedded,infinispan-embedded-query,infinispan-remote</excludeArtifactIds>
                           <excludeGroupIds>org.infinispan,org.jgroups,org.jboss.marshalling,org.jboss.logging,net.jcip</excludeGroupIds>
                           <prefix>$ISPN_HOME/lib</prefix>
                           <outputFile>${project.build.directory}/runtime-classpath.txt</outputFile>
                           <silent>true</silent>
                        </configuration>
                     </execution>
                     <execution>
                        <id>copy-dependencies</id>
                        <phase>package</phase>
                        <goals>
                           <goal>copy-dependencies</goal>
                        </goals>
                        <configuration>
                           <includeScope>runtime</includeScope>
                           <excludeScope>test</excludeScope>
                           <excludeGroupIds>org.infinispan,org.jgroups,org.jboss.marshalling,org.jboss.logging,net.jcip</excludeGroupIds>
                           <silent>true</silent>
                        </configuration>
                     </execution>
                  </executions>
               </plugin>
            </plugins>
         </build>
      </profile>

      <profile>
         <id>extras</id>
         <activation>
            <activeByDefault>true</activeByDefault>
         </activation>
         <build>
            <plugins>
               <plugin>
                  <groupId>org.apache.maven.plugins</groupId>
                  <artifactId>maven-source-plugin</artifactId>
                  <version>${version.maven.source}</version>
                  <executions>
                     <execution>
                        <id>attach-sources</id>
                        <goals>
                           <goal>jar</goal>
                           <goal>test-jar</goal>
                        </goals>
                     </execution>
                  </executions>
                  <inherited>true</inherited>
               </plugin>
            </plugins>
         </build>
         <properties>
            
            <packaging>bundle</packaging>
         </properties>
      </profile>
      <profile>
         <id>test-CI</id>
         <activation>
            <activeByDefault>true</activeByDefault>
         </activation>
         <properties>
            <defaultTestGroup>functional,unit,arquillian</defaultTestGroup>
            <infinispan.test.jgroups.protocol>tcp</infinispan.test.jgroups.protocol>
         </properties>
      </profile>
      <profile>
         <id>test-functional</id>
         <properties>
            <defaultTestGroup>functional</defaultTestGroup>
            <infinispan.test.jgroups.protocol>tcp</infinispan.test.jgroups.protocol>
         </properties>
      </profile>
      <profile>
         <id>smoke</id>
         <properties>
            <defaultTestGroup>smoke</defaultTestGroup>
            <infinispan.test.jgroups.protocol>tcp</infinispan.test.jgroups.protocol>
         </properties>
      </profile>
      <profile>
         <id>test-xsite</id>
         <properties>
            <defaultTestGroup>xsite</defaultTestGroup>
            <infinispan.test.jgroups.protocol>tcp</infinispan.test.jgroups.protocol>
         </properties>
         <build>
            <plugins>
               <plugin>
                  <groupId>org.apache.maven.plugins</groupId>
                  <artifactId>maven-surefire-plugin</artifactId>
                  <configuration>
                     <threadCount>1</threadCount>
                  </configuration>
               </plugin>
            </plugins>
         </build>
      </profile>
      <profile>
         <id>test-unstable</id>
         <properties>
            <defaultTestGroup>unstable</defaultTestGroup>
             
            <defaultExcludedTestGroup />
            <infinispan.test.jgroups.protocol>tcp</infinispan.test.jgroups.protocol>
         </properties>
       </profile>
      <profile>
         <id>test-unit</id>
         <properties>
            <defaultTestGroup>unit</defaultTestGroup>
         </properties>
      </profile>
      <profile>
         <id>test-jgroups</id>
         <properties>
            <defaultTestGroup>jgroups</defaultTestGroup>
         </properties>
      </profile>
      <profile>
         <id>test-transaction</id>
         <properties>
            <defaultTestGroup>transaction</defaultTestGroup>
         </properties>
      </profile>
     <profile>
       <id>debug-tests</id>
       <properties>
         <testNGListener>org.infinispan.test.fwk.DebuggingUnitTestNGListener</testNGListener>
         <infinispan.test.jgroups.protocol>tcp</infinispan.test.jgroups.protocol>
       </properties>
     </profile>
     <profile>
       <id>fail-all-tests</id>
       <properties>
         <testNGListener>org.infinispan.test.fwk.UnitTestTestNGListener,org.infinispan.test.fwk.FailAllTestNGHook</testNGListener>
         <infinispan.test.jgroups.protocol>tcp</infinispan.test.jgroups.protocol>
       </properties>
     </profile>
     <profile>
       <id>fail-all-tests-setup</id>
       <properties>
         <testNGListener>org.infinispan.test.fwk.UnitTestTestNGListener,org.infinispan.test.fwk.FailAllSetupTestNGHook</testNGListener>
         <infinispan.test.jgroups.protocol>tcp</infinispan.test.jgroups.protocol>
       </properties>
     </profile>
     <profile>
       <id>customForkJvmArgs</id>
       <activation>
         <activeByDefault>false</activeByDefault>
         <property>
           <name>env.MAVEN_FORK_OPTS</name>
         </property>
       </activation>
       <properties>
         <forkJvmArgs>${env.MAVEN_FORK_OPTS}</forkJvmArgs>
       </properties>
     </profile>
      <profile>
         <id>nonParallel</id>
         <activation>
            <activeByDefault>false</activeByDefault>
         </activation>
         <properties>
            <infinispan.test.parallel.threads>1</infinispan.test.parallel.threads>
            <infinispan.test.jgroups.protocol>tcp</infinispan.test.jgroups.protocol>
         </properties>
      </profile>
      <profile>
         <id>traceTests</id>
         <activation>
            <activeByDefault>false</activeByDefault>
         </activation>
         <build>
            <plugins>
               
               <plugin>
                  <groupId>org.apache.maven.plugins</groupId>
                  <artifactId>maven-surefire-plugin</artifactId>
                  <configuration>
                     <systemPropertyVariables>
                        <log4j.configuration>log4j-trace.xml</log4j.configuration>
                     </systemPropertyVariables>
                  </configuration>
               </plugin>
            </plugins>
         </build>
      </profile>
      <profile>
         <id>coverage</id>

         <activation>
            <activeByDefault>false</activeByDefault>
         </activation>

         <build>
            <plugins>
               <plugin>
                  <groupId>org.apache.maven.plugins</groupId>
                  <artifactId>maven-dependency-plugin</artifactId>
                  <executions>
                     
                     <execution>
                        <id>jacoco-dependency-ant</id>
                        <goals>
                           <goal>copy</goal>
                        </goals>
                        <phase>process-test-resources</phase>
                        <inherited>false</inherited>
                        <configuration>
                           <artifactItems>
                              <artifactItem>
                                 <groupId>org.jacoco</groupId>
                                 <artifactId>org.jacoco.ant</artifactId>
                                 <version>${version.jacoco}</version>
                              </artifactItem>
                              <artifactItem>
                                 <groupId>org.jacoco</groupId>
                                 <artifactId>org.jacoco.core</artifactId>
                                 <version>${version.jacoco}</version>
                              </artifactItem>
                              <artifactItem>
                                 <groupId>org.jacoco</groupId>
                                 <artifactId>org.jacoco.report</artifactId>
                                 <version>${version.jacoco}</version>
                              </artifactItem>
                              <artifactItem>
                                 <groupId>asm</groupId>
                                 <artifactId>asm-all</artifactId>
                                 <version>${version.asm}</version>
                              </artifactItem>
                           </artifactItems>
                           <stripVersion>true</stripVersion>
                           <outputDirectory>${basedir}/target/jacoco-jars</outputDirectory>
                        </configuration>
                     </execution>
                  </executions>
               </plugin>

               
               <plugin>
                  <groupId>org.jacoco</groupId>
                  <artifactId>jacoco-maven-plugin</artifactId>
                  <executions>
                     <execution>
                        <goals>
                           <goal>prepare-agent</goal>
                        </goals>
                     </execution>
                  </executions>
                  <configuration>
                     <propertyName>jacocoAgent</propertyName>
                  </configuration>
               </plugin>

               
               <plugin>
                  <groupId>org.apache.maven.plugins</groupId>
                  <artifactId>maven-surefire-plugin</artifactId>
                  <configuration>
                     <argLine combine.self="override">-Xmx1024m -XX:MaxPermSize=1024m ${jacocoAgent}</argLine>
                     <parallel combine.self="override">tests</parallel>
                     <threadCount combine.self="override">${infinispan.test.parallel.threads}</threadCount>
                     <groups combine.self="override">${defaultTestGroup}</groups>
                     <systemPropertyVariables combine.self="override">
                           <infinispan.test.jgroups.protocol>${infinispan.test.jgroups.protocol}</infinispan.test.jgroups.protocol>
                           <jgroups.bind_addr>127.0.0.1</jgroups.bind_addr>
                           <java.net.preferIPv4Stack>true</java.net.preferIPv4Stack>
                           <infinispan.unsafe.allow_jdk8_chm>true</infinispan.unsafe.allow_jdk8_chm>
                     </systemPropertyVariables>
                     <trimStackTrace combine.self="override">false</trimStackTrace>
                     <properties combine.self="override">
                        <property>
                           <name>listener</name>
                           <value>${testNGListener}</value>
                        </property>
                     </properties>
                  </configuration>
               </plugin>
            </plugins>
         </build>
      </profile>

      <profile>
         <id>jacocoReport</id>

         <build>
            <plugins>
               <plugin>
                  <groupId>org.apache.maven.plugins</groupId>
                  <artifactId>maven-antrun-plugin</artifactId>
                  <executions>
                     <execution>
                        <phase>install</phase>
                        <goals>
                           <goal>run</goal>
                        </goals>
                        <configuration combine.self="override">
                           <target>
                              
                              <taskdef classname="org.jacoco.ant.ReportTask" name="report">
                                 <classpath path="${basedir}/target/jacoco-jars/org.jacoco.ant.jar" />
                                 <classpath path="target/jacoco-jars/org.jacoco.core.jar" />
                                 <classpath path="target/jacoco-jars/org.jacoco.report.jar" />
                                 <classpath path="target/jacoco-jars/asm-all.jar" />
                              </taskdef>

                              <echo message="Deleting previous report" />
                              <delete dir="${dir.report}" />

                              <echo message="Creating report directory" />
                              <mkdir dir="${dir.report}" />

                              <echo message="Generating JaCoCo Reports" />
                              <report>
                                 
                                 <executiondata>
                                    <fileset dir="${dir.ispn}" includes="**/target/jacoco.exec" />
                                 </executiondata>

                                 
                                 <structure name="${reportTitle}">
                                    <classfiles>
                                       <fileset dir="${dir.ispn}">
                                          <include name="**/target/classes/" />
                                       </fileset>
                                    </classfiles>
                                    <sourcefiles encoding="UTF-8">
                                       <mappedresources>
                                          <fileset dir="${dir.ispn}" includes="**/src/main/java/**/*.java" />
                                          <mapper from="^(.*/java/)(.*)$" to="\2" type="regexp" />
                                       </mappedresources>
                                    </sourcefiles>

                                 </structure>

                                 
                                 <html destdir="${dir.report}" />
                              </report>
                           </target>
                        </configuration>
                     </execution>
                  </executions>
                  <dependencies>
                     <dependency>
                        <groupId>org.jacoco</groupId>
                        <artifactId>org.jacoco.ant</artifactId>
                        <version>${version.jacoco}</version>
                     </dependency>
                  </dependencies>
               </plugin>
            </plugins>
         </build>
      </profile>

   </profiles>
</project>