diff --git a/querydsl-collections/src/main/java/com/mysema/query/collections/eval/JaninoEvaluator.java b/querydsl-collections/src/main/java/com/mysema/query/collections/eval/JaninoEvaluator.java
index d4a54f0bc..6a87ff1ee 100644
--- a/querydsl-collections/src/main/java/com/mysema/query/collections/eval/JaninoEvaluator.java
+++ b/querydsl-collections/src/main/java/com/mysema/query/collections/eval/JaninoEvaluator.java
@@ -10,9 +10,9 @@ import java.util.List;
import org.codehaus.janino.ExpressionEvaluator;
+import com.mysema.commons.lang.Assert;
import com.mysema.query.grammar.JavaOps;
import com.mysema.query.grammar.types.Expr;
-import com.mysema.util.Assert;
/**
* JaninoEvaluator is a Janino compiler based Evaluator implementation
diff --git a/querydsl-collections/src/main/java/com/mysema/query/collections/eval/JavaSerializer.java b/querydsl-collections/src/main/java/com/mysema/query/collections/eval/JavaSerializer.java
index 251249322..d23ce4343 100644
--- a/querydsl-collections/src/main/java/com/mysema/query/collections/eval/JavaSerializer.java
+++ b/querydsl-collections/src/main/java/com/mysema/query/collections/eval/JavaSerializer.java
@@ -21,6 +21,7 @@ import org.codehaus.janino.Scanner.ScanException;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import com.mysema.commons.lang.Assert;
import com.mysema.query.grammar.JavaOps;
import com.mysema.query.grammar.Ops;
import com.mysema.query.grammar.Ops.Op;
@@ -29,7 +30,6 @@ import com.mysema.query.grammar.types.Path;
import com.mysema.query.grammar.types.Expr.EConstant;
import com.mysema.query.grammar.types.PathMetadata.PathType;
import com.mysema.query.serialization.BaseSerializer;
-import com.mysema.util.Assert;
/**
diff --git a/querydsl-collections/src/main/java/com/mysema/query/collections/iterators/FilteringMultiIterator.java b/querydsl-collections/src/main/java/com/mysema/query/collections/iterators/FilteringMultiIterator.java
index 337d943f9..ce44696c5 100644
--- a/querydsl-collections/src/main/java/com/mysema/query/collections/iterators/FilteringMultiIterator.java
+++ b/querydsl-collections/src/main/java/com/mysema/query/collections/iterators/FilteringMultiIterator.java
@@ -18,6 +18,7 @@ import org.codehaus.janino.Scanner.ScanException;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import com.mysema.commons.lang.Assert;
import com.mysema.query.collections.IteratorSource;
import com.mysema.query.collections.eval.Evaluator;
import com.mysema.query.collections.eval.FilteredJavaSerializer;
@@ -27,7 +28,6 @@ import com.mysema.query.collections.utils.QueryIteratorUtils;
import com.mysema.query.grammar.JavaOps;
import com.mysema.query.grammar.types.Expr;
import com.mysema.query.grammar.types.Expr.EBoolean;
-import com.mysema.util.Assert;
/**
* FilteringMultiIterator extends the MultiIterator to provide a filtered view
diff --git a/querydsl-collections/src/main/java/com/mysema/query/collections/support/CustomQueryable.java b/querydsl-collections/src/main/java/com/mysema/query/collections/support/CustomQueryable.java
index 945f8342c..1806d6bb8 100644
--- a/querydsl-collections/src/main/java/com/mysema/query/collections/support/CustomQueryable.java
+++ b/querydsl-collections/src/main/java/com/mysema/query/collections/support/CustomQueryable.java
@@ -8,6 +8,7 @@ package com.mysema.query.collections.support;
import java.util.List;
import java.util.Map;
+import com.mysema.commons.lang.Assert;
import com.mysema.query.DefaultQueryMetadata;
import com.mysema.query.ProjectableAdapter;
import com.mysema.query.QueryMetadata;
@@ -17,7 +18,6 @@ import com.mysema.query.collections.QueryIndexSupport;
import com.mysema.query.grammar.JavaOps;
import com.mysema.query.grammar.OrderSpecifier;
import com.mysema.query.grammar.types.Expr;
-import com.mysema.util.Assert;
/**
* CustomQueryable a ColQuery like interface for querying on custom IteratorSource sources
diff --git a/querydsl-collections/src/main/java/com/mysema/query/collections/support/DefaultIndexCreationTask.java b/querydsl-collections/src/main/java/com/mysema/query/collections/support/DefaultIndexCreationTask.java
index ab7f41089..0fdb5179f 100644
--- a/querydsl-collections/src/main/java/com/mysema/query/collections/support/DefaultIndexCreationTask.java
+++ b/querydsl-collections/src/main/java/com/mysema/query/collections/support/DefaultIndexCreationTask.java
@@ -7,6 +7,7 @@ package com.mysema.query.collections.support;
import java.util.List;
+import com.mysema.commons.lang.Assert;
import com.mysema.query.collections.eval.Evaluator;
import com.mysema.query.collections.support.DefaultIndexSupport.IndexedPath;
import com.mysema.query.collections.utils.EvaluatorUtils;
@@ -17,7 +18,6 @@ import com.mysema.query.grammar.types.Operation;
import com.mysema.query.grammar.types.Path;
import com.mysema.query.grammar.types.Expr.EBoolean;
import com.mysema.query.grammar.types.Expr.EConstant;
-import com.mysema.util.Assert;
/**
* IndexCreationTask provides
diff --git a/querydsl-collections/src/main/java/com/mysema/query/collections/support/SimpleIndexSupport.java b/querydsl-collections/src/main/java/com/mysema/query/collections/support/SimpleIndexSupport.java
index 45627ef26..70ab3959d 100644
--- a/querydsl-collections/src/main/java/com/mysema/query/collections/support/SimpleIndexSupport.java
+++ b/querydsl-collections/src/main/java/com/mysema/query/collections/support/SimpleIndexSupport.java
@@ -8,12 +8,12 @@ package com.mysema.query.collections.support;
import java.util.Iterator;
import java.util.List;
+import com.mysema.commons.lang.Assert;
import com.mysema.query.collections.IteratorSource;
import com.mysema.query.collections.QueryIndexSupport;
import com.mysema.query.grammar.JavaOps;
import com.mysema.query.grammar.types.Expr;
import com.mysema.query.grammar.types.Expr.EBoolean;
-import com.mysema.util.Assert;
/**
* SimpleIndexSupport is a minimal QueryIndexSupport implementation
diff --git a/querydsl-collections/src/main/java/com/mysema/query/collections/support/SimpleIteratorSource.java b/querydsl-collections/src/main/java/com/mysema/query/collections/support/SimpleIteratorSource.java
index 3d290657a..89754409e 100644
--- a/querydsl-collections/src/main/java/com/mysema/query/collections/support/SimpleIteratorSource.java
+++ b/querydsl-collections/src/main/java/com/mysema/query/collections/support/SimpleIteratorSource.java
@@ -9,10 +9,10 @@ import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
+import com.mysema.commons.lang.Assert;
import com.mysema.query.collections.IteratorSource;
import com.mysema.query.collections.QueryIndexSupport;
import com.mysema.query.grammar.types.Expr;
-import com.mysema.util.Assert;
/**
* SimpleIteratorSource is the default implementation of the IndexSupport interface
diff --git a/querydsl-collections/src/main/java/com/mysema/query/collections/utils/EvaluatorUtils.java b/querydsl-collections/src/main/java/com/mysema/query/collections/utils/EvaluatorUtils.java
index fed05d17d..8c569e949 100644
--- a/querydsl-collections/src/main/java/com/mysema/query/collections/utils/EvaluatorUtils.java
+++ b/querydsl-collections/src/main/java/com/mysema/query/collections/utils/EvaluatorUtils.java
@@ -7,11 +7,11 @@ package com.mysema.query.collections.utils;
import java.util.List;
+import com.mysema.commons.lang.Assert;
import com.mysema.query.collections.eval.Evaluator;
import com.mysema.query.collections.eval.JaninoEvaluator;
import com.mysema.query.grammar.JavaOps;
import com.mysema.query.grammar.types.Expr;
-import com.mysema.util.Assert;
/**
* EvaluatorUtils provides factory methods for Evaluator creation
diff --git a/querydsl-core/pom.xml b/querydsl-core/pom.xml
index 35bb1f20f..e23e1518f 100644
--- a/querydsl-core/pom.xml
+++ b/querydsl-core/pom.xml
@@ -28,6 +28,11 @@
commons-lang
2.4
+
+ com.mysema.commons
+ mysema-commons-lang
+ 0.1.1
+
diff --git a/querydsl-core/src/main/java/com/mysema/query/JoinExpression.java b/querydsl-core/src/main/java/com/mysema/query/JoinExpression.java
index 0dd8f1cab..490ecb1b2 100644
--- a/querydsl-core/src/main/java/com/mysema/query/JoinExpression.java
+++ b/querydsl-core/src/main/java/com/mysema/query/JoinExpression.java
@@ -7,8 +7,8 @@ package com.mysema.query;
import org.apache.commons.lang.builder.EqualsBuilder;
+import com.mysema.commons.lang.Assert;
import com.mysema.query.grammar.types.Expr;
-import com.mysema.util.Assert;
/**
* JoinExpression is a join element in a Query instance
diff --git a/querydsl-core/src/main/java/com/mysema/query/ProjectableAdapter.java b/querydsl-core/src/main/java/com/mysema/query/ProjectableAdapter.java
index 5c7470263..c3a957464 100644
--- a/querydsl-core/src/main/java/com/mysema/query/ProjectableAdapter.java
+++ b/querydsl-core/src/main/java/com/mysema/query/ProjectableAdapter.java
@@ -8,8 +8,8 @@ package com.mysema.query;
import java.util.Iterator;
import java.util.List;
+import com.mysema.commons.lang.Assert;
import com.mysema.query.grammar.types.Expr;
-import com.mysema.util.Assert;
/**
* ProjectableAdapter is an adapter implementation for the Projectable
diff --git a/querydsl-core/src/main/java/com/mysema/query/QueryAdapter.java b/querydsl-core/src/main/java/com/mysema/query/QueryAdapter.java
index 0f3b3a127..e3cc0bbcc 100644
--- a/querydsl-core/src/main/java/com/mysema/query/QueryAdapter.java
+++ b/querydsl-core/src/main/java/com/mysema/query/QueryAdapter.java
@@ -5,10 +5,10 @@
*/
package com.mysema.query;
+import com.mysema.commons.lang.Assert;
import com.mysema.query.grammar.OrderSpecifier;
import com.mysema.query.grammar.types.Expr;
import com.mysema.query.grammar.types.Expr.EBoolean;
-import com.mysema.util.Assert;
/**
* QueryAdapter is an adapter implementation for Query instace wrapping
diff --git a/querydsl-core/src/main/java/com/mysema/query/grammar/Grammar.java b/querydsl-core/src/main/java/com/mysema/query/grammar/Grammar.java
index 3e0d70059..f5d0f6093 100644
--- a/querydsl-core/src/main/java/com/mysema/query/grammar/Grammar.java
+++ b/querydsl-core/src/main/java/com/mysema/query/grammar/Grammar.java
@@ -7,8 +7,14 @@ package com.mysema.query.grammar;
import java.util.Collection;
+import com.mysema.commons.lang.Assert;
import com.mysema.query.grammar.Ops.OpNumberAgg;
-import com.mysema.query.grammar.types.*;
+import com.mysema.query.grammar.types.Alias;
+import com.mysema.query.grammar.types.CollectionType;
+import com.mysema.query.grammar.types.CountExpression;
+import com.mysema.query.grammar.types.Expr;
+import com.mysema.query.grammar.types.ExprFactory;
+import com.mysema.query.grammar.types.SimpleExprFactory;
import com.mysema.query.grammar.types.Expr.EBoolean;
import com.mysema.query.grammar.types.Expr.EComparable;
import com.mysema.query.grammar.types.Expr.ENumber;
@@ -17,7 +23,6 @@ import com.mysema.query.grammar.types.Expr.EString;
import com.mysema.query.grammar.types.Operation.OBoolean;
import com.mysema.query.grammar.types.Path.PEntity;
import com.mysema.query.grammar.types.Path.PEntityCollection;
-import com.mysema.util.Assert;
/**
* Grammar provides the factory methods for the fluent grammar.
diff --git a/querydsl-core/src/main/java/com/mysema/query/grammar/OrderSpecifier.java b/querydsl-core/src/main/java/com/mysema/query/grammar/OrderSpecifier.java
index 86dc1f25b..7603da83e 100644
--- a/querydsl-core/src/main/java/com/mysema/query/grammar/OrderSpecifier.java
+++ b/querydsl-core/src/main/java/com/mysema/query/grammar/OrderSpecifier.java
@@ -5,8 +5,8 @@
*/
package com.mysema.query.grammar;
+import com.mysema.commons.lang.Assert;
import com.mysema.query.grammar.types.Expr;
-import com.mysema.util.Assert;
/**
* OrderSpecifier represents an order by element in a Query instance
diff --git a/querydsl-core/src/main/java/com/mysema/query/grammar/types/SimpleExprFactory.java b/querydsl-core/src/main/java/com/mysema/query/grammar/types/SimpleExprFactory.java
index aaf280264..dd2692fba 100644
--- a/querydsl-core/src/main/java/com/mysema/query/grammar/types/SimpleExprFactory.java
+++ b/querydsl-core/src/main/java/com/mysema/query/grammar/types/SimpleExprFactory.java
@@ -8,6 +8,7 @@ package com.mysema.query.grammar.types;
import java.util.HashMap;
import java.util.Map;
+import com.mysema.commons.lang.Assert;
import com.mysema.query.grammar.Ops.Op;
import com.mysema.query.grammar.types.Expr.EBoolean;
import com.mysema.query.grammar.types.Expr.EComparable;
@@ -19,7 +20,6 @@ import com.mysema.query.grammar.types.Operation.OComparable;
import com.mysema.query.grammar.types.Operation.ONumber;
import com.mysema.query.grammar.types.Operation.OString;
import com.mysema.query.grammar.types.Operation.OStringArray;
-import com.mysema.util.Assert;
/**
* Factory provides factory methods for various needs
diff --git a/querydsl-core/src/main/java/com/mysema/query/serialization/OperationPattern.java b/querydsl-core/src/main/java/com/mysema/query/serialization/OperationPattern.java
index 716fa8092..64a3a275c 100644
--- a/querydsl-core/src/main/java/com/mysema/query/serialization/OperationPattern.java
+++ b/querydsl-core/src/main/java/com/mysema/query/serialization/OperationPattern.java
@@ -3,7 +3,7 @@ package com.mysema.query.serialization;
import java.util.ArrayList;
import java.util.List;
-import com.mysema.util.Assert;
+import com.mysema.commons.lang.Assert;
/**
* PatternElement provides
diff --git a/querydsl-core/src/main/java/com/mysema/util/Assert.java b/querydsl-core/src/main/java/com/mysema/util/Assert.java
deleted file mode 100644
index 3862ca535..000000000
--- a/querydsl-core/src/main/java/com/mysema/util/Assert.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * Copyright (c) 2009 Mysema Ltd.
- * All rights reserved.
- *
- */
-package com.mysema.util;
-
-import org.apache.commons.lang.StringUtils;
-
-/**
- * Assert provides
- *
- * @author tiwe
- * @version $Id$
- */
-public class Assert {
-
- /**
- * use notEmpty(String) instead
- */
- public static String hasText(String text) {
- if (StringUtils.isBlank(text)) {
- throw new IllegalArgumentException("was blank");
- } else {
- return text;
- }
- }
-
- public static T notNull(T object) {
- return notNull(object, "was null");
- }
-
- public static T notNull(T object, String message) {
- if (object == null) throw new IllegalArgumentException(message);
- return object;
- }
-
- public static String notEmpty(String text) {
- if (text == null || text.equals("")) throw new IllegalArgumentException("was empty");
- return text;
- }
-
- public static T[] notEmpty(T[] objects) {
- if(objects == null || objects.length == 0) throw new IllegalArgumentException("was empty");
- return objects;
- }
-
-}