class Embulk::PluginManager

def register_plugin(category, type, klass, base_class, message=nil)

def register_plugin(category, type, klass, base_class, message=nil)
  unless klass < base_class
    message ||= "Plugin #{klass} must inherit #{base_class}"
    raise message
  end
  @registries[category].register(type, klass)
end