You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@cayenne.apache.org by Kevin Menard <km...@servprise.com> on 2007/11/20 21:05:32 UTC

Re: svn commit: r596798 - in /cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/ apache/cayenne: BaseContext.java CayenneContext.java ObjectContext.java access/DataContext.java query/NamedQuery.java

Forgive my ignorance, but what is the reason for making these Collection<?>
rather than Collection<? extends Persistent> ?  Is it for JPA POJO support?

-- 
Kevin


On 11/20/07 2:43 PM, "aadamchik@apache.org" <aa...@apache.org> wrote:

> ==============================================================================
> --- 
> cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apac
> he/cayenne/BaseContext.java (original)
> +++ 
> cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apac
> he/cayenne/BaseContext.java Tue Nov 20 11:43:12 2007
> @@ -45,7 +45,7 @@
>  
>      public abstract void deleteObject(Object object) throws
> DeleteDenyException;
>  
> -    public abstract Collection deletedObjects();
> +    public abstract Collection<?> deletedObjects();
>  
>      public DataChannel getChannel() {
>          return channel;
> @@ -57,17 +57,17 @@
>  
>      public abstract Persistent localObject(ObjectId id, Object prototype);
>  
> -    public abstract Collection modifiedObjects();
> +    public abstract Collection<?> modifiedObjects();
>  
>      public abstract <T> T newObject(Class<T> persistentClass);
>  
>      public abstract void registerNewObject(Object object);
>  
> -    public abstract Collection newObjects();
> +    public abstract Collection<?> newObjects();
>  
>      public abstract QueryResponse performGenericQuery(Query query);
>  
> -    public abstract List performQuery(Query query);
> +    public abstract List<?> performQuery(Query query);


Re: svn commit: r596798 - in /cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/ apache/cayenne: BaseContext.java CayenneContext.java ObjectContext.java access/DataContext.java query/NamedQuery.java

Posted by Andrus Adamchik <an...@objectstyle.org>.
On Nov 20, 2007, at 10:05 PM, Kevin Menard wrote:

> Forgive my ignorance, but what is the reason for making these  
> Collection<?>
> rather than Collection<? extends Persistent> ?  Is it for JPA POJO  
> support?

Yes, it is for POJO support (not only JPA). I.e. at compile time your  
classes may not implement Persistent. I already ran into problem with  
POJO integration tests with "newObject" returning Persistent that is  
being assigned to a concrete type that is not Persistent at compile  
time.

Andrus