private void OnDeserialized(StreamingContext context) { if (Faction == null) { Faction = new Faction(); } FactionPresence factionPresence = Faction.presences.FirstOrDefault(p => p.systemName == name) ?? new FactionPresence(); if (factionPresence.FactionState == null) { // Convert legacy data string name = (string)additionalJsonData?["state"]; if (name != null) { Faction.presences.FirstOrDefault(p => p.systemName == name).FactionState = FactionState.FromEDName(name ?? "None"); } } else { // get the canonical FactionState object for the given EDName factionPresence.FactionState = FactionState.FromEDName(Faction.presences.FirstOrDefault(p => p.systemName == name)?.FactionState.edname ?? "None"); } additionalJsonData = null; }
private void OnFactionDeserialized() { if (Faction == null) { Faction = new Faction(); } FactionPresence factionPresence = Faction.presences.FirstOrDefault(p => p.systemName == systemname) ?? new FactionPresence(); if (factionPresence.FactionState == null) { // Convert legacy data if (additionalJsonData.ContainsKey("state")) { string factionState = (string)additionalJsonData?["state"]; if (factionState != null) { factionPresence.FactionState = FactionState.FromEDName(factionState) ?? FactionState.None; } } } else { // get the canonical FactionState object for the given EDName factionPresence.FactionState = FactionState.FromEDName(Faction.presences.FirstOrDefault(p => p.systemName == systemname)?.FactionState.edname) ?? FactionState.None; } }