88
99import java .util .ArrayList ;
1010import java .util .Collections ;
11+ import java .util .LinkedHashMap ;
1112import java .util .LinkedHashSet ;
1213import java .util .List ;
1314import java .util .Map ;
@@ -282,6 +283,26 @@ public String shortSummary() {
282283
283284 }
284285
286+ public Map <String , Object > shortSummaryMap () {
287+ Map <String , Object > result = new LinkedHashMap <>();
288+ result .put ("executionId" , Assert .assertNotNull (executionId ));
289+ result .put ("operation" , operationType + ":" + operationName );
290+ result .put ("startTime" , startTime );
291+ result .put ("endTime" , endTime );
292+ result .put ("totalRunTime" , (endTime - startTime ) + "(" + (endTime - startTime ) / 1_000_000 + "ms)" );
293+ result .put ("engineTotalRunningTime" , engineTotalRunningTime + "(" + engineTotalRunningTime / 1_000_000 + "ms)" );
294+ result .put ("totalDataFetcherInvocations" , totalDataFetcherInvocations );
295+ result .put ("totalPropertyDataFetcherInvocations" , totalPropertyDataFetcherInvocations );
296+ result .put ("fieldsFetchedCount" , fieldsFetched .size ());
297+ result .put ("dataLoaderChainingEnabled" , dataLoaderChainingEnabled );
298+ result .put ("dataLoaderLoadInvocations" , dataLoaderLoadInvocations );
299+ result .put ("oldStrategyDispatchingAll" , oldStrategyDispatchingAll );
300+ result .put ("chainedStrategyDispatching" , chainedStrategyDispatching );
301+ result .put ("dispatchEvents" , getDispatchEventsAsMap ());
302+ return result ;
303+ }
304+
305+
285306 private String printDispatchEvents () {
286307 if (dispatchEvents .isEmpty ()) {
287308 return "[]" ;
@@ -303,6 +324,18 @@ private String printDispatchEvents() {
303324 return sb .toString ();
304325 }
305326
327+ public List <Map <String , Object >> getDispatchEventsAsMap () {
328+ List <Map <String , Object >> result = new ArrayList <>();
329+ for (DispatchEvent event : dispatchEvents ) {
330+ Map <String , Object > eventMap = new LinkedHashMap <>();
331+ eventMap .put ("dataLoader" , event .getDataLoaderName ());
332+ eventMap .put ("level" , event .getLevel () != null ? event .getLevel () : "delayed" );
333+ eventMap .put ("count" , event .getCount ());
334+ result .add (eventMap );
335+ }
336+ return result ;
337+ }
338+
306339 @ Override
307340 public String toString () {
308341 return shortSummary ();
0 commit comments