private void runQuery()
{
Visit visit = (Visit) getVisit();
Integer userId = visit.getUserId();
VirtualLibraryEngine vengine = (VirtualLibraryEngine) getEngine();
SortOrdering ordering = new SortOrdering(getSortColumn(), isDescending());
int i = 0;
while (true)
{
try
{
IBookQuery query = getOwnedQuery();
if (query == null)
{
query = vengine.createNewQuery();
setOwnedQuery(query);
}
int count = query.ownerQuery(userId, ordering);
if (count != _browser.getResultCount())
_browser.initializeForResultCount(count);
break;
}
catch (RemoteException ex)
{
vengine.rmiFailure("Remote exception accessing owned books.", ex, i++);
setOwnedQuery(null);
}
}
}