Interface MemberCache

    • Method Detail

      • isMutable

        boolean isMutable()
        Returns whether the cache supports removing selected items. If it does, it is valid to call the removeMember(Object) and removeMemberAndDescendants(Object) methods.

        REVIEW: remove isMutable and move removeMember and removeMemberAndDescendants to new interface MutableMemberCache

        Returns:
        true if the cache supports removing selected items.
      • getChildrenFromCache

        java.util.List<RolapMember> getChildrenFromCache​(RolapMember parent,
                                                         MemberChildrenConstraint constraint)
        Returns the children of 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.

        Parameters:
        parent - the parent member
        constraint - the condition that was used when the members were fetched. May be null for all members (no constraint)
        Returns:
        list of children, or null if not in cache
      • getLevelMembersFromCache

        java.util.List<RolapMember> getLevelMembersFromCache​(RolapLevel level,
                                                             TupleConstraint constraint)
        Returns the members of 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.

        Parameters:
        level - the level whose members should be fetched
        constraint - the condition that was used when the members were fetched. May be null for all members (no constraint)
        Returns:
        members of level, or null if not in cache
      • putChildren

        void putChildren​(RolapMember member,
                         MemberChildrenConstraint constraint,
                         java.util.List<RolapMember> children)
        Registers that the children of member are children (a list of RolapMembers).
        Parameters:
        member - the parent member
        constraint - the condition that was used when the members were fetched. May be null for all members (no constraint)
        children - list of children
      • putChildren

        void putChildren​(RolapLevel level,
                         TupleConstraint constraint,
                         java.util.List<RolapMember> children)
        Registers that the children of level are children (a list of RolapMembers).
        Parameters:
        level - the parent level
        constraint - the condition that was used when the members were fetched. May be null for all members (no constraint)
        children - list of children