You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cayenne.apache.org by aa...@apache.org on 2007/12/16 21:09:54 UTC

svn commit: r604686 - in /cayenne/main/trunk: framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/project/ framework/cayenne-jpa-unpublished/src/main/java/org/apache/cayenne/jpa/bridge/ framework/cayenne-jpa-unpublished/src/main/java/...

Author: aadamchik
Date: Sun Dec 16 12:09:53 2007
New Revision: 604686

URL: http://svn.apache.org/viewvc?rev=604686&view=rev
Log:
generics

Modified:
    cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/project/ProjectPath.java
    cayenne/main/trunk/framework/cayenne-jpa-unpublished/src/main/java/org/apache/cayenne/jpa/bridge/DataMapConverter.java
    cayenne/main/trunk/framework/cayenne-jpa-unpublished/src/main/java/org/apache/cayenne/jpa/conf/EntityMapDefaultsProcessor.java
    cayenne/main/trunk/framework/cayenne-jpa-unpublished/src/main/java/org/apache/cayenne/jpa/map/JpaPropertyDescriptor.java
    cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/validator/ProcedureErrorMsg.java
    cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/validator/ProcedureParameterErrorMsg.java
    cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/validator/QueryErrorMsg.java
    cayenne/main/trunk/itests/jpa-chapter2/src/test/java/org/apache/cayenne/jpa/itest/ch2/_2_1_5_EmbeddableTest.java

Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/project/ProjectPath.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/project/ProjectPath.java?rev=604686&r1=604685&r2=604686&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/project/ProjectPath.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/project/ProjectPath.java Sun Dec 16 12:09:53 2007
@@ -68,10 +68,10 @@
     /**
      * Scans path, looking for the first element that is an instanceof <code>aClass</code>.
      */
-    public Object firstInstanceOf(Class aClass) {
+    public <T> T firstInstanceOf(Class<T> aClass) {
         for (int i = 0; i < path.length; i++) {
             if (path[i] != null && aClass.isAssignableFrom(path[i].getClass())) {
-                return path[i];
+                return (T) path[i];
             }
         }
 

Modified: cayenne/main/trunk/framework/cayenne-jpa-unpublished/src/main/java/org/apache/cayenne/jpa/bridge/DataMapConverter.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jpa-unpublished/src/main/java/org/apache/cayenne/jpa/bridge/DataMapConverter.java?rev=604686&r1=604685&r2=604686&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jpa-unpublished/src/main/java/org/apache/cayenne/jpa/bridge/DataMapConverter.java (original)
+++ cayenne/main/trunk/framework/cayenne-jpa-unpublished/src/main/java/org/apache/cayenne/jpa/bridge/DataMapConverter.java Sun Dec 16 12:09:53 2007
@@ -104,11 +104,8 @@
 
         // connect relationships paired via "mappedBy"; if any other reverse relationships
         // are missing, Cayenne runtime downstream should take care of it
-        Iterator entities = dataMap.getDbEntities().iterator();
-        while (entities.hasNext()) {
-
-            DbEntity entity = (DbEntity) entities.next();
-            Iterator it = entity.getRelationships().iterator();
+        for (DbEntity entity : dataMap.getDbEntities()) {
+            Iterator<?> it = entity.getRelationships().iterator();
             while (it.hasNext()) {
                 JpaDbRelationship relationship = (JpaDbRelationship) it.next();
                 if (relationship.getMappedBy() != null) {
@@ -117,9 +114,7 @@
                             .getRelationship(relationship.getMappedBy());
 
                     if (owner != null) {
-                        Iterator joins = owner.getJoins().iterator();
-                        while (joins.hasNext()) {
-                            DbJoin join = (DbJoin) joins.next();
+                        for (DbJoin join : owner.getJoins()) {
                             DbJoin reverse = join.createReverseJoin();
                             reverse.setRelationship(relationship);
                             relationship.addJoin(reverse);
@@ -216,7 +211,7 @@
         @Override
         public boolean onStartNode(ProjectPath path) {
             JpaEntityListener jpaListener = (JpaEntityListener) path.getObject();
-            
+
             EntityListener listener = makeEntityListener(jpaListener);
             ObjEntity entity = (ObjEntity) targetPath.firstInstanceOf(ObjEntity.class);
             entity.addEntityListener(listener);
@@ -243,20 +238,19 @@
             return cayenneAttribute;
         }
 
-        Class getAttributeType(ProjectPath path, String name) {
+        Class<?> getAttributeType(ProjectPath path, String name) {
             AccessType access = null;
 
-            JpaManagedClass entity = (JpaManagedClass) path
-                    .firstInstanceOf(JpaManagedClass.class);
+            JpaManagedClass entity = path.firstInstanceOf(JpaManagedClass.class);
             access = entity.getAccess();
 
             if (access == null) {
-                JpaEntityMap map = (JpaEntityMap) path
-                        .firstInstanceOf(JpaEntityMap.class);
+                JpaEntityMap map = path.firstInstanceOf(JpaEntityMap.class);
                 access = map.getAccess();
             }
 
-            Class objectClass = ((ObjEntity) targetPath.firstInstanceOf(ObjEntity.class))
+            Class<?> objectClass = targetPath
+                    .firstInstanceOf(ObjEntity.class)
                     .getJavaClass();
 
             try {
@@ -277,7 +271,7 @@
             }
         }
 
-        Field lookupFieldInHierarchy(Class beanClass, String fieldName)
+        Field lookupFieldInHierarchy(Class<?> beanClass, String fieldName)
                 throws SecurityException, NoSuchFieldException {
 
             try {
@@ -285,7 +279,7 @@
             }
             catch (NoSuchFieldException e) {
 
-                Class superClass = beanClass.getSuperclass();
+                Class<?> superClass = beanClass.getSuperclass();
                 if (superClass == null
                         || superClass.getName().equals(Object.class.getName())) {
                     throw e;
@@ -350,8 +344,8 @@
                         + jpaColumn.getName());
             }
 
-            DbEntity entity = ((DataMap) targetPath.firstInstanceOf(DataMap.class))
-                    .getDbEntity(jpaColumn.getTable());
+            DbEntity entity = targetPath.firstInstanceOf(DataMap.class).getDbEntity(
+                    jpaColumn.getTable());
 
             if (entity == null) {
                 throw new JpaProviderException("No DbEntity defined for table  "
@@ -390,7 +384,7 @@
 
             DbAttribute dbAttribute = new DbAttribute(jpaColumn.getName());
 
-            JpaId jpaId = (JpaId) path.firstInstanceOf(JpaId.class);
+            JpaId jpaId = path.firstInstanceOf(JpaId.class);
 
             dbAttribute.setType(jpaId.getDefaultJdbcType());
 
@@ -413,8 +407,8 @@
                 return false;
             }
 
-            DbEntity entity = ((DataMap) targetPath.firstInstanceOf(DataMap.class))
-                    .getDbEntity(jpaColumn.getTable());
+            DbEntity entity = targetPath.firstInstanceOf(DataMap.class).getDbEntity(
+                    jpaColumn.getTable());
 
             if (entity == null) {
                 recordConflict(path, "Invalid table definition for JpaColumn: "
@@ -586,7 +580,8 @@
 
                 objRelationship.setCollectionType(jpaRelationship
                         .getPropertyDescriptor()
-                        .getType().getName());
+                        .getType()
+                        .getName());
             }
             return relationship;
         }
@@ -686,7 +681,7 @@
                 try {
 
                     // query class is not enhanced, so use normal class loader
-                    Class cayenneQueryClass = Class.forName(hint.getValue(), true, Thread
+                    Class<?> cayenneQueryClass = Class.forName(hint.getValue(), true, Thread
                             .currentThread()
                             .getContextClassLoader());
 

Modified: cayenne/main/trunk/framework/cayenne-jpa-unpublished/src/main/java/org/apache/cayenne/jpa/conf/EntityMapDefaultsProcessor.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jpa-unpublished/src/main/java/org/apache/cayenne/jpa/conf/EntityMapDefaultsProcessor.java?rev=604686&r1=604685&r2=604686&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jpa-unpublished/src/main/java/org/apache/cayenne/jpa/conf/EntityMapDefaultsProcessor.java (original)
+++ cayenne/main/trunk/framework/cayenne-jpa-unpublished/src/main/java/org/apache/cayenne/jpa/conf/EntityMapDefaultsProcessor.java Sun Dec 16 12:09:53 2007
@@ -277,14 +277,14 @@
         public boolean onStartNode(ProjectPath path) {
             JpaColumn column = (JpaColumn) path.getObject();
 
-            JpaAttribute parent = (JpaAttribute) path.firstInstanceOf(JpaAttribute.class);
+            JpaAttribute parent = path.firstInstanceOf(JpaAttribute.class);
 
             if (column.getName() == null) {
                 column.setName(parent.getName());
             }
 
             if (column.getTable() == null) {
-                JpaEntity entity = (JpaEntity) path.firstInstanceOf(JpaEntity.class);
+                JpaEntity entity = path.firstInstanceOf(JpaEntity.class);
 
                 // parent can be a mapped superclass
                 if (entity != null) {
@@ -362,7 +362,7 @@
             JpaJoinColumn column = (JpaJoinColumn) path.getObject();
 
             if (column.getTable() == null) {
-                JpaEntity entity = (JpaEntity) path.firstInstanceOf(JpaEntity.class);
+                JpaEntity entity = path.firstInstanceOf(JpaEntity.class);
                 column.setTable(entity.getTable().getName());
             }
 
@@ -374,7 +374,7 @@
             // the primary key column in table B. The foreign key column has the
             // same type as the primary key of table B.
 
-            JpaEntityMap map = (JpaEntityMap) path.firstInstanceOf(JpaEntityMap.class);
+            JpaEntityMap map = path.firstInstanceOf(JpaEntityMap.class);
             JpaEntity target = map.entityForClass(relationship.getTargetEntityName());
 
             if (target == null) {
@@ -480,7 +480,7 @@
                 JpaClassDescriptor srcDescriptor = relationshipOwner.getClassDescriptor();
                 JpaPropertyDescriptor property = srcDescriptor.getProperty(name);
 
-                Class targetEntityType = property.getTargetEntityType();
+                Class<?> targetEntityType = property.getTargetEntityType();
 
                 if (targetEntityType == null) {
                     context.recordConflict(new SimpleValidationFailure(property

Modified: cayenne/main/trunk/framework/cayenne-jpa-unpublished/src/main/java/org/apache/cayenne/jpa/map/JpaPropertyDescriptor.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jpa-unpublished/src/main/java/org/apache/cayenne/jpa/map/JpaPropertyDescriptor.java?rev=604686&r1=604685&r2=604686&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jpa-unpublished/src/main/java/org/apache/cayenne/jpa/map/JpaPropertyDescriptor.java (original)
+++ cayenne/main/trunk/framework/cayenne-jpa-unpublished/src/main/java/org/apache/cayenne/jpa/map/JpaPropertyDescriptor.java Sun Dec 16 12:09:53 2007
@@ -39,9 +39,9 @@
 
     protected AnnotatedElement member;
     protected String name;
-    protected Class type;
+    protected Class<?> type;
     protected Type genericType;
-    protected Class targetEntityType;
+    protected Class<?> targetEntityType;
 
     public JpaPropertyDescriptor(Field field) {
         this.member = field;
@@ -73,7 +73,7 @@
                 Type[] types = pType.getActualTypeArguments();
 
                 if (types.length == 1 && types[0] instanceof Class) {
-                    this.targetEntityType = (Class) types[0];
+                    this.targetEntityType = (Class<?>) types[0];
                     return;
                 }
             }
@@ -85,7 +85,7 @@
                 Type[] types = pType.getActualTypeArguments();
 
                 if (types.length == 2 && types[1] instanceof Class) {
-                    this.targetEntityType = (Class) types[1];
+                    this.targetEntityType = (Class<?>) types[1];
                     return;
                 }
             }
@@ -103,11 +103,11 @@
         return name;
     }
 
-    public Class getType() {
+    public Class<?> getType() {
         return type;
     }
 
-    public Class getTargetEntityType() {
+    public Class<?> getTargetEntityType() {
         return Void.TYPE.equals(targetEntityType) ? null : targetEntityType;
     }
 
@@ -130,7 +130,7 @@
         return isDefaultNonRelationalType(getTargetEntityType());
     }
 
-    boolean isDefaultNonRelationalType(Class type) {
+    boolean isDefaultNonRelationalType(Class<?> type) {
 
         if (type.isPrimitive() || type.isEnum()) {
             return true;

Modified: cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/validator/ProcedureErrorMsg.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/validator/ProcedureErrorMsg.java?rev=604686&r1=604685&r2=604686&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/validator/ProcedureErrorMsg.java (original)
+++ cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/validator/ProcedureErrorMsg.java Sun Dec 16 12:09:53 2007
@@ -39,9 +39,9 @@
 
     public void displayField(ProjectController mediator, JFrame frame) {
 		ProjectPath path = super.validationInfo.getPath();
-		DataDomain domain = (DataDomain)path.firstInstanceOf(DataDomain.class);
-		DataMap map = (DataMap)path.firstInstanceOf(DataMap.class);
-		Procedure procedure = (Procedure)path.firstInstanceOf(Procedure.class);
+		DataDomain domain = path.firstInstanceOf(DataDomain.class);
+		DataMap map = path.firstInstanceOf(DataMap.class);
+		Procedure procedure = path.firstInstanceOf(Procedure.class);
 	
         ProcedureDisplayEvent event =
             new ProcedureDisplayEvent(frame, procedure, map, domain);

Modified: cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/validator/ProcedureParameterErrorMsg.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/validator/ProcedureParameterErrorMsg.java?rev=604686&r1=604685&r2=604686&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/validator/ProcedureParameterErrorMsg.java (original)
+++ cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/validator/ProcedureParameterErrorMsg.java Sun Dec 16 12:09:53 2007
@@ -42,25 +42,27 @@
 
     public void displayField(ProjectController mediator, JFrame frame) {
         ProjectPath path = super.validationInfo.getPath();
-        DataDomain domain = (DataDomain) path.firstInstanceOf(DataDomain.class);
-        DataMap map = (DataMap) path.firstInstanceOf(DataMap.class);
-        Procedure procedure = (Procedure) path.firstInstanceOf(Procedure.class);
-        ProcedureParameter procedureParameter =
-            (ProcedureParameter) path.firstInstanceOf(ProcedureParameter.class);
+        DataDomain domain = path.firstInstanceOf(DataDomain.class);
+        DataMap map = path.firstInstanceOf(DataMap.class);
+        Procedure procedure = path.firstInstanceOf(Procedure.class);
+        ProcedureParameter procedureParameter = path
+                .firstInstanceOf(ProcedureParameter.class);
 
         // Race condition between the two events...?
-        
+
         // first display the stored procedure
         // for whatever reason, other validators do not require this step
         // (E.g. DbAttributeErrorMsg)
-        ProcedureDisplayEvent procedureEvent =
-            new ProcedureDisplayEvent(frame, procedure, map, domain);
+        ProcedureDisplayEvent procedureEvent = new ProcedureDisplayEvent(
+                frame,
+                procedure,
+                map,
+                domain);
         procedureEvent.setTabReset(true);
         mediator.fireProcedureDisplayEvent(procedureEvent);
 
         // now show the failed parameter
-        ProcedureParameterDisplayEvent event =
-            new ProcedureParameterDisplayEvent(
+        ProcedureParameterDisplayEvent event = new ProcedureParameterDisplayEvent(
                 frame,
                 procedureParameter,
                 procedure,

Modified: cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/validator/QueryErrorMsg.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/validator/QueryErrorMsg.java?rev=604686&r1=604685&r2=604686&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/validator/QueryErrorMsg.java (original)
+++ cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/validator/QueryErrorMsg.java Sun Dec 16 12:09:53 2007
@@ -41,9 +41,9 @@
 
     public void displayField(ProjectController mediator, JFrame frame) {
         ProjectPath path = super.validationInfo.getPath();
-        DataDomain domain = (DataDomain) path.firstInstanceOf(DataDomain.class);
-        DataMap map = (DataMap) path.firstInstanceOf(DataMap.class);
-        Query query = (Query) path.firstInstanceOf(Query.class);
+        DataDomain domain = path.firstInstanceOf(DataDomain.class);
+        DataMap map = path.firstInstanceOf(DataMap.class);
+        Query query = path.firstInstanceOf(Query.class);
 
         QueryDisplayEvent event = new QueryDisplayEvent(frame, query, map, domain);
         mediator.fireQueryDisplayEvent(event);

Modified: cayenne/main/trunk/itests/jpa-chapter2/src/test/java/org/apache/cayenne/jpa/itest/ch2/_2_1_5_EmbeddableTest.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/itests/jpa-chapter2/src/test/java/org/apache/cayenne/jpa/itest/ch2/_2_1_5_EmbeddableTest.java?rev=604686&r1=604685&r2=604686&view=diff
==============================================================================
--- cayenne/main/trunk/itests/jpa-chapter2/src/test/java/org/apache/cayenne/jpa/itest/ch2/_2_1_5_EmbeddableTest.java (original)
+++ cayenne/main/trunk/itests/jpa-chapter2/src/test/java/org/apache/cayenne/jpa/itest/ch2/_2_1_5_EmbeddableTest.java Sun Dec 16 12:09:53 2007
@@ -26,7 +26,7 @@
 
     public void testEmbeddable() throws Exception {
         getDbHelper().deleteAll("EmbeddedEntity");
-        
+
         EmbeddedEntity o1 = new EmbeddedEntity();
         Embeddable1 o2 = new Embeddable1();
         o2.setProperty1("p1");
@@ -35,7 +35,6 @@
         getEntityManager().persist(o1);
         getEntityManager().getTransaction().commit();
 
-        // TODO: andrus 8/10/2006 - fails
-        // assertEquals("p1", ItestDBUtils.getSingleValue("EmbeddedEntity", "property1"));
+        // assertEquals("p1", getDbHelper().getObject("EmbeddedEntity", "property1"));
     }
 }