Skip to content
Philip (flip) Kromer edited this page May 9, 2012 · 1 revision

gorillib/heavy -- advanced common functionality

These are standard patterns we should


Notifications

Announcer -- hierarchical logging facade; handles normal announcements, steps, logging; colorized

Watchable -- A simple event/notification mixin

Metrics --


UI/Logging

Want a standard pathway for emitting events and

  • Logging should become structured
  • It should easily tie in to channel delivery

To Log #debug #info #warn #error

To $stdout #banner "## Text ...####" #section h2 #step ul #separator hr #say plain output #link_to #raw :em, :strong, :{color}, :code


Hooks

  • default values
  • on event

Registry -- tracks all instances of a certain class

  reg[name]
  reg[name]= 
  reg.delete(name)
  reg.has_key?(name)
  reg.create(name)
  reg.fetch(name)
  reg.keys
  reg.all

Other

Key Distributor

State Machine

https://github.com/soveran/micromachine

Clone this wiki locally