Module: Casseo::Index

Included in:
Dashboard
Defined in:
lib/casseo/index.rb

Constant Summary collapse

@@index =
{}

Instance Method Summary collapse

Instance Method Details

#define(name) {|dashboard| ... } ⇒ Object

Yields:

  • (dashboard)


5
6
7
8
9
10
# File 'lib/casseo/index.rb', line 5

def define(name)
  dashboard = Dashboard.new(name)
  yield(dashboard)
  @@index[name] = dashboard
  dashboard
end

#indexObject



12
13
14
# File 'lib/casseo/index.rb', line 12

def index
  @@index.keys
end

#run(name) ⇒ Object



16
17
18
19
20
21
22
# File 'lib/casseo/index.rb', line 16

def run(name)
  if @@index.key?(name)
    @@index[name].run
  else
    raise DashboardNotFound.new("#{name} is not a known dashboard")
  end
end