From afcf36367af34ef3baa019f0ad8bde9293ec11b5 Mon Sep 17 00:00:00 2001 From: Austen Collins Date: Sun, 18 Oct 2015 14:38:32 -0700 Subject: [PATCH] improve plugin architecture --- lib/Jaws.js | 5 ++--- tests/cli/TestPlugins.js | 4 ++-- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/lib/Jaws.js b/lib/Jaws.js index 84afafb69..d658f55d9 100644 --- a/lib/Jaws.js +++ b/lib/Jaws.js @@ -155,15 +155,14 @@ class Jaws { * Set Hook */ - hook(hookName, hook, index) { + hook(hookName, hook) { // Check hook is valid if (!this.hooks[hookName]) { } - index = (!index && index !== 0) ? this.hooks[hookName].length : index; - this.hooks[hookName].splice(index, 0, hook); + this.hooks[hookName].push(hook()); } /** diff --git a/tests/cli/TestPlugins.js b/tests/cli/TestPlugins.js index 69f239d1e..5955320ed 100644 --- a/tests/cli/TestPlugins.js +++ b/tests/cli/TestPlugins.js @@ -54,8 +54,8 @@ class PromisePlugin extends JawsPlugin { */ registerHooks() { - this.Jaws.hook('PreProjectCreate', this._hookPreProjectCreate()); - this.Jaws.hook('PostProjectCreate', this._hookPostProjectCreate()); + this.Jaws.hook('PreProjectCreate', this._hookPreProjectCreate.bind(this)); + this.Jaws.hook('PostProjectCreate', this._hookPostProjectCreate.bind(this)); } /**