public class RolapCubeHierarchy.CacheRolapCubeHierarchyMemberReader extends SmartMemberReader implements RolapCubeHierarchy.RolapCubeHierarchyMemberReader
Synchronization. Most synchronization takes place within SmartMemberReader. All synchronization is done on the cacheHelper object.
SmartMemberReader.SiblingIterator
Modifier and Type | Field and Description |
---|---|
protected RolapCubeHierarchy.RolapCubeSqlMemberSource |
cubeSource
cubeSource is passed as our member builder
|
protected MemberCacheHelper |
rolapCubeCacheHelper
this cache caches RolapCubeMembers that are light wrappers around
shared and non-shared Hierarchy RolapMembers.
|
cacheHelper, rootMembers, source
Constructor and Description |
---|
RolapCubeHierarchy.CacheRolapCubeHierarchyMemberReader() |
Modifier and Type | Method and Description |
---|---|
protected void |
checkCacheStatus() |
TupleReader.MemberBuilder |
getMemberBuilder() |
RolapMember |
getMemberByKey(RolapLevel level,
List<Comparable> keyValues)
Looks up a member by its key value.
|
Map<? extends Member,Access> |
getMemberChildren(List<RolapMember> parentMembers,
List<RolapMember> children,
MemberChildrenConstraint constraint)
Populates a list of the children of a given set of Members, optionally
applying a constraint.
|
int |
getMemberCount()
Returns an estimate of number of members in this hierarchy.
|
List<RolapMember> |
getMembersInLevel(RolapLevel level,
TupleConstraint constraint)
Returns the members in the given Level, optionally applying a constraint.
|
MemberCacheHelper |
getRolapCubeMemberCacheHelper() |
List<RolapMember> |
getRootMembers()
Returns all members of this hierarchy which do not have a parent,
sorted by ordinal.
|
RolapCubeMember |
lookupCubeMember(RolapCubeMember parent,
RolapMember member,
RolapCubeLevel level) |
protected void |
readMemberChildren(List<RolapMember> parentMembers,
List<RolapMember> children,
MemberChildrenConstraint constraint)
Reads the children of
member into cache, and also into
result . |
compare, desubstitute, getDefaultMember, getHierarchy, getLeadMember, getLevelMemberCount, getMemberCache, getMemberChildren, getMemberChildren, getMemberChildren, getMemberParent, getMemberRange, getMembers, getMembersInLevel, isSorted, lookupMember, setCache, substitute
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
compare, desubstitute, getDefaultMember, getLeadMember, getLevelMemberCount, getMemberChildren, getMemberParent, getMemberRange, getMembersInLevel, substitute
getHierarchy, getMemberChildren, getMemberChildren, getMembers, lookupMember, setCache
protected final RolapCubeHierarchy.RolapCubeSqlMemberSource cubeSource
protected MemberCacheHelper rolapCubeCacheHelper
public RolapCubeHierarchy.CacheRolapCubeHierarchyMemberReader()
public TupleReader.MemberBuilder getMemberBuilder()
getMemberBuilder
in interface MemberReader
getMemberBuilder
in class SmartMemberReader
public MemberCacheHelper getRolapCubeMemberCacheHelper()
getRolapCubeMemberCacheHelper
in interface RolapCubeHierarchy.RolapCubeHierarchyMemberReader
public List<RolapMember> getRootMembers()
MemberSource
If this object supports cache-writeback
, also
writes these members to the cache.
getRootMembers
in interface MemberSource
getRootMembers
in class SmartMemberReader
List
of RolapMember
sprotected void readMemberChildren(List<RolapMember> parentMembers, List<RolapMember> children, MemberChildrenConstraint constraint)
SmartMemberReader
member
into cache, and also into
result
.readMemberChildren
in class SmartMemberReader
parentMembers
- Members whose children to readchildren
- Children are written here, in orderconstraint
- restricts the returned members if possible (optional
optimization)public Map<? extends Member,Access> getMemberChildren(List<RolapMember> parentMembers, List<RolapMember> children, MemberChildrenConstraint constraint)
MemberReader
getMemberChildren
in interface MemberReader
getMemberChildren
in class SmartMemberReader
parentMembers
- List of members whose children to findchildren
- List to populate with membersconstraint
- Constraintnull
values.public List<RolapMember> getMembersInLevel(RolapLevel level, TupleConstraint constraint)
MemberReader
getMembersInLevel
in interface MemberReader
getMembersInLevel
in class SmartMemberReader
level
- Levelconstraint
- Constraintpublic RolapMember getMemberByKey(RolapLevel level, List<Comparable> keyValues)
MemberReader
getMemberByKey
in interface MemberReader
getMemberByKey
in class SmartMemberReader
level
- LevelkeyValues
- Key valuespublic RolapCubeMember lookupCubeMember(RolapCubeMember parent, RolapMember member, RolapCubeLevel level)
lookupCubeMember
in interface RolapCubeHierarchy.RolapCubeHierarchyMemberReader
public int getMemberCount()
MemberSource
getMemberCount
in interface MemberSource
getMemberCount
in class SmartMemberReader
protected void checkCacheStatus()
checkCacheStatus
in class SmartMemberReader