Getting object store properties without additional round-trip

2.6k views Asked by At

I'm using IBM FileNet CE API 5.1 and facing perfomance problem because of additional refreshing in loop with great iteration amount (25000+). Here is code sample:

for (Document document : documents) {
       ObjectStore objectStore = document.getObjectStore();
       objectStore.refresh(); //round-trip
       String symbolicName = objectStore.get_SymbolicName();

       ...
 }

The problem is, objectStore object before refresh doesn't have any cached properties at all, even object identity (if I had I could create object store cache to avoid refreshing in every iteration).

Documents may have different object stores (I'm searching through multiple object stores).

2

There are 2 answers

0
ᄂ ᄀ On BEST ANSWER

You can obtain the id of object store from object reference:

document.getObjectReference().getObjectStoreIdentity()
3
Ivan Nikolaev On

There is a way to get object store id through EngineObjectImpl.getObjectStoreReference():

GlobalIdentity objectStoreReference = ((EngineObjectImpl)object).getObjectStoreReference();
Id objectId = objectStoreReference.getObjectId();