@@ -7,7 +7,7 @@ component {
7
7
8
8
// Module Properties
9
9
this .title = " ColdBox Debugger" ;
10
- this .author = " Curt Gratz - Ortus Solutions" ;
10
+ this .author = " Ortus Solutions" ;
11
11
this .
version = " @build.version@[email protected] @" ;
12
12
this .webURL = " https://www.ortussolutions.com" ;
13
13
this .description = " The ColdBox Debugger Module" ;
@@ -45,8 +45,8 @@ component {
45
45
requestPanelDock : true ,
46
46
// Request Tracker Options
47
47
requestTracker : {
48
- // Store the request profilers in heap memory or in cachebox, default is cachebox
49
- storage : " cachebox " ,
48
+ // Store the request profilers in heap memory or in cachebox, default is memory
49
+ storage : " memory " ,
50
50
// Which cache region to store the profilers in
51
51
cacheName : " template" ,
52
52
// Track all cbdebugger events, by default this is off, turn on, when actually profiling yourself :) How Meta!
@@ -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,16 +165,16 @@ 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
- /* ******************* PROFILE OBJECTS ************************************/
177
+ /* ******************* OBJECT PROFILING ************************************/
174
178
175
179
if ( variables .settings .requestTracker .profileObjects ) {
176
180
// Object Profiler Aspect
@@ -192,6 +196,15 @@ component {
192
196
);
193
197
}
194
198
199
+ /* ******************* WIREBOX COLLECTOR ************************************/
200
+
201
+ if ( variables .settings .requestTracker .profileWireBoxObjectCreation ) {
202
+ interceptorService .registerInterceptor (
203
+ interceptorClass = " #moduleMapping #.interceptors.WireBoxCollector" ,
204
+ interceptorName = " WireBoxCollector@cbdebugger"
205
+ );
206
+ }
207
+
195
208
/* ******************* PROFILE INTERCEPTIONS ************************************/
196
209
197
210
if ( variables .settings .requestTracker .profileInterceptions ) {
@@ -223,51 +236,43 @@ component {
223
236
/* ******************* QB COLLECTOR ************************************/
224
237
225
238
if ( variables .settings .qb .enabled && controller .getModuleService ().isModuleRegistered ( " qb" ) ) {
226
- controller
227
- .getInterceptorService ()
228
- .registerInterceptor (
229
- interceptorClass = " #moduleMapping #.interceptors.QBCollector" ,
230
- interceptorName = " QBCollector@cbdebugger"
231
- );
239
+ interceptorService .registerInterceptor (
240
+ interceptorClass = " #moduleMapping #.interceptors.QBCollector" ,
241
+ interceptorName = " QBCollector@cbdebugger"
242
+ );
232
243
}
233
244
234
245
/* ******************* QUICK COLLECTOR ************************************/
235
246
236
247
if ( variables .settings .qb .enabled && controller .getModuleService ().isModuleRegistered ( " quick" ) ) {
237
- controller
238
- .getInterceptorService ()
239
- .registerInterceptor (
240
- interceptorClass = " #moduleMapping #.interceptors.QuickCollector" ,
241
- interceptorName = " QuickCollector@cbdebugger"
242
- );
248
+ interceptorService .registerInterceptor (
249
+ interceptorClass = " #moduleMapping #.interceptors.QuickCollector" ,
250
+ interceptorName = " QuickCollector@cbdebugger"
251
+ );
243
252
}
244
253
245
254
/* ******************* CBORM COLLECTOR ************************************/
246
255
247
256
if ( variables .settings .cborm .enabled && controller .getModuleService ().isModuleRegistered ( " cborm" ) ) {
248
- controller
249
- .getInterceptorService ()
250
- .registerInterceptor (
251
- interceptorClass = " #moduleMapping #.interceptors.CBOrmCollector" ,
252
- interceptorName = " CBOrmCollector@cbdebugger"
253
- );
257
+ interceptorService .registerInterceptor (
258
+ interceptorClass = " #moduleMapping #.interceptors.CBOrmCollector" ,
259
+ interceptorName = " CBOrmCollector@cbdebugger"
260
+ );
254
261
}
255
262
256
263
/* ******************* ACFSQL COLLECTOR ************************************/
257
264
258
- // Do not load on lucee or ACF 2016
259
- if (
260
- variables .settings .acfSql .enabled && ! server .keyExists ( " lucee" ) && server .coldfusion .productVersion .listFirst () gt " 2016"
261
- ) {
262
- controller
263
- .getInterceptorService ()
264
- .registerInterceptor (
265
- interceptorClass = " #moduleMapping #.interceptors.ACFSqlCollector" ,
266
- interceptorName = " ACFSqlCollector@cbdebugger"
267
- );
265
+ if ( variables .settings .acfSql .enabled && ! server .keyExists ( " lucee" ) ) {
266
+ interceptorService .registerInterceptor (
267
+ interceptorClass = " #moduleMapping #.interceptors.ACFSqlCollector" ,
268
+ interceptorName = " ACFSqlCollector@cbdebugger"
269
+ );
268
270
} else {
269
271
variables .settings .acfSql .enabled = false ;
270
272
}
273
+
274
+ // Announce debugger loaded
275
+ interceptorService .announce ( " onDebuggerLoad" );
271
276
}
272
277
// end master switch
273
278
}
@@ -278,11 +283,15 @@ component {
278
283
function onUnload (){
279
284
// Only if we are enabled
280
285
if ( variables .settings .enabled ) {
281
- controller .getInterceptorService ().unregister ( " RequestCollector@cbdebugger" );
282
- controller .getInterceptorService ().unregister ( " QBCollector@cbdebugger" );
283
- controller .getInterceptorService ().unregister ( " QuickCollector@cbdebugger" );
284
- controller .getInterceptorService ().unregister ( " CBOrmCollector@cbdebugger" );
285
- controller .getInterceptorService ().unregister ( " ACFSqlCollector@cbdebugger" );
286
+ var interceptorService = controller .getInterceptorService ();
287
+
288
+ interceptorService .announce ( " onDebuggerUnload" );
289
+ interceptorService .unregister ( " RequestCollector@cbdebugger" );
290
+ interceptorService .unregister ( " WireBoxCollector@cbdebugger" );
291
+ interceptorService .unregister ( " QBCollector@cbdebugger" );
292
+ interceptorService .unregister ( " QuickCollector@cbdebugger" );
293
+ interceptorService .unregister ( " CBOrmCollector@cbdebugger" );
294
+ interceptorService .unregister ( " ACFSqlCollector@cbdebugger" );
286
295
}
287
296
}
288
297
0 commit comments