private static boolean checkLevelIsOkWithRestrictions( HierarchyAccessImpl hierarchyAccess, Level level) { // Check if this level is explicitly excluded by top/bototm // level restrictions. if (level.getDepth() < hierarchyAccess.topLevel.getDepth()) { return false; } if (level.getDepth() > hierarchyAccess.bottomLevel.getDepth()) { return false; } return true; }
public String getName() { return level.getName(); }
public int getCardinality() { return level.getApproxRowCount(); }
public boolean isInstance(Object value) { return value instanceof Level && (level == null || value.equals(level)) && (hierarchy == null || ((Level) value).getHierarchy().equals(hierarchy)) && (dimension == null || ((Level) value).getDimension().equals(dimension)); }
public Type getLevelType() { if (level.isAll()) { return Type.ALL; switch (level.getLevelType()) { case Regular: return Type.REGULAR; case Null: default: throw Util.unexpected(level.getLevelType());
public Access getAccess(Level level) { assert level != null; HierarchyAccessImpl hierarchyAccess = hierarchyGrants.get(level.getHierarchy()); if (hierarchyAccess != null && hierarchyAccess.access != Access.NONE) + " granted to level " + level.getUniqueName() + " because of the grant to hierarchy " + level.getHierarchy().getUniqueName()); return hierarchyAccess.access; getAccess(level.getDimension()); LOGGER.trace( "Access level " + access + " granted to level " + level.getUniqueName() + " because of the grant to dimension " + level.getDimension().getUniqueName()); return access;
public RolapHierarchy getHierarchy() { return (RolapHierarchy) level.getHierarchy(); }
final int targetLevelDepth = targetLevel.getDepth(); assertPrecondition(member.getLevel().getDepth() < targetLevelDepth, "member.getLevel().getDepth() < targetLevel.getDepth()"); return targetLevel.getHierarchy().getNullMember(); returnFirstDescendant ? 0 : (children.size() - 1); member = children.get(index); if (member.getLevel().getDepth() == targetLevelDepth) { if (member.isHidden()) { return member.getHierarchy().getNullMember();
Util.assertPrecondition(hierarchy != null, "hierarchy != null"); Util.assertPrecondition( level.getHierarchy() == hierarchy, "level.getHierarchy() == hierarchy"); buf.append("level=").append(level.getUniqueName()); } else if (hierarchy != null) { buf.append("hierarchy=").append(hierarchy.getUniqueName());
((RolapSchema) level.getDimension().getSchema()) .getInternalConnection(), "Member.CHILDREN_CARDINALITY", return parentMember == null ? 0 : parentMember.getLevel().getDepth();
public Dimension getDimension() { return level.getDimension(); }
/** * Finds a member property called <code>propertyName</code> at, or above, * <code>level</code>. */ public static Property lookupProperty( Level level, String propertyName) { do { Property[] properties = level.getProperties(); for (Property property : properties) { if (property.getName().equals(propertyName)) { return property; } } level = level.getParentLevel(); } while (level != null); // Now try a standard property. boolean caseSensitive = MondrianProperties.instance().CaseSensitive.get(); final Property property = Property.lookup(propertyName, caseSensitive); if (property != null && property.isMemberProperty() && property.isStandard()) { return property; } return null; }
if (approximate) { rowCount = level.getApproxRowCount(); getMemberReader(level.getHierarchy()); rowCount = memberReader.getLevelMemberCount((RolapLevel) level);
public TupleList evaluateList(Evaluator evaluator) { final Member member; final Level level; if (levelCalc == null) { member = evaluator.getContext(timeHierarchy); level = member.getLevel().getParentLevel(); } else { level = levelCalc.evaluateLevel(evaluator); if (memberCalc == null) { member = evaluator.getContext(level.getHierarchy()); } else { member = memberCalc.evaluateMember(evaluator); } } return new UnaryTupleList( periodsToDate(evaluator, level, member)); }
result.add(member); if (level != null && member.getLevel() != level) { if (level.getDimension() != member.getDimension()) { throw newEvalException( DrilldownLevelTopBottomFunDef.this, "Level '" + level.getUniqueName() + "' not compatible with member '" + member.getUniqueName()
if (parent instanceof Member) { parentMember = (Member) parent; level = parentMember.getLevel().getChildLevel(); if (level == null) { throw Util.newError( level.getHierarchy().createMember( parentMember, level, segment.getName(), this); assert mdxMember != null;
public String getDescription() { return level.getLocalized( OlapElement.LocalizedProperty.DESCRIPTION, olap4jSchema.getLocale()); }
/** * Returns the first level of a given type in this cube. * * @param levelType Level type * @return First level of given type, or null */ private Level getTimeLevel(LevelType levelType) { for (Dimension dimension : dimensions) { if (dimension.getDimensionType() == DimensionType.TimeDimension) { Hierarchy[] hierarchies = dimension.getHierarchies(); for (Hierarchy hierarchy : hierarchies) { Level[] levels = hierarchy.getLevels(); for (Level level : levels) { if (level.getLevelType() == levelType) { return level; } } } } } return null; }
public String getCaption() { // if there is a member formatter for the members level, // we will call this interface to provide the display string MemberFormatter mf = getLevel().getMemberFormatter(); if (mf != null) { return mf.formatMember(this); } // fallback if formatter is null final String caption = super.getCaption(); return (caption != null) ? caption : getName(); }
private Member getCalculatedChild( Member parent, String childName, Evaluator evaluator) { final SchemaReader schemaReader = evaluator.getQuery().getSchemaReader(true); Level childLevel = parent.getLevel().getChildLevel(); if (childLevel == null) { return parent.getHierarchy().getNullMember(); } List<Member> calcMemberList = schemaReader.getCalculatedMembers(childLevel); for (Member child : calcMemberList) { // the parent check is required in case there are parallel children // with the same names if (child.getParentMember().equals(parent) && child.getName().equals(childName)) { return child; } } return parent.getHierarchy().getNullMember(); } }