class DefaultPluginContext implements PluginContext {

    @Override
    public <T> void addPlugin(T plugin) {
        Objects.requireNonNull(plugin, "Plugin to register cannot be null");
        final String name = AnnotationProcessor.getPluginName(plugin);
        addPlugin(name, plugin);
    }

    public  DefaultPluginContext();
    public  DefaultPluginContext(Map<String, Object> registry);

}