public static DesfireFile parse(byte i, DesfireFileSettings s, byte[] d) { if (s is Desfire.File.Settings.ValueSettings) return new ValueFile(i, s as Settings.ValueSettings, d); else if (s is RecordSettings) return new RecordFile(i, s as Settings.RecordSettings, d); else if (s is StandardSettings) return new DesfireFile(i, s, d); else if (s is InvalidSettings || d == null) return new InvalidFile(i); else throw new ArgumentException("Unknown settings kind???"); }
public static DesfireFile parse(byte i, DesfireFileSettings s, byte[] d) { if (s is Desfire.File.Settings.ValueSettings) { return(new ValueFile(i, s as Settings.ValueSettings, d)); } else if (s is RecordSettings) { return(new RecordFile(i, s as Settings.RecordSettings, d)); } else if (s is StandardSettings) { return(new DesfireFile(i, s, d)); } else if (s is InvalidSettings || d == null) { return(new InvalidFile(i)); } else { throw new ArgumentException("Unknown settings kind???"); } }
public static DesfireFile parse(byte i, DesfireFileSettings s, byte[] d) { System.Diagnostics.Debug.WriteLine("ZaibatsuPass: Attempting to parse file {0:X} with settings type {0}", i, s.GetType().ToString()); if (s is Desfire.File.Settings.ValueSettings) { return(new ValueFile(i, s as Settings.ValueSettings, d)); } else if (s is RecordSettings) { return(new RecordFile(i, s as Settings.RecordSettings, d)); } else if (s is StandardSettings) { return(new DesfireFile(i, s, d)); } else if (s is InvalidSettings || d == null) { return(new InvalidFile(i)); } else { throw new ArgumentException("Unknown settings kind???"); } }