Author: aadamchik
Date: Wed Aug 30 02:47:31 2006
New Revision: 438435

URL: http://svn.apache.org/viewvc?rev=438435&view=rev
Log:
better error reporting

Modified:
    
incubator/cayenne/main/trunk/core/cayenne-jpa/src/main/java/org/apache/cayenne/jpa/cspi/CjpaEntityManager.java

Modified: 
incubator/cayenne/main/trunk/core/cayenne-jpa/src/main/java/org/apache/cayenne/jpa/cspi/CjpaEntityManager.java
URL: 
http://svn.apache.org/viewvc/incubator/cayenne/main/trunk/core/cayenne-jpa/src/main/java/org/apache/cayenne/jpa/cspi/CjpaEntityManager.java?rev=438435&r1=438434&r2=438435&view=diff
==============================================================================
--- 
incubator/cayenne/main/trunk/core/cayenne-jpa/src/main/java/org/apache/cayenne/jpa/cspi/CjpaEntityManager.java
 (original)
+++ 
incubator/cayenne/main/trunk/core/cayenne-jpa/src/main/java/org/apache/cayenne/jpa/cspi/CjpaEntityManager.java
 Wed Aug 30 02:47:31 2006
@@ -117,15 +117,31 @@
     public void joinTransaction() {
         // TODO: andrus, 7/24/2006 - noop
     }
-    
+
     @Override
     public void lock(Object entity, LockModeType lockMode) {
         // TODO: andrus, 8/15/2006 - noop
     }
 
+    protected void checkEntityType(Class entityClass) throws 
IllegalArgumentException {
+        if (entityClass == null) {
+            throw new IllegalArgumentException("Null entity class");
+        }
+
+        if (!Persistent.class.isAssignableFrom(entityClass)) {
+            throw new IllegalArgumentException("Entity class must be 
Persistent, got: "
+                    + entityClass.getName());
+        }
+    }
+
     protected void checkEntityType(Object entity) throws 
IllegalArgumentException {
+        if (entity == null) {
+            throw new IllegalArgumentException("Null entity");
+        }
+
         if (!(entity instanceof Persistent)) {
-            throw new IllegalArgumentException("entity must be Persistent");
+            String className = (entity != null) ? entity.getClass().getName() 
: "<null>";
+            throw new IllegalArgumentException("entity must be Persistent: " + 
className);
         }
     }
 }


Reply via email to