interface MemberCache
MemberCache can retrieve members based upon their parent and
 name.| Modifier and Type | Method and Description | 
|---|---|
List<RolapMember> | 
getChildrenFromCache(RolapMember parent,
                    MemberChildrenConstraint constraint)
Returns the children of  
member if they are currently in the
 cache, otherwise returns null. | 
List<RolapMember> | 
getLevelMembersFromCache(RolapLevel level,
                        TupleConstraint constraint)
Returns the members of  
level if they are currently in the
 cache, otherwise returns null. | 
RolapMember | 
getMember(Object key)
Retrieves the  
RolapMember with a given key. | 
RolapMember | 
getMember(Object key,
         boolean mustCheckCacheStatus)
Retrieves the  
RolapMember with a given key. | 
boolean | 
isMutable()
Returns whether the cache supports removing selected items. 
 | 
Object | 
makeKey(RolapMember parent,
       Object key)
Creates a key with which to  
getMember(Object) or
 putMember(Object, RolapMember) the
 RolapMember with a given parent and key. | 
void | 
putChildren(RolapLevel level,
           TupleConstraint constraint,
           List<RolapMember> children)
 | 
void | 
putChildren(RolapMember member,
           MemberChildrenConstraint constraint,
           List<RolapMember> children)
 | 
Object | 
putMember(Object key,
         RolapMember member)
Replaces the  
RolapMember with a given key and returns the
 previous member if any. | 
RolapMember | 
removeMember(Object key)
Removes the  
RolapMember with a given key from the cache. | 
RolapMember | 
removeMemberAndDescendants(Object key)
Removes the designated  
RolapMember and all its descendants. | 
Object makeKey(RolapMember parent, Object key)
getMember(Object) or
 putMember(Object, RolapMember) the
 RolapMember with a given parent and key.parent - Parent memberkey - Key of member within parentRolapMember getMember(Object key)
RolapMember with a given key.key - cache key, created by makeKey(mondrian.rolap.RolapMember, java.lang.Object)RolapMember getMember(Object key, boolean mustCheckCacheStatus)
RolapMember with a given key.key - cache key, created by makeKey(mondrian.rolap.RolapMember, java.lang.Object)mustCheckCacheStatus - If true, do not check cache statusObject putMember(Object key, RolapMember member)
RolapMember with a given key and returns the
 previous member if any.key - cache key, created by makeKey(mondrian.rolap.RolapMember, java.lang.Object)member - new memberboolean isMutable()
removeMember(Object) and
 removeMemberAndDescendants(Object) methods.
 REVIEW: remove isMutable and move removeMember and removeMemberAndDescendants to new interface MutableMemberCache
RolapMember removeMember(Object key)
RolapMember with a given key from the cache.
 Returns the previous member with that key, or null.
 Optional operation: see isMutable().key - cache key, created by makeKey(mondrian.rolap.RolapMember, java.lang.Object)RolapMember removeMemberAndDescendants(Object key)
RolapMember and all its descendants.
 Returns the previous member with that key, or null.
 Optional operation: see isMutable().key - cache key, created by makeKey(mondrian.rolap.RolapMember, java.lang.Object)List<RolapMember> getChildrenFromCache(RolapMember parent, MemberChildrenConstraint constraint)
member if they are currently in the
 cache, otherwise returns null.
 The children may be garbage collected as soon as the returned list may be garbage collected.
parent - the parent memberconstraint - the condition that was used when the members were
    fetched. May be null for all members (no constraint)List<RolapMember> getLevelMembersFromCache(RolapLevel level, TupleConstraint constraint)
level if they are currently in the
 cache, otherwise returns null.
 The members may be garbage collected as soon as the returned list may be garbage collected.
level - the level whose members should be fetchedconstraint - the condition that was used when the members were
   fetched. May be null for all members (no constraint)void putChildren(RolapMember member, MemberChildrenConstraint constraint, List<RolapMember> children)
member - the parent memberconstraint - the condition that was used when the members were
   fetched. May be null for all members (no constraint)children - list of childrenvoid putChildren(RolapLevel level, TupleConstraint constraint, List<RolapMember> children)
level - the parent levelconstraint - the condition that was used when the members were
   fetched. May be null for all members (no constraint)children - list of children