Script for processing log entries
[aquarium] / pom.xml
diff --git a/pom.xml b/pom.xml
index 6c91a52..f3c9a66 100644 (file)
--- a/pom.xml
+++ b/pom.xml
@@ -1,19 +1,52 @@
 <?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"
+<!--
+  ~ Copyright 2011 GRNET S.A. All rights reserved.
+  ~
+  ~ Redistribution and use in source and binary forms, with or
+  ~ without modification, are permitted provided that the following
+  ~ conditions are met:
+  ~
+  ~   1. Redistributions of source code must retain the above
+  ~      copyright notice, this list of conditions and the following
+  ~      disclaimer.
+  ~
+  ~   2. Redistributions in binary form must reproduce the above
+  ~      copyright notice, this list of conditions and the following
+  ~      disclaimer in the documentation and/or other materials
+  ~      provided with the distribution.
+  ~
+  ~ THIS SOFTWARE IS PROVIDED BY GRNET S.A. ``AS IS'' AND ANY EXPRESS
+  ~ OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+  ~ WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+  ~ PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL GRNET S.A OR
+  ~ CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+  ~ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+  ~ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
+  ~ USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
+  ~ AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+  ~ LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+  ~ ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+  ~ POSSIBILITY OF SUCH DAMAGE.
+  ~
+  ~ The views and conclusions contained in the software and
+  ~ documentation are those of the authors and should not be
+  ~ interpreted as representing official policies, either expressed
+  ~ or implied, of GRNET S.A.
+  -->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
 
 
   <modelVersion>4.0.0</modelVersion>
   <groupId>gr.grnet</groupId>
   <artifactId>aquarium</artifactId>
-  <version>0.0.1-SNAPSHOT</version>
-  <packaging>pom</packaging>
+  <version>0.0.2-SNAPSHOT</version>
 
   <!-- Project details-->
   <name>Aquarium</name>
   <description>
-    Account handling, sharing and charging services for the Okeanos cloud
+    Accounting services for the Okeanos cloud
   </description>
   <url>http://code.grnet.gr/projects/aquarium</url>
   <inceptionYear>2011</inceptionYear>
       <name>Georgios Gousios</name>
       <email>gousiosg@grnet.gr</email>
     </developer>
+    <developer>
+      <id>loverdos</id>
+      <name>Christos KK Loverdos</name>
+      <email>loverdos@grnet.gr</email>
+    </developer>
   </developers>
 
   <scm>
     <url>http://code.grnet.gr/projects/aquarium/repository</url>
     <connection>scm:git:https://code.grnet.gr/git/aquarium</connection>
+    <developerConnection>scm:git:https://code.grnet.gr/git/aquarium</developerConnection>
   </scm>
 
   <issueManagement>
     <system>redmine</system>
-    <url>http://code.grnet.gr/projects/aquarium/issuses</url>
+    <url>http://code.grnet.gr/projects/aquarium/issues</url>
   </issueManagement>
 
+  <distributionManagement>
+    <repository>
+      <id>aq-release</id>
+      <name>Aquarium releases repo</name>
+      <url>http://aquarium.dev.grnet.gr:8081/nexus/content/repositories/releases</url>
+    </repository>
+    <snapshotRepository>
+      <id>aq-snapshot</id>
+      <name>Aquarium snapshots repo</name>
+      <url>http://aquarium.dev.grnet.gr:8081/nexus/content/repositories/snapshots</url>
+    </snapshotRepository>
+  </distributionManagement>
+
   <!--Common project settings-->
   <properties>
     <scala.version>2.9.1</scala.version>
       <name>Scala-Tools Dependencies Repository for Releases</name>
       <url>http://scala-tools.org/repo-releases</url>
     </repository>
+    
+    <repository>
+      <id>scala-tools.snapshots</id>
+      <name>Scala-Tools Dependencies Repository for Snapshots</name>
+      <url>http://scala-tools.org/repo-snapshots</url>
+    </repository>
+
     <repository>
       <id>java.net.maven2</id>
       <name>java.net Maven2 Repository</name>
       <url>http://download.java.net/maven/2/</url>
     </repository>
-    <repository>
-      <id>EclipseLink Repo</id>
-      <url>http://www.eclipse.org/downloads/download.php?r=1&amp;nf=1&amp;file=/rt/eclipselink/maven.repo</url>
-    </repository>
+    
     <repository>
       <name>JBoss</name>
       <id>jboss</id>
       <url>http://repository.jboss.org/nexus/content/groups/public/</url>
     </repository>
+
+    <repository>
+      <name>jcrontab</name>
+      <id>jcrontab</id>
+      <url>http://kenai.com/projects/crontab-parser/sources/maven-repo/content/</url>
+    </repository>
+
+    <repository>
+      <name>Typesafe</name>
+      <id>typesafe</id>
+      <url>http://repo.typesafe.com/typesafe/releases/</url>
+    </repository>
   </repositories>
 
   <pluginRepositories>
     <dependency>
       <groupId>junit</groupId>
       <artifactId>junit</artifactId>
-      <version>4.7</version>
+      <version>4.10</version>
       <scope>test</scope>
     </dependency>
     <dependency>
-      <groupId>com.h2database</groupId>
-      <artifactId>h2</artifactId>
-      <version>1.3.160</version>
+      <groupId>org.slf4j</groupId>
+      <artifactId>slf4j-log4j12</artifactId>
+      <version>1.6.3</version>
+    </dependency>
+    <dependency>
+      <groupId>net.liftweb</groupId>
+      <artifactId>lift-json_2.9.1</artifactId>
+      <version>2.4-M5</version>
+    </dependency>
+
+    <dependency>
+      <groupId>net.liftweb</groupId>
+      <artifactId>lift-json-ext_2.9.1</artifactId>
+      <version>2.4-M5</version>
     </dependency>
+
     <dependency>
-      <groupId>mysql</groupId>
-      <artifactId>mysql-connector-java</artifactId>
-      <version>5.1.17</version>
+      <groupId>org.yaml</groupId>
+      <artifactId>snakeyaml</artifactId>
+      <version>1.9</version>
     </dependency>
+
     <dependency>
-      <groupId>org.scala-libs</groupId>
-      <artifactId>scalajpa_2.9.1</artifactId>
-      <version>1.4</version>
+      <groupId>com.kenai.crontab-parser</groupId>
+      <artifactId>crontab-parser</artifactId>
+      <version>1.0.1</version>
     </dependency>
+
+    <dependency>
+      <groupId>com.rabbitmq</groupId>
+      <artifactId>amqp-client</artifactId>
+      <version>2.5.0</version>
+    </dependency>
+
     <dependency>
-      <groupId>org.eclipse.persistence</groupId>
-      <artifactId>eclipselink</artifactId>
-      <version>2.2.0</version>
+      <groupId>com.ckkloverdos</groupId>
+      <artifactId>streamresource_2.9.1</artifactId>
+      <version>0.2.0</version>
     </dependency>
-    <!--<dependency>
-      <groupId>org.hibernate</groupId>
-      <artifactId>hibernate-entitymanager</artifactId>
-      <version>3.6.7.Final</version>
+
+    <dependency>
+      <groupId>com.thoughtworks.xstream</groupId>
+      <artifactId>xstream</artifactId>
+      <version>1.4.1</version>
+    </dependency>
+
+    <dependency>
+      <groupId>org.mongodb</groupId>
+      <artifactId>mongo-java-driver</artifactId>
+      <version>2.7.2</version>
+    </dependency>
+
+    <dependency>
+      <groupId>se.scalablesolutions.akka</groupId>
+      <artifactId>akka-actor</artifactId>
+      <version>1.3-RC5</version>
+    </dependency>
+
+    <dependency>
+      <groupId>se.scalablesolutions.akka</groupId>
+      <artifactId>akka-remote</artifactId>
+      <version>1.3-RC5</version>
+    </dependency>
+
+    <dependency>
+      <groupId>se.scalablesolutions.akka</groupId>
+      <artifactId>akka-amqp</artifactId>
+      <version>1.3-RC5</version>
+    </dependency>
+
+    <dependency>
+      <groupId>se.scalablesolutions.akka</groupId>
+      <artifactId>akka-slf4j</artifactId>
+      <version>1.3-RC5</version>
+    </dependency>
+<!--
+    <dependency>
+      <groupId>se.scalablesolutions.akka</groupId>
+      <artifactId>akka-testkit</artifactId>
+      <version>1.3-RC5</version>
+      <scope>test</scope>
     </dependency>-->
-    <!--<dependency>
-      <groupId>org.apache.openjpa</groupId>
-      <artifactId>openjpa-all</artifactId>
-      <version>2.1.1</version>
+
+    <dependency>
+      <groupId>javax.ws.rs</groupId>
+      <artifactId>jsr311-api</artifactId>
+      <version>1.1.1</version>
+    </dependency>
+
+    <dependency>
+      <groupId>cc.spray.can</groupId>
+      <artifactId>spray-can</artifactId>
+      <version>0.9.2-SNAPSHOT</version>
+    </dependency>
+
+    <!--    <dependency>
+      <groupId>com.yammer.metrics</groupId>
+      <artifactId>metrics-core</artifactId>
+      <version>2.0.0-BETA18-SNAPSHOT</version>
     </dependency>-->
+<!--
     <dependency>
-      <groupId>org.slf4j</groupId>
-      <artifactId>slf4j-simple</artifactId>
-      <version>1.6.1</version>
+      <groupId>org.apache.lucene</groupId>
+      <artifactId>lucene-core</artifactId>
+      <version>3.5.0</version>
+    </dependency>-->
+
+    <dependency>
+      <groupId>org.apache.solr</groupId>
+      <artifactId>solr-core</artifactId>
+      <version>3.5.0</version>
+      <exclusions>
+
+        <exclusion>
+          <groupId>org.apache.lucene</groupId>
+          <artifactId>lucene-analyzers</artifactId>
+        </exclusion>
+
+        <exclusion>
+          <groupId>org.apache.lucene</groupId>
+          <artifactId>lucene-highlighter</artifactId>
+        </exclusion>
+
+        <exclusion>
+          <groupId>org.apache.lucene</groupId>
+          <artifactId>lucene-memory</artifactId>
+        </exclusion>
+
+        <exclusion>
+          <groupId>org.apache.lucene</groupId>
+          <artifactId>lucene-misc</artifactId>
+        </exclusion>
+
+        <exclusion>
+          <groupId>org.apache.lucene</groupId>
+          <artifactId>lucene-queries</artifactId>
+        </exclusion>
+
+        <exclusion>
+          <groupId>org.apache.lucene</groupId>
+          <artifactId>lucene-spatial</artifactId>
+        </exclusion>
+
+        <exclusion>
+          <groupId>org.apache.lucene</groupId>
+          <artifactId>lucene-spellchecker</artifactId>
+        </exclusion>
+
+        <exclusion>
+          <groupId>org.apache.lucene</groupId>
+          <artifactId>lucene-grouping</artifactId>
+        </exclusion>
+
+        <exclusion>
+          <groupId>org.apache.solr</groupId>
+          <artifactId>solr-commons-csv</artifactId>
+        </exclusion>
+
+        <exclusion>
+          <groupId>org.apache.solr</groupId>
+          <artifactId>solr-noggit</artifactId>
+        </exclusion>
+
+        <exclusion>
+          <groupId>org.apache.solr</groupId>
+          <artifactId>solr-solrj</artifactId>
+        </exclusion>
+
+        <exclusion>
+          <groupId>commons-fileupload</groupId>
+          <artifactId>commons-fileupload</artifactId>
+        </exclusion>
+
+        <exclusion>
+          <groupId>commons-httpclient</groupId>
+          <artifactId>commons-httpclient</artifactId>
+        </exclusion>
+
+        <exclusion>
+          <groupId>org.slf4j</groupId>
+          <artifactId>jcl-over-slf4j</artifactId>
+        </exclusion>
+
+        <exclusion>
+          <groupId>javax.servlet</groupId>
+          <artifactId>servlet-api</artifactId>
+        </exclusion>
+      </exclusions>
+    </dependency>
+
+    <dependency>
+      <groupId>com.github.scopt</groupId>
+      <artifactId>scopt_${scala.version}</artifactId>
+      <version>1.1.2</version>
     </dependency>
   </dependencies>
 
-  <!--Configuration shared with subprojects-->
+  <!--Build configuration-->
   <build>
     <sourceDirectory>src/main/scala</sourceDirectory>
     <testSourceDirectory>src/test/scala</testSourceDirectory>
           </execution>
         </executions>
       </plugin>
-      <plugin>
-        <groupId>org.apache.maven.plugins</groupId>
-        <artifactId>maven-resources-plugin</artifactId>
-        <version>2.5</version>
-        <executions>
-          <execution>
-            <id>default-copy-resources</id>
-            <phase>process-resources</phase>
-            <goals>
-              <goal>copy-resources</goal>
-            </goals>
-            <configuration>
-              <overwrite>true</overwrite>
-              <outputDirectory>${project.build.directory}</outputDirectory>
-              <resources>
-                <resource>
-                  <directory>${project.basedir}/src</directory>
-                  <includes>
-                    <include>packageLinkDefs.properties</include>
-                  </includes>
-                  <filtering>true</filtering>
-                </resource>
-              </resources>
-            </configuration>
-          </execution>
-        </executions>
-      </plugin>
-      <plugin>
-        <groupId>org.apache.maven.plugins</groupId>
-        <artifactId>maven-release-plugin</artifactId>
-        <version>2.2.1</version>
-        <configuration>
-          <scmCommentPrefix/>
-        </configuration>
-      </plugin>
       <!-- Redmine maven plugin -->
       <plugin>
         <groupId>org.nuiton.jredmine</groupId>
           <reportFormat>plain</reportFormat>
         </configuration>
       </plugin>
-      <!-- Shared resources -->
+      <!-- Bundle up source code on release/snapshot -->
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-source-plugin</artifactId>
+        <version>2.1.2</version>
+        <executions>
+          <execution>
+            <id>attach-sources</id>
+            <goals>
+              <goal>jar-no-fork</goal>
+            </goals>
+          </execution>
+        </executions>
+      </plugin>
+      <!-- Release plug-in configuration -->
       <plugin>
         <groupId>org.apache.maven.plugins</groupId>
-        <artifactId>maven-dependency-plugin</artifactId>
+        <artifactId>maven-release-plugin</artifactId>
+        <version>2.2.1</version>
+        <configuration>
+          <preparationGoals>clean verify</preparationGoals>
+        </configuration>
+      </plugin>
+      <!--Build an executable jar with all dependencies-->
+      <plugin>
+        <artifactId>maven-assembly-plugin</artifactId>
+        <version>2.2.2</version>
+        <configuration>
+          <archive>
+            <manifest>
+              <mainClass>gr.grnet.aquarium.Main</mainClass>
+            </manifest>
+          </archive>
+          <descriptorRefs>
+            <descriptorRef>jar-with-dependencies</descriptorRef>
+          </descriptorRefs>
+        </configuration>
         <executions>
           <execution>
-            <id>unpack-shared-resources</id>
+            <id>make-assembly</id>
+            <phase>package</phase>
             <goals>
-              <goal>unpack-dependencies</goal>
+              <goal>single</goal>
             </goals>
-            <phase>generate-resources</phase>
-            <configuration>
-              <outputDirectory>${project.build.directory}/generated-resources
-              </outputDirectory>
-              <includeArtifactIds>shared</includeArtifactIds>
-              <includeGroupIds>gr.grnet.aquarium</includeGroupIds>
-              <excludeTransitive>true</excludeTransitive>
-            </configuration>
           </execution>
         </executions>
       </plugin>
+
     </plugins>
   </build>
-  <!--Sub projects-->
-  <modules>
-    <module>model</module>
-    <module>logic</module>
-    <module>shared</module>
-  </modules>
 </project>