Hi all,

If you've been watching the JIRA tickets (ISIS-220 to be precise), you 
will have noticed some more activity on this topic.

Anyway, I have implemented changes to the API along the lines of:

    protected <T> List<T> allInstances(final Class<T> ofType, long... range) {
        return getContainer().allInstances(ofType, range);
    }

So anyone can access the paging / ranging support by specifying an 
optional extra two parameters: start and count.

    public List<SimpleClass> someSimpleClasses(final long startIndex, final 
long rowCount) {
        return allInstances(SimpleClass.class, startIndex, rowCount);
    }

I chose to implement with optional parameters instead of 
overloading... 

At the same time, I extended the query base interface to expose 
getStart() and getCount(). So if you invoke an allInstances or 
allMatches with a custom query, you'll have to implement those 
methods.

All existing applications should continue to function exactly as before, 
with the default values of 0 and 0 implying "return all records".


I'll start working on a new release for the sql-os.

Since I modified the API on:

AbstractContainedObject (in applib)
DomainObjectContainer (in applib)
Query (in applib)
QueryBuiltInAbstract and derived classes (in applib)
DomainObjectContainerDefault (in metamodel)
PersistenceQueryAbstract and dervied (in runtime)

does this mean that these components also should be released with a 
bumped major version number?

Regards,
Kevin

Reply via email to