On Wed, Mar 18, 2009 at 6:40 PM, defeng <[email protected]> wrote: > > But in ShareISM, when creating EventStateCollection, it still uses > session-scope HierarchyManager to getPath(id).
it uses a specialized change log-based hierarchy manager. this instance might return a different path for the same id than a SharedISM-based hierarchgy manager. > > In my test, I found getPath(id) was a very expensive method, that's why i > want to cache the id-path map in shared-scope. a) there's a SessionISM-based CachingHierarchyManager which reflects persisted and transient state. b) there's a SharedISM-based CachingHierarchyManager in WorkspaceImpl. it is currently per session but reflects shared state only. c) there are specialized HierarchyManager implementations used locally (e.g. ChangeLogBasedHierarchyManager used by EventStateCollection). i agree that b) could probably be replaced by a global per workspace instance (e.g. as a member of WorkspaceInfo, as marcel suggested). cheers stefan > > Regards, > > > > Stefan Guggisberg wrote: >> >> On Wed, Mar 18, 2009 at 2:14 PM, defeng <[email protected]> wrote: >>> >>> Currently, the CachingHierarchyManager is per session. Is it possble to >>> save >>> the id-path map in SharedISM? >> >> no. CachingHierarchyManager reflects session-scoped hierarchy information >> (i.e. including transient state) whereas SharedISM has global workspace >> scope >> and is not tied to a session. >> >> cheers >> stefan >> >>> -- >>> View this message in context: >>> http://www.nabble.com/Add-id-map-and-path-map-in-SharedISM--tp22578913p22578913.html >>> Sent from the Jackrabbit - Dev mailing list archive at Nabble.com. >>> >>> >> >> > > -- > View this message in context: > http://www.nabble.com/Add-id-map-and-path-map-in-SharedISM--tp22578913p22584572.html > Sent from the Jackrabbit - Dev mailing list archive at Nabble.com. > >
