Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
RE: [eclipselink-dev] Any reason why Java Generic is rarely use in EclipseLink?


In part it is historical. Even after we started supporting JDK5 we continued to make JDK1.4 builds available. At present our baseline JDK support is 5/1.5. Our JPA support uses Generics extensively and our new functionality is starting to expose generics as well. 

The bulk of our new object-relational users use the JPA interface versus the native interfaces and thus have generics support. Our existing customers who prefer the native interfaces have typically been using the non-generics interfaces for a while and are used to the non-generic version of the interfaces.

I also like the idea of adding generics to our public facing interfaces but am cautious. We require committers making and code changes to perform the appropriate regression testing and
do their best to ensure we are not introducing backwards compatibility issues for a large and established customer base.

Instead of sending a senior developer in to change every possible collection/map usage I would prefer to focus on the public API that users feel impede their use of EclipseLink. If you run into any of these please add them to your bug and we'll try to address these specific issues in trunk development.


-----Original Message-----
From: Sebastien Tardif [mailto:stardif@xxxxxxxxxxxx]
Sent: Thursday, April 30, 2009 1:34 PM
To: Dev mailing list for Eclipse Persistence Services
Subject: [eclipselink-dev] Any reason why Java Generic is rarely use in

Any reason why Java Generic is rarely use in EclipseLink?

I cannot stop to think about it each time I call simple API and I have
to reverse engineer what is put in the Collection.

For example, we have method named getDescriptors(), first I expect a
Collection not Map because the name doesn't seem to return a pair of

Then I look at the JavaDoc and that doesn't tell me how the Map is

I should just take one day for a senior developer to fix most of the
core code without introducing a bug. You can also get help from tools to
do this.

interface org.eclipse.persistence.sessions.Session
     * ADVANCED:
     * Return all registered descriptors.
    public Map getDescriptors();
eclipselink-dev mailing list

Back to the top