diff --git a/querydsl-apt/pom.xml b/querydsl-apt/pom.xml index 62c789060..67b356a99 100644 --- a/querydsl-apt/pom.xml +++ b/querydsl-apt/pom.xml @@ -99,6 +99,13 @@ ${project.version} test test-jar + + + + org.joda + joda-money + 0.9 + test diff --git a/querydsl-apt/src/test/java/com/mysema/query/domain/JodaMoneyHelpers.java b/querydsl-apt/src/test/java/com/mysema/query/domain/JodaMoneyHelpers.java new file mode 100644 index 000000000..592c07c42 --- /dev/null +++ b/querydsl-apt/src/test/java/com/mysema/query/domain/JodaMoneyHelpers.java @@ -0,0 +1,20 @@ +package com.mysema.query.domain; + +import java.math.BigDecimal; + +import org.joda.money.Money; +import org.joda.money.QMoney; + +import com.mysema.query.annotations.QueryDelegate; +import com.mysema.query.types.Ops; +import com.mysema.query.types.expr.NumberExpression; +import com.mysema.query.types.expr.NumberOperation; + +public class JodaMoneyHelpers { + + @QueryDelegate(Money.class) + public static NumberExpression sum(QMoney money) { + return NumberOperation.create(BigDecimal.class, Ops.AggOps.SUM_AGG, money); + } + +} diff --git a/querydsl-apt/src/test/java/com/mysema/query/domain/JodaMoneyTest.java b/querydsl-apt/src/test/java/com/mysema/query/domain/JodaMoneyTest.java new file mode 100644 index 000000000..9b7a15d6a --- /dev/null +++ b/querydsl-apt/src/test/java/com/mysema/query/domain/JodaMoneyTest.java @@ -0,0 +1,19 @@ +package com.mysema.query.domain; + +import static org.junit.Assert.assertNotNull; + +import java.math.BigDecimal; + +import org.joda.money.QMoney; +import org.junit.Test; + +import com.mysema.query.types.expr.NumberExpression; + +public class JodaMoneyTest { + + @Test + public void test() { + NumberExpression sum = QMoney.money.sum(); + assertNotNull(sum); + } +}