copyWith method

TrackerConfig copyWith({
  1. AccuracyMode? accuracyMode,
  2. double? distanceFilter,
  3. int? timeInterval,
  4. bool? enableAdaptiveTracking,
  5. int? lowBatteryThreshold,
  6. bool? enableMotionDetection,
  7. int? stationaryTimeout,
  8. bool? enableActivityRecognition,
  9. int? maxDatabaseSize,
  10. int? dataRetentionDays,
  11. String? syncUrl,
  12. Map<String, String>? syncHeaders,
  13. int? syncBatchSize,
  14. int? syncInterval,
})

Create a copy with modified fields

Implementation

TrackerConfig copyWith({
  AccuracyMode? accuracyMode,
  double? distanceFilter,
  int? timeInterval,
  bool? enableAdaptiveTracking,
  int? lowBatteryThreshold,
  bool? enableMotionDetection,
  int? stationaryTimeout,
  bool? enableActivityRecognition,
  int? maxDatabaseSize,
  int? dataRetentionDays,
  String? syncUrl,
  Map<String, String>? syncHeaders,
  int? syncBatchSize,
  int? syncInterval,
}) {
  return TrackerConfig(
    accuracyMode: accuracyMode ?? this.accuracyMode,
    distanceFilter: distanceFilter ?? this.distanceFilter,
    timeInterval: timeInterval ?? this.timeInterval,
    enableAdaptiveTracking: enableAdaptiveTracking ?? this.enableAdaptiveTracking,
    lowBatteryThreshold: lowBatteryThreshold ?? this.lowBatteryThreshold,
    enableMotionDetection: enableMotionDetection ?? this.enableMotionDetection,
    stationaryTimeout: stationaryTimeout ?? this.stationaryTimeout,
    enableActivityRecognition: enableActivityRecognition ?? this.enableActivityRecognition,
    maxDatabaseSize: maxDatabaseSize ?? this.maxDatabaseSize,
    dataRetentionDays: dataRetentionDays ?? this.dataRetentionDays,
    syncUrl: syncUrl ?? this.syncUrl,
    syncHeaders: syncHeaders ?? this.syncHeaders,
    syncBatchSize: syncBatchSize ?? this.syncBatchSize,
    syncInterval: syncInterval ?? this.syncInterval,
  );
}