// // Copyright (c) 2018 Open Whisper Systems. All rights reserved. // #import "OWS102MoveLoggingPreferenceToUserDefaults.h" #import "DebugLogger.h" #import "Environment.h" #import "OWSPreferences.h" #import // Increment a similar constant for every future DBMigration static NSString *const OWS102MoveLoggingPreferenceToUserDefaultsMigrationId = @"102"; @implementation OWS102MoveLoggingPreferenceToUserDefaults + (NSString *)migrationId { return OWS102MoveLoggingPreferenceToUserDefaultsMigrationId; } - (void)runUpWithTransaction:(YapDatabaseReadWriteTransaction *)transaction { OWSAssert(transaction); DDLogWarn(@"[OWS102MoveLoggingPreferenceToUserDefaultsMigrationId] copying existing logging preference to " @"NSUserDefaults"); NSNumber *existingValue = [transaction objectForKey:OWSPreferencesKeyEnableDebugLog inCollection:OWSPreferencesSignalDatabaseCollection]; if (existingValue) { DDLogInfo(@"%@ assigning existing value: %@", self.logTag, existingValue); [OWSPreferences setIsLoggingEnabled:[existingValue boolValue]]; if (![existingValue boolValue]) { DDLogInfo(@"%@ Disabling file logger after one-time log settings migration.", self.logTag); // Since we're migrating, we didn't have the appropriate value on startup, and incorrectly started logging. [DebugLogger.sharedLogger disableFileLogging]; } else { DDLogInfo(@"%@ Continuing to log after one-time log settings migration.", self.logTag); } } else { DDLogInfo(@"%@ not assigning any value, since no previous value was stored.", self.logTag); } } @end