Like this. This should also work faster since we don't need to do files lookup 
(ro parse config.xml), etc .

PS. In new hooks implementation with plugin support you can use the same file 
for different hooks and use ctx.hook to see for what hook event  is fired.

-Sergey
-----Original Message-----
From: brian.ler...@gmail.com [mailto:brian.ler...@gmail.com] On Behalf Of Brian 
LeRoux
Sent: Wednesday, August 6, 2014 1:01 AM
To: dev@cordova.apache.org
Subject: Re: Can I have all my hooks in one file and be event driven?

+1


On Tue, Aug 5, 2014 at 1:52 PM, Michal Mocny <mmo...@chromium.org> wrote:

> I like the idea of hooks as events.
>
> Re: publishing to npm, I like to idea of hook publishing, but do we 
> need another "package type"?  Platforms, plugins, and now hooks would 
> all have different process/documentation.  Why not just add hooks 
> support for plugins (I commented as such on the other thread first).
>
> -Michal
>
>
> On Tue, Aug 5, 2014 at 4:31 PM, Brian LeRoux <b...@brian.io> wrote:
>
> > yes! this
> >
> > and related to your earlier thread: maybe hooks themselves should 
> > just be npm modules
> >
> > The hook lookups could walk up node_modules and look for modules 
> > with a package.json that have a "cordova" key… maybe this should go 
> > to the other thread
> >
> >
> > On Tue, Aug 5, 2014 at 1:18 PM, Carlos Santana 
> > <csantan...@gmail.com>
> > wrote:
> >
> > > I started to write hooks, and I got lazy :-)
> > >
> > > What about having a single hook nodejs script that listen on 
> > > cordova events?
> > >
> > > My script will look something like this:
> > >
> > > function worklightBeforePrepare(){ console.log('Running Worklight 
> > > worklightBeforePrepare()'); } function worklightAfterCompile(){ 
> > > console.log('Running Worklight worklightAfterCompile()'); } 
> > > function worklightHooks(cordova_lib){ 
> > > cordova_lib.events.on('before_prepare',worklightBeforePrepare);
> > > cordova_lib.events.on('after_compile',worklightAfterCompile);
> > > }
> > > module.exports = {
> > > run: worklightHooks
> > > }
> > >
> > >
> > > Then when cordova cli starts it always runs my hook script:
> > >
> > > var script = 
> > > path.join(root,'hook/global/worklight_cordova_hook.js');
> > > var hook = require(script);
> > > hook.run(cordova_lib);
> > >
> > >
> > > --
> > > Carlos Santana
> > > <csantan...@gmail.com>
> > >
> >
>

Reply via email to