@@ -140,6 +140,10 @@ component {
140
140
" beforeProfilerReportPanels" ,
141
141
// After any individual profiler report panels are rendered
142
142
" afterProfilerReportPanels" ,
143
+ // Fires after the module has fully loaded and been configured with all runtime settings
144
+ " onDebuggerLoad" ,
145
+ // Fires after the module is unloaded
146
+ " onDebuggerUnload" ,
143
147
// When the request tracker has been created and placed in request scope
144
148
" onDebuggerRequestTrackerCreation" ,
145
149
// Before the request tracker is saved in the profiler, last chance to influence the recording
@@ -161,14 +165,14 @@ component {
161
165
function onLoad (){
162
166
// Only activate interceptions and collectors if master switch is on or in test mode disable it
163
167
if ( variables .settings .enabled ) {
168
+ var interceptorService = controller .getInterceptorService ();
169
+
164
170
/* ******************* REQUEST COLLECTOR ************************************/
165
171
166
- controller
167
- .getInterceptorService ()
168
- .registerInterceptor (
169
- interceptorClass = " #moduleMapping #.interceptors.RequestCollector" ,
170
- interceptorName = " RequestCollector@cbdebugger"
171
- );
172
+ interceptorService .registerInterceptor (
173
+ interceptorClass = " #moduleMapping #.interceptors.RequestCollector" ,
174
+ interceptorName = " RequestCollector@cbdebugger"
175
+ );
172
176
173
177
/* ******************* OBJECT PROFILING ************************************/
174
178
@@ -195,12 +199,10 @@ component {
195
199
/* ******************* WIREBOX COLLECTOR ************************************/
196
200
197
201
if ( variables .settings .requestTracker .profileWireBoxObjectCreation ) {
198
- controller
199
- .getInterceptorService ()
200
- .registerInterceptor (
201
- interceptorClass = " #moduleMapping #.interceptors.WireBoxCollector" ,
202
- interceptorName = " WireBoxCollector@cbdebugger"
203
- );
202
+ interceptorService .registerInterceptor (
203
+ interceptorClass = " #moduleMapping #.interceptors.WireBoxCollector" ,
204
+ interceptorName = " WireBoxCollector@cbdebugger"
205
+ );
204
206
}
205
207
206
208
/* ******************* PROFILE INTERCEPTIONS ************************************/
@@ -234,34 +236,28 @@ component {
234
236
/* ******************* QB COLLECTOR ************************************/
235
237
236
238
if ( variables .settings .qb .enabled && controller .getModuleService ().isModuleRegistered ( " qb" ) ) {
237
- controller
238
- .getInterceptorService ()
239
- .registerInterceptor (
240
- interceptorClass = " #moduleMapping #.interceptors.QBCollector" ,
241
- interceptorName = " QBCollector@cbdebugger"
242
- );
239
+ interceptorService .registerInterceptor (
240
+ interceptorClass = " #moduleMapping #.interceptors.QBCollector" ,
241
+ interceptorName = " QBCollector@cbdebugger"
242
+ );
243
243
}
244
244
245
245
/* ******************* QUICK COLLECTOR ************************************/
246
246
247
247
if ( variables .settings .qb .enabled && controller .getModuleService ().isModuleRegistered ( " quick" ) ) {
248
- controller
249
- .getInterceptorService ()
250
- .registerInterceptor (
251
- interceptorClass = " #moduleMapping #.interceptors.QuickCollector" ,
252
- interceptorName = " QuickCollector@cbdebugger"
253
- );
248
+ interceptorService .registerInterceptor (
249
+ interceptorClass = " #moduleMapping #.interceptors.QuickCollector" ,
250
+ interceptorName = " QuickCollector@cbdebugger"
251
+ );
254
252
}
255
253
256
254
/* ******************* CBORM COLLECTOR ************************************/
257
255
258
256
if ( variables .settings .cborm .enabled && controller .getModuleService ().isModuleRegistered ( " cborm" ) ) {
259
- controller
260
- .getInterceptorService ()
261
- .registerInterceptor (
262
- interceptorClass = " #moduleMapping #.interceptors.CBOrmCollector" ,
263
- interceptorName = " CBOrmCollector@cbdebugger"
264
- );
257
+ interceptorService .registerInterceptor (
258
+ interceptorClass = " #moduleMapping #.interceptors.CBOrmCollector" ,
259
+ interceptorName = " CBOrmCollector@cbdebugger"
260
+ );
265
261
}
266
262
267
263
/* ******************* ACFSQL COLLECTOR ************************************/
@@ -270,15 +266,16 @@ component {
270
266
if (
271
267
variables .settings .acfSql .enabled && ! server .keyExists ( " lucee" ) && server .coldfusion .productVersion .listFirst () gt " 2016"
272
268
) {
273
- controller
274
- .getInterceptorService ()
275
- .registerInterceptor (
276
- interceptorClass = " #moduleMapping #.interceptors.ACFSqlCollector" ,
277
- interceptorName = " ACFSqlCollector@cbdebugger"
278
- );
269
+ interceptorService .registerInterceptor (
270
+ interceptorClass = " #moduleMapping #.interceptors.ACFSqlCollector" ,
271
+ interceptorName = " ACFSqlCollector@cbdebugger"
272
+ );
279
273
} else {
280
274
variables .settings .acfSql .enabled = false ;
281
275
}
276
+
277
+ // Announce debugger loaded
278
+ interceptorService .announce ( " onDebuggerLoad" );
282
279
}
283
280
// end master switch
284
281
}
@@ -289,11 +286,15 @@ component {
289
286
function onUnload (){
290
287
// Only if we are enabled
291
288
if ( variables .settings .enabled ) {
292
- controller .getInterceptorService ().unregister ( " RequestCollector@cbdebugger" );
293
- controller .getInterceptorService ().unregister ( " QBCollector@cbdebugger" );
294
- controller .getInterceptorService ().unregister ( " QuickCollector@cbdebugger" );
295
- controller .getInterceptorService ().unregister ( " CBOrmCollector@cbdebugger" );
296
- controller .getInterceptorService ().unregister ( " ACFSqlCollector@cbdebugger" );
289
+ var interceptorService = controller .getInterceptorService ();
290
+
291
+ interceptorService .announce ( " onDebuggerUnload" );
292
+ interceptorService .unregister ( " RequestCollector@cbdebugger" );
293
+ interceptorService .unregister ( " WireBoxCollector@cbdebugger" );
294
+ interceptorService .unregister ( " QBCollector@cbdebugger" );
295
+ interceptorService .unregister ( " QuickCollector@cbdebugger" );
296
+ interceptorService .unregister ( " CBOrmCollector@cbdebugger" );
297
+ interceptorService .unregister ( " ACFSqlCollector@cbdebugger" );
297
298
}
298
299
}
299
300
0 commit comments