Interceptor not working

I’m trying to declare an interceptor for QB:

  • in config/Coldbox.cfc:
    interceptors = [
      {
		    class = "interceptors.qbInterceptor",
        name = "myQBInterceptor"
      }
    ];
  • in interceptors/qbInterceptor.cfc
component extends="coldbox.system.Interceptor"{


	function configure() {
	}

	function preQBExecute( event, data, buffer, rc, prc ) {
       log.info("in preQBExecute");
	}

}

Reload coldbox, but when using a simple qb.get() it’s not firing:

getInstance( “QueryBuilder@qb” ).from(‘users’).get()

I think you might need to look into “custom interception points”. I don’t recognize “preQBExecute”.

If your function doesn’t match a standard interception point name (like preProcess), then you have to tell Coldbox (via config file) that “x” (preQBExecute) is an interception to expect. In addition, though, you have to call it somehow. If it’s not a native interception point, then it wouldn’t be called.

Your .get() doesn’t automatically fire that, I wouldn’t think.

I think that preQBExecute its a native qb module interception:

(I have coldbox preProcess interception that runs ok)

Hi, @David_Sedeno. I think we need some more information. I was able to coldbox create app, install qb, and set up the interceptor like you have above and I’m getting the log as expected.

Can you provide us:

  1. ColdBox version
  2. qb version

Hi @elpete

QB Vers: 8.7.4 (inside Quick module)
Coldbox: 5.6.2 (we known we need to upgrade :slight_smile: )

And what version of Quick?

Quick version: 4.2.4