def active_plugins(namespace = nil, plugin_type = nil, provider = nil)
    active_info = get_hash(:active_info)

    namespace   = namespace.to_sym if namespace
    plugin_type = sanitize_id(plugin_type) if plugin_type
    provider    = sanitize_id(provider) if provider
    results     = {}

    if namespace && active_info.has_key?(namespace)
      if plugin_type && active_info[namespace].has_key?(plugin_type)
        if provider && ! active_info[namespace][plugin_type].keys.empty?
          active_info[namespace][plugin_type].each do |instance_name, plugin|
            plugin                 = active_info[namespace][plugin_type][instance_name]
            results[instance_name] = plugin if plugin.plugin_provider == provider
          end
        elsif ! provider
          results = active_info[namespace][plugin_type]
        end
      elsif ! plugin_type
        results = active_info[namespace]
      end
    elsif ! namespace
      results = active_info
    end
    results
  end
def active_plugins(namespace = nil, plugin_type = nil, provider = nil)
    active_info = get_hash(:active_info)

    namespace   = namespace.to_sym if namespace
    plugin_type = sanitize_id(plugin_type) if plugin_type
    provider    = sanitize_id(provider) if provider
    results     = {}

    if namespace && active_info.has_key?(namespace)
      if plugin_type && active_info[namespace].has_key?(plugin_type)
        if provider && ! active_info[namespace][plugin_type].keys.empty?
          active_info[namespace][plugin_type].each do |instance_name, plugin|
            plugin                 = active_info[namespace][plugin_type][instance_name]
            results[instance_name] = plugin if plugin.plugin_provider == provider
          end
        elsif ! provider
          results = active_info[namespace][plugin_type]
        end
      elsif ! plugin_type
        results = active_info[namespace]
      end
    elsif ! namespace
      results = active_info
    end
    results
  end
Return active plugins for namespaces, plugin types, providers if specified

 * *Parameters*
   - [nil, String, Symbol] *namespace*  Namespace to return plugin instance
   - [nil, String, Symbol] *plugin_type*  Plugin type name to return plugin instance
   - [nil, String, Symbol] *provider*  Plugin provider to return plugin instance

 * *Returns*
   - [nil, Hash<Symbol|Symbol|Symbol|Symbol|Nucleon::Plugin::Base>]  Returns all plugin instances if no parameters given
   - [nil, Hash<Symbol|Symbol|Symbol|Nucleon::Plugin::Base>]  Returns namespace plugin instances if only namespace given
   - [nil, Hash<Symbol|Symbol|Nucleon::Plugin::Base>]  Returns plugin type instances if namespace and plugin type given
   - [nil, Hash<Symbol|Nucleon::Plugin::Base>]  Returns provider instances if namespace, plugin type, and provider given

 * *Errors*

 See:
 - Nucleon::Config#get_hash

 See also:
 - #sanitize_id