<?xml version="1.0" encoding="UTF-8"?>
<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>
 
  <parent>
    <groupId>org.terracotta.forge</groupId>
    <artifactId>forge-parent</artifactId>
    <version>3.0</version>
    <relativePath/>
  </parent>
  
  <groupId>org.terracotta</groupId>
  <artifactId>terracotta-root</artifactId>
  <version>4.0.0</version>
  <name>terracotta-root</name>
  <packaging>pom</packaging>

  <properties>
    <build.edition>opensource</build.edition>
  </properties>
  
  <modules>
    <module>build-parent</module>
    <module>build-data</module>
    <module>common</module>
    <module>dso-l1-api</module>
    <module>dso-common</module>
    <module>dso-l2-common</module>
    <module>dso-l1</module>
    <module>dso-l2</module>
    <module>deploy</module>
    <module>dso-cluster-api</module>
    
    <module>legacy-test-tree</module>
    <module>dso-system-tests</module>
    
    <module>terracotta-parent</module>
    <module>terracotta</module>
    <module>terracotta-l1-parent</module>
    <module>terracotta-l1</module>
    <module>test-framework</module>        
    <module>system-tests-parent</module>        

    <module>toolkit-impl</module>
    <module>toolkit-express-impl</module>
    <module>toolkit-runtime</module>
    <module>toolkit-system-tests</module>

    <module>management</module>
    <module>management-agent</module>
  </modules>
  
  <profiles>
    <!-- Allow building kit from the top level -->
    <profile>
      <id>kit</id>
      <modules>
        <module>terracotta-kit</module>
      </modules>
    </profile>

    <!-- activate to include EE modules if it's EE branch -->
    <profile>
      <id>include-ee-modules</id>
      <properties>
        <build.edition>enterprise</build.edition>
      </properties>
      <activation>
        <file>
          <exists>../terracotta-ee/pom.xml</exists>
        </file>
      </activation>      
      <modules>
        <module>../ent-common</module>
        <module>../ent-dso-l1</module>
        <module>../ent-dso-l2</module>
        <module>../ent-deploy</module>
        <module>../ent-system-tests</module>
        <module>../ent-active-active-tests</module>
        <module>../terracotta-ee</module>
        <module>../terracotta-l1-ee</module>         
        <module>../toolkit-impl-ee</module>
        <module>../toolkit-express-impl-ee</module>
        <module>../toolkit-runtime-ee</module>
        <module>../toolkit-ee-system-tests</module>
      </modules>        
    </profile>
    
    <!-- activate by default if 'terracotta-toolkit-api' module exists. 
         You have to check out this module manually under 'community/devwork' -->
     <profile>
      <id>toolkit-api</id>
      <activation>
        <file>
          <exists>devwork/terracotta-toolkit-api</exists>
        </file>
      </activation>      
      <modules>
        <module>devwork/terracotta-toolkit-api</module>
      </modules>
    </profile>
    <!-- activate by default if 'ehcache' module exists. 
         You have to check out this module manually under 'community/devwork' -->
    <profile>
      <id>ehcache</id>
      <activation>
        <file>
          <exists>devwork/ehcache</exists>
        </file>
      </activation>      
      <modules>
        <module>devwork/ehcache</module>
      </modules>
    </profile>
    <!-- activate by default if 'ehcache-ee' module exists. 
         You have to check out this module manually under 'community/devwork' -->
    <profile>
      <id>ehcache-ee</id>
      <activation>
        <file>
          <exists>devwork/ehcache-ee</exists>
        </file>
      </activation>      
      <modules>
        <module>devwork/ehcache-ee</module>
      </modules>
    </profile>        
    
    <profile>
      <id>quartz</id>
      <activation>
        <file>
          <exists>devwork/quartz</exists>
        </file>
      </activation>      
      <modules>
        <module>devwork/quartz</module>
      </modules>
    </profile>     
    
    <profile>
      <id>quartz-ee</id>
      <activation>
        <file>
          <exists>devwork/quartz-ee</exists>
        </file>
      </activation>      
      <modules>
        <module>devwork/quartz-ee</module>
      </modules>
    </profile>     
 
    <profile>
      <id>management-core</id>
      <activation>
        <file>
          <exists>devwork/management-core</exists>
        </file>
      </activation>      
      <modules>
        <module>devwork/management-core</module>
      </modules>
    </profile>     
 
    <profile>
      <id>management-apps</id>
      <activation>
        <file>
          <exists>devwork/management-apps</exists>
        </file>
      </activation>      
      <modules>
        <module>devwork/management-apps</module>
      </modules>
    </profile>     

    <profile>
      <id>core-storage-api</id>
      <activation>
        <file>
          <exists>devwork/core-storage-api</exists>
        </file>
      </activation>      
      <modules>
        <module>devwork/core-storage-api</module>
      </modules>
    </profile>     
    <profile>
      <id>heap-core-storage</id>
      <activation>
        <file>
          <exists>devwork/heap-core-storage</exists>
        </file>
      </activation>      
      <modules>
        <module>devwork/heap-core-storage</module>
      </modules>
    </profile>     
    <profile>
      <id>bigmemory-core-storage</id>
      <activation>
        <file>
          <exists>devwork/bigmemory-core-storage</exists>
        </file>
      </activation>      
      <modules>
        <module>devwork/bigmemory-core-storage</module>
      </modules>
    </profile>

    <profile>
      <id>search</id>
      <activation>
        <file>
          <exists>devwork/search</exists>
        </file>
      </activation>      
      <modules>
        <module>devwork/search</module>
      </modules>
    </profile>

    <profile>
      <id>terracotta-license</id>
      <activation>
        <file>
          <exists>devwork/terracotta-license</exists>
        </file>
      </activation>      
      <modules>
        <module>devwork/terracotta-license</module>
      </modules>
    </profile>

    <profile>
      <id>offheap-store</id>
      <activation>
        <file>
          <exists>devwork/offheap-store</exists>
        </file>
      </activation>      
      <modules>
        <module>devwork/offheap-store</module>
      </modules>
    </profile>     

    <profile>
      <id>statistics</id>
      <activation>
        <file>
          <exists>devwork/statistics</exists>
        </file>
      </activation>      
      <modules>
        <module>devwork/statistics</module>
      </modules>
    </profile>     
  </profiles>
  
  <repositories>
    <repository>
      <id>terracotta-snapshots</id>
      <url>http://www.terracotta.org/download/reflector/snapshots</url>
    </repository>
    <repository>
      <id>terracotta-releases</id>
      <url>http://www.terracotta.org/download/reflector/releases</url>
    </repository>
  </repositories>
  
  <pluginRepositories>
    <pluginRepository>
      <id>terracotta-snapshots</id>
      <url>http://www.terracotta.org/download/reflector/snapshots</url>
    </pluginRepository>
    <pluginRepository>
      <id>terracotta-releases</id>
      <url>http://www.terracotta.org/download/reflector/releases</url>
    </pluginRepository>   
  </pluginRepositories>  
</project>
