33using System . Diagnostics ;
44using System . IO ;
55using System . Text ;
6+ using System . Text . Json ;
67using System . Threading . Tasks ;
78using System . Windows ;
89using AuroraRgb . Modules . Gamebar ;
910using AuroraRgb . Modules . Logitech ;
1011using AuroraRgb . Modules . Razer ;
1112using AuroraRgb . Utils ;
12- using AuroraRgb . Utils . Json ;
1313using Common . Devices ;
1414using Common . Utils ;
15- using Newtonsoft . Json ;
16- using JsonSerializer = System . Text . Json . JsonSerializer ;
1715
1816namespace AuroraRgb . Settings ;
1917
@@ -68,12 +66,7 @@ private static async Task<Configuration> Parse()
6866 return await CreateDefaultConfigurationFile ( ) ;
6967
7068 var content = await File . ReadAllTextAsync ( Configuration . ConfigFile , Encoding . UTF8 ) ;
71- return JsonConvert . DeserializeObject < Configuration > ( content ,
72- new JsonSerializerSettings
73- {
74- ObjectCreationHandling = ObjectCreationHandling . Replace ,
75- TypeNameHandling = TypeNameHandling . All ,
76- } ) ?? await CreateDefaultConfigurationFile ( ) ;
69+ return JsonSerializer . Deserialize < Configuration > ( content ) ?? await CreateDefaultConfigurationFile ( ) ;
7770 }
7871
7972 public static async Task < DeviceConfig > LoadDeviceConfig ( )
@@ -99,19 +92,14 @@ private static async Task<DeviceConfig> TryLoadDevice()
9992 {
10093 if ( ! File . Exists ( DeviceConfig . ConfigFile ) )
10194 {
102- if ( File . Exists ( Configuration . ConfigFile ) )
103- // v194 Migration
104- return await MigrateDeviceConfig ( ) ;
105-
10695 // first time start
10796 var deviceConfig = new DeviceConfig ( ) ;
10897 await SaveAsync ( deviceConfig ) ;
10998 return deviceConfig ;
110-
11199 }
112100
113101 var content = await File . ReadAllTextAsync ( DeviceConfig . ConfigFile , Encoding . UTF8 ) ;
114- return JsonSerializer . Deserialize ( content , CommonSourceGenerationContext . Default . DeviceConfig ) ?? await MigrateDeviceConfig ( ) ;
102+ return JsonSerializer . Deserialize ( content , CommonSourceGenerationContext . Default . DeviceConfig ) ?? new DeviceConfig ( ) ;
115103 }
116104
117105 public static async Task < GamebarConfig > LoadGamebarConfig ( )
@@ -213,10 +201,7 @@ public static void Save(IAuroraConfig configuration)
213201
214202 LastSaveTimes [ path ] = currentTime ;
215203
216- var content = JsonConvert . SerializeObject ( configuration , Formatting . Indented , new JsonSerializerSettings
217- {
218- TypeNameHandling = TypeNameHandling . Auto , SerializationBinder = new AuroraSerializationBinder ( )
219- } ) ;
204+ var content = JsonSerializer . Serialize ( configuration ) ;
220205
221206 Directory . CreateDirectory ( Path . GetDirectoryName ( path ) ) ;
222207 File . WriteAllText ( path , content , Encoding . UTF8 ) ;
@@ -231,10 +216,7 @@ public static async Task SaveAsync(IAuroraConfig configuration)
231216
232217 LastSaveTimes [ path ] = currentTime ;
233218
234- var content = JsonConvert . SerializeObject ( configuration , Formatting . Indented , new JsonSerializerSettings
235- {
236- TypeNameHandling = TypeNameHandling . Auto , SerializationBinder = new AuroraSerializationBinder ( )
237- } ) ;
219+ var content = JsonSerializer . Serialize ( configuration ) ;
238220
239221 Directory . CreateDirectory ( Path . GetDirectoryName ( path ) ) ;
240222 await File . WriteAllTextAsync ( path , content , Encoding . UTF8 ) ;
@@ -248,20 +230,6 @@ private static async Task<Configuration> CreateDefaultConfigurationFile()
248230 return config ;
249231 }
250232
251- private static async Task < DeviceConfig > MigrateDeviceConfig ( )
252- {
253- Global . logger . Information ( "Migrating default device configuration" ) ;
254- var content = await File . ReadAllTextAsync ( Configuration . ConfigFile , Encoding . UTF8 ) ;
255- var config = JsonConvert . DeserializeObject < DeviceConfig > ( content ,
256- new JsonSerializerSettings
257- {
258- ObjectCreationHandling = ObjectCreationHandling . Replace ,
259- SerializationBinder = new AuroraSerializationBinder ( ) ,
260- } ) ?? new DeviceConfig ( ) ;
261- File . Copy ( Configuration . ConfigFile , Configuration . ConfigFile + ".v194" , true ) ;
262- return config ;
263- }
264-
265233 public static async Task < SensitiveData > LoadSensitiveData ( )
266234 {
267235 var exists = File . Exists ( SensitiveData . ConfigFile ) ;
0 commit comments