FlutterCockpitBinding constructor
FlutterCockpitBinding(
- FlutterCockpitConfiguration configuration
Implementation
FlutterCockpitBinding(FlutterCockpitConfiguration configuration)
: _configuration = configuration,
registry =
configuration.registry ??
CockpitTargetRegistry(routeName: configuration.initialRouteName),
nativeCapture =
configuration.nativeCapture ?? const CockpitNativeCapture(),
nativeRecording =
configuration.nativeRecording ?? const CockpitNativeRecording(),
sessionController =
configuration.sessionController ??
CockpitSessionController(
sessionId:
'runtime-${DateTime.now().toUtc().microsecondsSinceEpoch}',
taskId: 'runtime-session',
platform: defaultTargetPlatform.name,
),
networkObserver =
configuration.networkObserver ??
_buildHttpNetworkObserver(configuration.httpNetworkObserver),
runtimeStepBuffer = CockpitRuntimeStepBuffer(),
currentRouteName = ValueNotifier<String>(
_normalizeConfiguredRouteName(configuration.initialRouteName),
) {
rebuildTracker = configuration.diagnostics.enableRebuildTracking
? CockpitRebuildTracker(
routeNameProvider: () => currentRouteName.value,
maxTrackedEntries:
configuration.diagnostics.maxTrackedRebuildEntries,
)
: null;
runtimeObserver =
configuration.runtimeObserver ??
(configuration.runtimeObserverConfiguration.enabled
? configuration.runtimeObserverConfiguration.buildObserver(
routeNameProvider: () => currentRouteName.value,
onCriticalEvent: _recordCriticalRuntimeEvent,
)
: null);
_installNetworkOverridesIfEnabled();
navigatorObserver = _FlutterCockpitNavigatorObserver(_setRouteName);
registry.routeName = _normalizeConfiguredRouteName(
configuration.initialRouteName,
);
}