@Override public <T> Representation invoke( GraphDatabaseAPI graphDb, String name, Class<T> type, String method, T context, ParameterList params) throws PluginLookupException, BadInputException, PluginInvocationFailureException, BadPluginInvocationException { PluginPoint plugin = extension(name, type, method); try { return plugin.invoke(graphDb, context, params); } catch (BadInputException e) { throw e; } catch (BadPluginInvocationException e) { throw e; } catch (PluginInvocationFailureException e) { throw e; } catch (Exception e) { throw new PluginInvocationFailureException(e); } }