|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectmondrian.rolap.RolapSchemaReader
public class RolapSchemaReader
A RolapSchemaReader
allows you to read schema objects while
observing the access-control profile specified by a given role.
Field Summary | |
---|---|
protected Role |
role
|
protected RolapSchema |
schema
|
Constructor Summary | |
---|---|
RolapSchemaReader(Role role,
RolapSchema schema)
Creates a RolapSchemaReader. |
Method Summary | |
---|---|
int |
compareMembersHierarchically(Member m1,
Member m2)
Compares a pair of Member s according to their order in a prefix
traversal. |
Member |
getCalculatedMember(java.util.List<Id.Segment> nameParts)
Looks up a calculated member by name. |
java.util.List<Member> |
getCalculatedMembers()
Returns the list of calculated members. |
java.util.List<Member> |
getCalculatedMembers(Hierarchy hierarchy)
Returns a list of calculated members in a given hierarchy. |
java.util.List<Member> |
getCalculatedMembers(Level level)
Returns a list of calculated members in a given level. |
int |
getChildrenCountFromCache(Member member)
check, whether members children are cached, and if yes - return children count if no - return -1 |
Cube |
getCube()
Returns the default cube in which to look for dimensions etc. |
java.util.List<Dimension> |
getCubeDimensions(Cube cube)
Returns the accessible dimensions of a cube. |
Cube[] |
getCubes()
Returns the list of accessible cubes. |
javax.sql.DataSource |
getDataSource()
Returns the data source. |
java.util.List<Hierarchy> |
getDimensionHierarchies(Dimension dimension)
Returns the accessible hierarchies of a dimension. |
OlapElement |
getElementChild(OlapElement parent,
Id.Segment name)
Looks up the child of parent name , returning
null if no element is found. |
OlapElement |
getElementChild(OlapElement parent,
Id.Segment name,
MatchType matchType)
Looks up the child of parent called name , or
an approximation according to matchType , returning
null if no element is found. |
Member |
getHierarchyDefaultMember(Hierarchy hierarchy)
Returns the default member of a hierarchy. |
java.util.List<Level> |
getHierarchyLevels(Hierarchy hierarchy)
Returns the accessible levels of a hierarchy. |
java.util.List<Member> |
getHierarchyRootMembers(Hierarchy hierarchy)
Returns an array of the root members of hierarchy . |
Member |
getLeadMember(Member member,
int n)
Returns a member n further along in the same level from
member . |
int |
getLevelCardinality(Level level,
boolean approximate,
boolean materialize)
Returns the number of members in a level, returning an approximation if acceptable. |
java.util.List<Member> |
getLevelMembers(Level level,
boolean includeCalculated)
Returns the members of a level, optionally including calculated members. |
java.util.List<Member> |
getLevelMembers(Level level,
Evaluator context)
Returns the members of a level, optionally filtering out members which are empty. |
Member |
getMemberByUniqueName(java.util.List<Id.Segment> uniqueNameParts,
boolean failIfNotFound)
Finds a member based upon its unique name, requiring an exact match. |
Member |
getMemberByUniqueName(java.util.List<Id.Segment> uniqueNameParts,
boolean failIfNotFound,
MatchType matchType)
Finds a member based upon its unique name. |
java.util.List<Member> |
getMemberChildren(java.util.List<Member> members)
Returns direct children of each element of members . |
java.util.List<Member> |
getMemberChildren(java.util.List<Member> members,
Evaluator context)
Returns direct children of each element of members
which is not empty in context . |
java.util.List<Member> |
getMemberChildren(Member member)
Returns direct children of member . |
java.util.List<Member> |
getMemberChildren(Member member,
Evaluator context)
Returns direct children of member , optimized
for NON EMPTY. |
int |
getMemberDepth(Member member)
Returns the depth of a member. |
Member |
getMemberParent(Member member)
Returns the parent of member . |
void |
getMemberRange(Level level,
Member startMember,
Member endMember,
java.util.List<Member> list)
Appends to list all members between startMember
and endMember (inclusive) which belong to
level . |
MemberReader |
getMemberReader(Hierarchy hierarchy)
|
NamedSet |
getNamedSet(java.util.List<Id.Segment> nameParts)
Looks up a set by name. |
NativeEvaluator |
getNativeSetEvaluator(FunDef fun,
Exp[] args,
Evaluator evaluator,
Calc calc)
Returns an object which can evaluate an expression in native SQL, or null if this is not possible. |
Parameter |
getParameter(java.lang.String name)
Returns the definition of a parameter with a given name, or null if not found. |
Role |
getRole()
Returns the access-control profile that this SchemaReader
is implementing. |
(package private) RolapSchema |
getSchema()
Returns the schema. |
boolean |
isDrillable(Member member)
Returns whether a member has visible children. |
boolean |
isVisible(Member member)
Returns whether a member is visible. |
OlapElement |
lookupCompound(OlapElement parent,
java.util.List<Id.Segment> names,
boolean failIfNotFound,
int category)
Looks up an MDX object by name. |
OlapElement |
lookupCompound(OlapElement parent,
java.util.List<Id.Segment> names,
boolean failIfNotFound,
int category,
MatchType matchType)
Looks up an MDX object by name, specifying how to match if no object exactly matches the name. |
Member |
lookupMemberChildByName(Member parent,
Id.Segment childName,
MatchType matchType)
Finds a child of a member with a given name. |
Member |
substitute(Member member)
Substitutes a member with an equivalent member which enforces the access control policy of this SchemaReader. |
SchemaReader |
withoutAccessControl()
Returns a similar schema reader that has no access control. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected final Role role
protected final RolapSchema schema
Constructor Detail |
---|
RolapSchemaReader(Role role, RolapSchema schema)
role
- Role for access control, must not be nullschema
- SchemaMethod Detail |
---|
public Role getRole()
SchemaReader
SchemaReader
is implementing.
getRole
in interface SchemaReader
public java.util.List<Member> getHierarchyRootMembers(Hierarchy hierarchy)
SchemaReader
hierarchy
.
getHierarchyRootMembers
in interface SchemaReader
hierarchy
- HierarchySchemaReader.getCalculatedMembers(Hierarchy)
public MemberReader getMemberReader(Hierarchy hierarchy)
getMemberReader
in interface RolapNativeSet.SchemaReaderWithMemberReaderAvailable
public Member substitute(Member member)
SchemaReader
substitute
in interface SchemaReader
public void getMemberRange(Level level, Member startMember, Member endMember, java.util.List<Member> list)
SchemaReader
list
all members between startMember
and endMember
(inclusive) which belong to
level
.
getMemberRange
in interface SchemaReader
public int compareMembersHierarchically(Member m1, Member m2)
SchemaReader
Member
s according to their order in a prefix
traversal. (that is, it
is an ancestor or a earlier), is a sibling, or comes later in a prefix
traversal.
compareMembersHierarchically
in interface SchemaReader
m1
is an ancestor, an earlier
sibling of an ancestor, or a descendent of an earlier sibling, of
m2
;
zero if m1
is a sibling of m2
;
a positive integer if m1
comes later in the prefix
traversal then m2
.public Member getMemberParent(Member member)
SchemaReader
member
.
getMemberParent
in interface SchemaReader
member
- Member
public int getMemberDepth(Member member)
SchemaReader
This may not be the same as
member.
for three reasons:getLevel
().
getDepth
()
getMemberDepth
in interface SchemaReader
public java.util.List<Member> getMemberChildren(Member member)
SchemaReader
member
.
getMemberChildren
in interface SchemaReader
public java.util.List<Member> getMemberChildren(Member member, Evaluator context)
SchemaReader
member
, optimized
for NON EMPTY.
If context == null
then
there is no context and all members are returned - then
its identical to SchemaReader.getMemberChildren(Member)
.
If context
is not null, the resulting members
may be restricted to those members that have a
non empty row in the fact table for context
.
Wether or not optimization is possible depends
on the SchemaReader implementation.
getMemberChildren
in interface SchemaReader
public int getChildrenCountFromCache(Member member)
getChildrenCountFromCache
in interface SchemaReader
public int getLevelCardinality(Level level, boolean approximate, boolean materialize)
SchemaReader
getLevelCardinality
in interface SchemaReader
level
- Levelapproximate
- Whether an approximation is acceptablematerialize
- Whether to go to disk if no approximation
for the count is available and the members are not in
cache. If false, returns Integer.MIN_VALUE
if value
is not in cache.public java.util.List<Member> getMemberChildren(java.util.List<Member> members)
SchemaReader
members
.
getMemberChildren
in interface SchemaReader
members
- Array of members
public java.util.List<Member> getMemberChildren(java.util.List<Member> members, Evaluator context)
SchemaReader
members
which is not empty in context
.
getMemberChildren
in interface SchemaReader
members
- Array of memberscontext
- Evaluation context
public Cube getCube()
SchemaReader
getCube
in interface SchemaReader
public SchemaReader withoutAccessControl()
SchemaReader
withoutAccessControl
in interface SchemaReader
public OlapElement getElementChild(OlapElement parent, Id.Segment name)
SchemaReader
parent
name
, returning
null if no element is found.
Always equivalent to
getElementChild(parent, name, MatchType.EXACT)
.
getElementChild
in interface SchemaReader
parent
- Parent element to search inname
- Compound in compound name, such as "[Product]" or "&[1]"
public OlapElement getElementChild(OlapElement parent, Id.Segment name, MatchType matchType)
SchemaReader
parent
called name
, or
an approximation according to matchType
, returning
null if no element is found.
getElementChild
in interface SchemaReader
parent
- Parent element to search inname
- Compound in compound name, such as "[Product]" or "&[1]"matchType
- Match type
public final Member getMemberByUniqueName(java.util.List<Id.Segment> uniqueNameParts, boolean failIfNotFound)
SchemaReader
This method is equivalent to calling
SchemaReader.getMemberByUniqueName(java.util.List, boolean, MatchType)
with MatchType.EXACT
.
getMemberByUniqueName
in interface SchemaReader
uniqueNameParts
- Unique name of memberfailIfNotFound
- Whether to throw an error, as opposed to returning
null
, if there is no such member.
public Member getMemberByUniqueName(java.util.List<Id.Segment> uniqueNameParts, boolean failIfNotFound, MatchType matchType)
SchemaReader
getMemberByUniqueName
in interface SchemaReader
uniqueNameParts
- Unique name of memberfailIfNotFound
- Whether to throw an error, as opposed to returning
null
, if there is no such member.matchType
- indicates the match mode; if not specified, EXACT
public OlapElement lookupCompound(OlapElement parent, java.util.List<Id.Segment> names, boolean failIfNotFound, int category)
SchemaReader
Resolves a name such as '[Products].[Product Department].[Produce]' by resolving the components ('Products', and so forth) one at a time.
lookupCompound
in interface SchemaReader
parent
- Parent element to search innames
- Exploded compound name, such as {"Products",
"Product Department", "Produce"}failIfNotFound
- If the element is not found, determines whether
to return null or throw an errorcategory
- Type of returned element, a Category
value;
Category.Unknown
if it doesn't matter.public OlapElement lookupCompound(OlapElement parent, java.util.List<Id.Segment> names, boolean failIfNotFound, int category, MatchType matchType)
SchemaReader
Resolves a name such as '[Products].[Product Department].[Produce]' by resolving the components ('Products', and so forth) one at a time.
lookupCompound
in interface SchemaReader
parent
- Parent element to search innames
- Exploded compound name, such as {"Products",
"Product Department", "Produce"}failIfNotFound
- If the element is not found, determines whether
to return null or throw an errorcategory
- Type of returned element, a Category
value;
Category.Unknown
if it doesn't matter.matchType
- indicates the match mode; if not specified, EXACTpublic Member lookupMemberChildByName(Member parent, Id.Segment childName, MatchType matchType)
SchemaReader
lookupMemberChildByName
in interface SchemaReader
public Member getCalculatedMember(java.util.List<Id.Segment> nameParts)
SchemaReader
getCalculatedMember
in interface SchemaReader
public NamedSet getNamedSet(java.util.List<Id.Segment> nameParts)
SchemaReader
getNamedSet
in interface SchemaReader
public Member getLeadMember(Member member, int n)
SchemaReader
n
further along in the same level from
member
.
getLeadMember
in interface SchemaReader
public java.util.List<Member> getLevelMembers(Level level, boolean includeCalculated)
SchemaReader
getLevelMembers
in interface SchemaReader
public java.util.List<Member> getLevelMembers(Level level, Evaluator context)
SchemaReader
getLevelMembers
in interface SchemaReader
level
- Levelcontext
- Context for filtering
public java.util.List<Dimension> getCubeDimensions(Cube cube)
SchemaReader
getCubeDimensions
in interface SchemaReader
public java.util.List<Hierarchy> getDimensionHierarchies(Dimension dimension)
SchemaReader
getDimensionHierarchies
in interface SchemaReader
public java.util.List<Level> getHierarchyLevels(Hierarchy hierarchy)
SchemaReader
getHierarchyLevels
in interface SchemaReader
hierarchy
- Hierarchypublic Member getHierarchyDefaultMember(Hierarchy hierarchy)
SchemaReader
getHierarchyDefaultMember
in interface SchemaReader
hierarchy
- Hierarchy
public boolean isDrillable(Member member)
SchemaReader
isDrillable
in interface SchemaReader
public boolean isVisible(Member member)
SchemaReader
isVisible
in interface SchemaReader
public Cube[] getCubes()
SchemaReader
getCubes
in interface SchemaReader
public java.util.List<Member> getCalculatedMembers(Hierarchy hierarchy)
SchemaReader
getCalculatedMembers
in interface SchemaReader
public java.util.List<Member> getCalculatedMembers(Level level)
SchemaReader
getCalculatedMembers
in interface SchemaReader
public java.util.List<Member> getCalculatedMembers()
SchemaReader
getCalculatedMembers
in interface SchemaReader
public NativeEvaluator getNativeSetEvaluator(FunDef fun, Exp[] args, Evaluator evaluator, Calc calc)
SchemaReader
getNativeSetEvaluator
in interface SchemaReader
fun
- Functionargs
- Arguments to the functionevaluator
- Evaluator, provides contextpublic Parameter getParameter(java.lang.String name)
SchemaReader
getParameter
in interface SchemaReader
public javax.sql.DataSource getDataSource()
SchemaReader
getDataSource
in interface SchemaReader
RolapSchema getSchema()
|
|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |