class Mondrian::OLAP::Hierarchy

Attributes

dimension[R]
raw_hierarchy[R]

Public Class Methods

new(dimension, raw_hierarchy) click to toggle source
# File lib/mondrian/olap/cube.rb, line 184
def initialize(dimension, raw_hierarchy)
  @dimension = dimension
  @raw_hierarchy = raw_hierarchy
end

Public Instance Methods

all_member() click to toggle source
# File lib/mondrian/olap/cube.rb, line 227
def all_member
  has_all? ? Member.new(@raw_hierarchy.getRootMembers.first) : nil
end
all_member_name() click to toggle source
# File lib/mondrian/olap/cube.rb, line 223
def all_member_name
  has_all? ? @raw_hierarchy.getRootMembers.first.getName : nil
end
annotations() click to toggle source
# File lib/mondrian/olap/cube.rb, line 256
def annotations
  annotations_for(@raw_hierarchy)
end
caption() click to toggle source
# File lib/mondrian/olap/cube.rb, line 199
def caption
  @caption ||= @raw_hierarchy.getCaption
end
child_names(*parent_member_segment_names) click to toggle source
# File lib/mondrian/olap/cube.rb, line 243
def child_names(*parent_member_segment_names)
  Error.wrap_native_exception do
    parent_member = if parent_member_segment_names.empty?
      return root_member_names unless has_all?
      all_member
    else
      @dimension.cube.member_by_segments(*parent_member_segment_names)
    end
    parent_member && parent_member.children.map{|m| m.name}
  end
end
description() click to toggle source
# File lib/mondrian/olap/cube.rb, line 195
def description
  @description ||= @raw_hierarchy.getDescription
end
dimension_name() click to toggle source
# File lib/mondrian/olap/cube.rb, line 203
def dimension_name
  @dimension.name
end
has_all?() click to toggle source
# File lib/mondrian/olap/cube.rb, line 219
def has_all?
  @raw_hierarchy.hasAll
end
level(name) click to toggle source
# File lib/mondrian/olap/cube.rb, line 211
def level(name)
  levels.detect{|l| l.name == name}
end
level_names() click to toggle source
# File lib/mondrian/olap/cube.rb, line 215
def level_names
  levels.map{|l| l.name}
end
levels() click to toggle source
# File lib/mondrian/olap/cube.rb, line 207
def levels
  @levels = @raw_hierarchy.getLevels.map{|l| Level.new(self, l)}
end
name() click to toggle source
# File lib/mondrian/olap/cube.rb, line 191
def name
  @name ||= @raw_hierarchy.getName
end
root_member_full_names() click to toggle source
# File lib/mondrian/olap/cube.rb, line 239
def root_member_full_names
  @raw_hierarchy.getRootMembers.map{|m| m.getUniqueName}
end
root_member_names() click to toggle source
# File lib/mondrian/olap/cube.rb, line 235
def root_member_names
  @raw_hierarchy.getRootMembers.map{|m| m.getName}
end
root_members() click to toggle source
# File lib/mondrian/olap/cube.rb, line 231
def root_members
  @raw_hierarchy.getRootMembers.map{|m| Member.new(m)}
end
visible?() click to toggle source
# File lib/mondrian/olap/cube.rb, line 260
def visible?
  @raw_hierarchy.isVisible
end