[jboss-cvs] jboss-seam/src/main/org/jboss/seam/framework ...

Gavin King gavin.king at jboss.com
Tue Oct 17 15:07:59 EDT 2006


  User: gavin   
  Date: 06/10/17 15:07:59

  Modified:    src/main/org/jboss/seam/framework  Home.java
  Log:
  guess the entit class
  
  Revision  Changes    Path
  1.5       +15 -0     jboss-seam/src/main/org/jboss/seam/framework/Home.java
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: Home.java
  ===================================================================
  RCS file: /cvsroot/jboss/jboss-seam/src/main/org/jboss/seam/framework/Home.java,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -b -r1.4 -r1.5
  --- Home.java	10 Oct 2006 19:37:38 -0000	1.4
  +++ Home.java	17 Oct 2006 19:07:59 -0000	1.5
  @@ -1,6 +1,8 @@
   package org.jboss.seam.framework;
   
   import java.io.Serializable;
  +import java.lang.reflect.ParameterizedType;
  +import java.lang.reflect.Type;
   
   import javax.annotation.PostConstruct;
   
  @@ -94,6 +96,19 @@
   
      public Class<E> getEntityClass()
      {
  +      if (entityClass==null)
  +      {
  +         Type type = getClass().getGenericSuperclass();
  +         if (type instanceof ParameterizedType)
  +         {
  +            ParameterizedType paramType = (ParameterizedType) type;
  +            entityClass = (Class<E>) paramType.getActualTypeArguments()[0];
  +         }
  +         else
  +         {
  +            throw new IllegalArgumentException("Could not guess entity class by reflection");
  +         }
  +      }
         return entityClass;
      }
   
  
  
  



More information about the jboss-cvs-commits mailing list