Class NoCacheMemberReader
- All Implemented Interfaces:
MemberSource
- Direct Known Subclasses:
RolapCubeHierarchy.NoCacheRolapCubeHierarchyMemberReader
NoCacheMemberReader implements MemberReader but
without doing any kind of caching and avoiding to read all members.- Since:
- 06 October, 2007
- Author:
- jlopez, lcanals
-
Method Summary
Modifier and TypeMethodDescriptionintcompare(RolapMember m1, RolapMember m2, boolean siblingsAreEqual) intcountMemberChildren(Member member, List<RolapMember> children, MemberChildrenConstraint constraint) desubstitute(RolapMember member) getChildrenFromCache(RolapMember member, MemberChildrenConstraint constraint) Returns the hierarchy that this source is reading for.getLeadMember(RolapMember member, int n) intgetLevelMemberCount(RolapLevel level) getLevelMembersFromCache(RolapLevel level, TupleConstraint constraint) getMemberByKey(RolapLevel level, List<Comparable> keyValues) voidgetMemberChildren(List<RolapMember> parentMembers, List<RolapMember> children) Returns all members which are a child of one of the members inparentMembers, sorted by ordinal.getMemberChildren(List<RolapMember> parentMembers, List<RolapMember> children, MemberChildrenConstraint constraint) voidgetMemberChildren(RolapMember parentMember, List<RolapMember> children) Writes all childrenparentMembertochildren.getMemberChildren(RolapMember parentMember, List<RolapMember> children, MemberChildrenConstraint constraint) intReturns an estimate of number of members in this hierarchy.getMemberParent(RolapMember member) voidgetMemberRange(RolapLevel level, RolapMember startMember, RolapMember endMember, List<RolapMember> list) Returns all members of this hierarchy, sorted by ordinal.getMembersInLevel(RolapLevel level) getMembersInLevel(RolapLevel level, TupleConstraint constraint) Returns all members of this hierarchy which do not have a parent, sorted by ordinal.booleanlookupMember(List<Id.Segment> uniqueNameParts, boolean failIfNotFound) Finds a member based upon its unique name.makeKey(RolapMember parent, Object key) voidputChildren(RolapLevel level, TupleConstraint constraint, List<RolapMember> children) voidputChildren(RolapMember member, MemberChildrenConstraint constraint, List<RolapMember> children) putMember(Object key, RolapMember value) protected voidreadMemberChildren(List<RolapMember> members, List<RolapMember> result, MemberChildrenConstraint constraint) Reads the children ofmemberintoresult.removeMember(Object key) booleansetCache(mondrian.rolap.MemberCache cache) Sets the cache which thisMemberSourcewill write to.substitute(RolapMember member)
-
Method Details
-
isMutable
public boolean isMutable() -
removeMember
-
removeMemberAndDescendants
-
getHierarchy
Description copied from interface:MemberSourceReturns the hierarchy that this source is reading for.- Specified by:
getHierarchyin interfaceMemberSource
-
setCache
public boolean setCache(mondrian.rolap.MemberCache cache) Description copied from interface:MemberSourceSets the cache which thisMemberSourcewill write to.Cache-writeback is optional (for example,
SqlMemberSourcesupports it, andArrayMemberSourcedoes not), and the return value from this method indicates whether this object supports it.If this method returns
true, theMemberSource.getMembers(),MemberSource.getRootMembers()andMemberSource.getMemberChildren(mondrian.rolap.RolapMember, java.util.List<mondrian.rolap.RolapMember>)methods must write to the cache, in addition to returning members as a return value.- Specified by:
setCachein interfaceMemberSource- Parameters:
cache- TheMemberCachewhich the caller would like thisMemberSourceto write to.- Returns:
- Whether this
MemberSourcesupports cache-writeback.
-
makeKey
-
getMember
-
getMember
-
putMember
-
getMembers
Description copied from interface:MemberSourceReturns all members of this hierarchy, sorted by ordinal.If this object
supports cache-writeaback, also writes these members to the cache.- Specified by:
getMembersin interfaceMemberSource
-
getRootMembers
Description copied from interface:MemberSourceReturns all members of this hierarchy which do not have a parent, sorted by ordinal.If this object
supports cache-writeback, also writes these members to the cache.- Specified by:
getRootMembersin interfaceMemberSource- Returns:
ListofRolapMembers
-
getMembersInLevel
-
getMembersInLevel
-
getMemberByKey
-
countMemberChildren
public int countMemberChildren(Member member, List<RolapMember> children, MemberChildrenConstraint constraint) -
getMemberChildren
Description copied from interface:MemberSourceWrites all childrenparentMembertochildren.If this object
supports cache-writeback, also writes these members to the cache.- Specified by:
getMemberChildrenin interfaceMemberSource
-
getMemberChildren
public Map<? extends Member,Access> getMemberChildren(RolapMember parentMember, List<RolapMember> children, MemberChildrenConstraint constraint) -
getMemberChildren
Description copied from interface:MemberSourceReturns all members which are a child of one of the members inparentMembers, sorted by ordinal.If this object
supports cache-writeaback, also writes these members to the cache.- Specified by:
getMemberChildrenin interfaceMemberSource
-
getMemberChildren
public Map<? extends Member,Access> getMemberChildren(List<RolapMember> parentMembers, List<RolapMember> children, MemberChildrenConstraint constraint) -
lookupMember
Description copied from interface:MemberSourceFinds a member based upon its unique name.- Specified by:
lookupMemberin interfaceMemberSource
-
getChildrenFromCache
public List<RolapMember> getChildrenFromCache(RolapMember member, MemberChildrenConstraint constraint) -
getLevelMembersFromCache
-
putChildren
public void putChildren(RolapMember member, MemberChildrenConstraint constraint, List<RolapMember> children) -
putChildren
-
getLeadMember
-
getMemberRange
public void getMemberRange(RolapLevel level, RolapMember startMember, RolapMember endMember, List<RolapMember> list) -
getMemberCount
public int getMemberCount()Description copied from interface:MemberSourceReturns an estimate of number of members in this hierarchy.- Specified by:
getMemberCountin interfaceMemberSource
-
compare
-
getMemberBuilder
-
getDefaultMember
-
getLevelMemberCount
-
desubstitute
-
substitute
-
getMemberParent
-
readMemberChildren
protected void readMemberChildren(List<RolapMember> members, List<RolapMember> result, MemberChildrenConstraint constraint) Reads the children ofmemberintoresult.- Parameters:
result- Children are written here, in ordermembers- Members whose children to readconstraint- restricts the returned members if possible (optional optimization)
-