Use DefaultEncoderFactory
[aquarium] / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3   ~ Copyright 2011 GRNET S.A. All rights reserved.
4   ~
5   ~ Redistribution and use in source and binary forms, with or
6   ~ without modification, are permitted provided that the following
7   ~ conditions are met:
8   ~
9   ~   1. Redistributions of source code must retain the above
10   ~      copyright notice, this list of conditions and the following
11   ~      disclaimer.
12   ~
13   ~   2. Redistributions in binary form must reproduce the above
14   ~      copyright notice, this list of conditions and the following
15   ~      disclaimer in the documentation and/or other materials
16   ~      provided with the distribution.
17   ~
18   ~ THIS SOFTWARE IS PROVIDED BY GRNET S.A. ``AS IS'' AND ANY EXPRESS
19   ~ OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
20   ~ WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
21   ~ PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL GRNET S.A OR
22   ~ CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
23   ~ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
24   ~ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
25   ~ USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
26   ~ AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
27   ~ LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
28   ~ ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
29   ~ POSSIBILITY OF SUCH DAMAGE.
30   ~
31   ~ The views and conclusions contained in the software and
32   ~ documentation are those of the authors and should not be
33   ~ interpreted as representing official policies, either expressed
34   ~ or implied, of GRNET S.A.
35   -->
36
37 <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">
38
39
40   <modelVersion>4.0.0</modelVersion>
41   <groupId>gr.grnet</groupId>
42   <artifactId>aquarium</artifactId>
43   <version>0.2.0-SNAPSHOT</version>
44
45   <!-- Project details-->
46   <name>Aquarium</name>
47   <description>
48     Charging services for the Okeanos cloud
49   </description>
50   <url>http://code.grnet.gr/projects/aquarium</url>
51   <inceptionYear>2011</inceptionYear>
52   <organization>
53     <name>GRNet</name>
54     <url>http://www.grnet.gr/</url>
55   </organization>
56
57   <developers>
58     <developer>
59       <id>gousiosg</id>
60       <name>Georgios Gousios</name>
61       <email>gousiosg@grnet.gr</email>
62     </developer>
63     <developer>
64       <id>loverdos</id>
65       <name>Christos KK Loverdos</name>
66       <email>loverdos@grnet.gr</email>
67     </developer>
68     <developer>
69       <id>pgerakios</id>
70       <name>Prodromos Gerakios</name>
71       <email>pgerakios@grnet.gr</email>
72     </developer>
73   </developers>
74
75   <scm>
76     <url>http://code.grnet.gr/projects/aquarium/repository</url>
77     <connection>scm:git:https://code.grnet.gr/git/aquarium</connection>
78     <developerConnection>scm:git:https://code.grnet.gr/git/aquarium</developerConnection>
79   </scm>
80
81   <issueManagement>
82     <system>redmine</system>
83     <url>http://code.grnet.gr/projects/aquarium/issues</url>
84   </issueManagement>
85
86   <distributionManagement>
87     <repository>
88       <id>aq-release</id>
89       <name>Aquarium releases repo</name>
90       <url>http://aquarium.dev.grnet.gr:8081/nexus/content/repositories/releases</url>
91     </repository>
92     <snapshotRepository>
93       <id>aq-snapshot</id>
94       <name>Aquarium snapshots repo</name>
95       <url>http://aquarium.dev.grnet.gr:8081/nexus/content/repositories/snapshots</url>
96     </snapshotRepository>
97   </distributionManagement>
98
99   <!--Common project settings-->
100   <properties>
101     <scala.version>2.9.1</scala.version>
102     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
103     <project.reporting.outputEncoding>${project.build.sourceEncoding}</project.reporting.outputEncoding>
104   </properties>
105
106   <!-- Lib and plugin repositories -->
107   <repositories>
108
109     <repository>
110       <id>java.net.maven2</id>
111       <name>java.net Maven2 Repository</name>
112       <url>http://download.java.net/maven/2/</url>
113     </repository>
114     
115     <repository>
116       <name>JBoss</name>
117       <id>jboss</id>
118       <url>http://repository.jboss.org/nexus/content/groups/public/</url>
119     </repository>
120
121     <repository>
122       <name>JBoss Scala-Tools</name>
123       <id>jboss-scala-tools</id>
124       <url>https://repository.jboss.org/nexus/content/repositories/scala-tools-releases</url>
125     </repository>
126
127     <repository>
128       <name>jcrontab</name>
129       <id>jcrontab</id>
130       <url>http://kenai.com/projects/crontab-parser/sources/maven-repo/content/</url>
131     </repository>
132
133     <repository>
134       <name>Typesafe</name>
135       <id>typesafe</id>
136       <url>http://repo.typesafe.com/typesafe/releases/</url>
137     </repository>
138
139     <repository>
140       <name>Twitter</name>
141       <id>twitter</id>
142       <url>http://maven.twttr.com/</url>
143     </repository>
144   </repositories>
145
146   <!-- Master properties (inherited by modules) -->
147   <dependencies>
148     <dependency>
149       <groupId>org.scala-lang</groupId>
150       <artifactId>scala-library</artifactId>
151       <version>${scala.version}</version>
152     </dependency>
153
154     <dependency>
155       <groupId>org.slf4j</groupId>
156       <artifactId>slf4j-api</artifactId>
157       <version>1.6.1</version>
158     </dependency>
159
160     <dependency>
161       <groupId>ch.qos.logback</groupId>
162       <artifactId>logback-classic</artifactId>
163       <version>0.9.29</version>
164     </dependency>
165
166     <dependency>
167       <groupId>org.scala-lang</groupId>
168       <artifactId>scala-compiler</artifactId>
169       <version>${scala.version}</version>
170     </dependency>
171
172     <dependency>
173       <groupId>junit</groupId>
174       <artifactId>junit</artifactId>
175       <version>4.10</version>
176       <scope>test</scope>
177     </dependency>
178
179     <dependency>
180       <groupId>net.liftweb</groupId>
181       <artifactId>lift-json_2.9.1</artifactId>
182       <version>2.4</version>
183     </dependency>
184
185     <dependency>
186       <groupId>net.liftweb</groupId>
187       <artifactId>lift-json-ext_2.9.1</artifactId>
188       <version>2.4</version>
189       <exclusions>
190         <exclusion>
191           <artifactId>joda-time</artifactId>
192           <groupId>joda-time</groupId>
193         </exclusion>
194       </exclusions>
195     </dependency>
196
197     <dependency>
198       <groupId>org.yaml</groupId>
199       <artifactId>snakeyaml</artifactId>
200       <version>1.9</version>
201     </dependency>
202
203     <dependency>
204       <groupId>com.kenai.crontab-parser</groupId>
205       <artifactId>crontab-parser</artifactId>
206       <version>1.0.1</version>
207     </dependency>
208
209     <dependency>
210       <groupId>com.rabbitmq</groupId>
211       <artifactId>amqp-client</artifactId>
212       <version>2.8.4</version>
213     </dependency>
214
215     <dependency>
216       <groupId>com.ckkloverdos</groupId>
217       <artifactId>jbootstrap</artifactId>
218       <version>3.0.0</version>
219     </dependency>
220
221     <dependency>
222       <groupId>com.ckkloverdos</groupId>
223       <artifactId>streamresource</artifactId>
224       <version>0.5.1</version>
225     </dependency>
226
227     <dependency>
228       <groupId>com.ckkloverdos</groupId>
229       <artifactId>maybe</artifactId>
230       <version>0.5.0</version>
231     </dependency>
232
233     <dependency>
234       <groupId>com.ckkloverdos</groupId>
235       <artifactId>converter</artifactId>
236       <version>0.5.0</version>
237       <exclusions>
238         <exclusion>
239           <artifactId>scala-library</artifactId>
240           <groupId>org.scala-lang</groupId>
241         </exclusion>
242         <exclusion>
243           <artifactId>logback-classic</artifactId>
244           <groupId>ch.qos.logback</groupId>
245         </exclusion>
246       </exclusions>
247     </dependency>
248
249     <dependency>
250       <groupId>com.ckkloverdos</groupId>
251       <artifactId>sysprop</artifactId>
252       <version>0.5.1</version>
253       <exclusions>
254         <exclusion>
255           <artifactId>scala-library</artifactId>
256           <groupId>org.scala-lang</groupId>
257         </exclusion>
258       </exclusions>
259     </dependency>
260
261     <dependency>
262       <groupId>com.ckkloverdos</groupId>
263       <artifactId>typedkey</artifactId>
264       <version>0.5.0</version>
265       <exclusions>
266         <exclusion>
267           <artifactId>scala-library</artifactId>
268           <groupId>org.scala-lang</groupId>
269         </exclusion>
270       </exclusions>
271     </dependency>
272
273     <dependency>
274       <groupId>com.thoughtworks.xstream</groupId>
275       <artifactId>xstream</artifactId>
276       <version>1.4.1</version>
277     </dependency>
278
279     <dependency>
280       <groupId>org.mongodb</groupId>
281       <artifactId>mongo-java-driver</artifactId>
282       <version>2.7.2</version>
283     </dependency>
284
285     <dependency>
286       <groupId>com.typesafe.akka</groupId>
287       <artifactId>akka-actor</artifactId>
288       <version>2.0.2</version>
289     </dependency>
290
291     <dependency>
292       <groupId>com.typesafe.akka</groupId>
293       <artifactId>akka-remote</artifactId>
294       <version>2.0.2</version>
295     </dependency>
296
297     <dependency>
298       <groupId>com.typesafe.akka</groupId>
299       <artifactId>akka-slf4j</artifactId>
300       <version>2.0.2</version>
301     </dependency>
302
303     <dependency>
304       <groupId>com.twitter</groupId>
305       <artifactId>finagle-core_2.9.1</artifactId>
306       <version>4.0.2</version>
307     </dependency>
308
309     <dependency>
310       <groupId>com.twitter</groupId>
311       <artifactId>finagle-http_2.9.1</artifactId>
312       <version>4.0.2</version>
313     </dependency>
314
315     <dependency>
316       <groupId>com.google.guava</groupId>
317       <artifactId>guava</artifactId>
318       <version>12.0</version>
319     </dependency>
320
321     <dependency>
322       <groupId>joda-time</groupId>
323       <artifactId>joda-time</artifactId>
324       <version>2.0</version>
325     </dependency>
326
327     <dependency>
328       <groupId>org.joda</groupId>
329       <artifactId>joda-convert</artifactId>
330       <version>1.1</version>
331     </dependency>
332
333     <dependency> <!-- quartz stuff  -->
334       <groupId>org.quartz-scheduler</groupId>
335       <artifactId>quartz</artifactId>
336       <version>2.1.5</version>
337     </dependency>
338     <dependency>
339       <groupId>org.quartz-scheduler</groupId>
340       <artifactId>quartz-oracle</artifactId>
341       <version>2.1.5</version>
342     </dependency>
343     <dependency>
344       <groupId>org.quartz-scheduler</groupId>
345       <artifactId>quartz-weblogic</artifactId>
346       <version>2.1.5</version>
347     </dependency>
348     <dependency>
349       <groupId>org.quartz-scheduler</groupId>
350       <artifactId>quartz-jboss</artifactId>
351       <version>2.1.5</version>
352     </dependency>
353
354     <dependency>
355       <groupId>org.apache.avro</groupId>
356       <artifactId>avro</artifactId>
357       <version>1.7.2</version>
358     </dependency>
359
360     <dependency>
361       <groupId>org.apache.avro</groupId>
362       <artifactId>avro-ipc</artifactId>
363       <version>1.7.2</version>
364     </dependency>
365   </dependencies>
366
367   <!--Build configuration-->
368   <build>
369     <sourceDirectory>src/main/scala</sourceDirectory>
370     <testSourceDirectory>src/test/scala</testSourceDirectory>
371     <resources>
372       <resource>
373         <directory>${basedir}/src/main/resources</directory>
374         <excludes>
375           <exclude>aquarium.properties</exclude>
376         </excludes>
377       </resource>
378       <resource>
379         <directory>${project.build.directory}/generated-resources</directory>
380         <filtering>true</filtering>
381       </resource>
382     </resources>
383     <testResources>
384       <testResource>
385         <directory>${basedir}/src/test/resources</directory>
386       </testResource>
387       <testResource>
388         <directory>${project.build.directory}/generated-resources</directory>
389         <filtering>true</filtering>
390       </testResource>
391     </testResources>
392     <plugins>
393       <plugin>
394         <groupId>org.apache.maven.plugins</groupId>
395         <artifactId>maven-compiler-plugin</artifactId>
396         <version>2.5.1</version>
397         <configuration>
398           <source>1.6</source>
399           <target>1.6</target>
400           <encoding>${project.build.sourceEncoding}</encoding>
401         </configuration>
402       </plugin>
403
404       <plugin>
405         <groupId>net.alchim31.maven</groupId>
406         <artifactId>scala-maven-plugin</artifactId>
407         <version>3.1.0</version>
408         <configuration>
409           <recompileMode>incremental</recompileMode>
410           <javacArgs>
411             <!--<javacArg>-Xlint:unchecked</javacArg>-->
412             <javacArg>-Xlint:deprecation</javacArg>
413           </javacArgs>
414
415           <charset>${project.build.sourceEncoding}</charset>
416
417           <jvmArgs>
418             <jvmArg>-Xmx1024m</jvmArg>
419             <jvmArg>
420               -DpackageLinkDefs=file://${project.build.directory}/packageLinkDefs.properties
421             </jvmArg>
422           </jvmArgs>
423
424           <args>
425             <arg>-deprecation</arg>
426             <arg>-unchecked</arg>
427             <arg>-explaintypes</arg>
428           </args>
429         </configuration>
430         <executions>
431           <execution>
432             <goals>
433               <goal>compile</goal>
434               <goal>testCompile</goal>
435             </goals>
436           </execution>
437         </executions>
438       </plugin>
439
440       <!-- Make sure tests display failures at the console-->
441       <plugin>
442         <groupId>org.apache.maven.plugins</groupId>
443         <artifactId>maven-surefire-plugin</artifactId>
444         <version>2.12.3</version>
445         <configuration>
446           <useFile>false</useFile>
447           <reportFormat>plain</reportFormat>
448         </configuration>
449       </plugin>
450
451       <!-- Bundle up source code on release/snapshot -->
452       <plugin>
453         <groupId>org.apache.maven.plugins</groupId>
454         <artifactId>maven-source-plugin</artifactId>
455         <version>2.2</version>
456         <executions>
457           <execution>
458             <id>attach-sources</id>
459             <goals>
460               <goal>jar-no-fork</goal>
461             </goals>
462           </execution>
463         </executions>
464       </plugin>
465
466       <!-- Release plug-in configuration -->
467       <plugin>
468         <groupId>org.apache.maven.plugins</groupId>
469         <artifactId>maven-release-plugin</artifactId>
470         <version>2.2.1</version>
471         <configuration>
472           <preparationGoals>clean verify</preparationGoals>
473         </configuration>
474       </plugin>
475
476       <plugin>
477         <groupId>org.apache.avro</groupId>
478         <artifactId>avro-maven-plugin</artifactId>
479         <version>1.7.2</version>
480         <executions>
481           <execution>
482             <id>schemas</id>
483             <phase>generate-sources</phase>
484             <goals>
485               <goal>schema</goal>
486               <goal>protocol</goal>
487               <goal>idl-protocol</goal>
488             </goals>
489             <configuration>
490               <excludes>
491                 <exclude>**/mapred/tether/**</exclude>
492               </excludes>
493               <stringType>String</stringType>
494               <sourceDirectory>${project.basedir}/src/main/avro/</sourceDirectory>
495               <outputDirectory>${project.basedir}/src/main/java/</outputDirectory>
496               <!--<outputDirectory>${project.build.directory}/generated-sources/java</outputDirectory>-->
497               <testSourceDirectory>${project.basedir}/src/test/avro/</testSourceDirectory>
498               <testOutputDirectory>${project.basedir}/src/test/java/</testOutputDirectory>
499             </configuration>
500           </execution>
501         </executions>
502       </plugin>
503     </plugins>
504   </build>
505 </project>