 
   inheritanceChain:(glue)->
     Base.inheritanceChain @constructor, glue
-    
+
   # emit:(event, data)->
   #   super
   #   id = @getId?() or @bongo_.instanceId

  getInterfaceName: @getInterfaceName = (verb, noun, isPlural)->
    noun = Inflector.pluralize noun if isPlural
    name = Inflector.camelize "#{verb}_#{noun}", yes, yes
  
  invoke: @invoke = (verb, noun, rest...)->
    (@[@getInterfaceName(verb, noun)]?(rest...) and true) or false
  ###

  @set =(options)->
    @registerConstructor()
    for own optionName, option of options
      methodName =
        new Inflector("set_#{Inflector.underscore optionName}")
          .decapitalize()
          .camelize(yes)
