public void GetFullHistory() { if (_monitor == null || !_monitor.Monitoring) { OnCompleted(new DriverCardCompletedEventArgs { Operation = SmartCardReadOperation.History, Exception = new Exception(Resources.EXC_NO_SMART_CARD_READERS_FOUND) }); return; } SafelyWithRetry(SmartCardReadOperation.History, () => { string xml = ReadSmartCard("/calibrations"); if (string.IsNullOrEmpty(xml)) { OnCompleted(new DriverCardCompletedEventArgs { Operation = SmartCardReadOperation.History }); return; } XDocument document = XDocument.Parse(xml); var history = CalibrationRecordParser.ParseMany(document); OnCompleted(new DriverCardCompletedEventArgs { Operation = SmartCardReadOperation.History, CalibrationHistory = history }); }); }
public void FastRead(bool autoRead) { if (_monitor == null || !_monitor.Monitoring) { OnCompleted(new DriverCardCompletedEventArgs { Exception = new Exception(Resources.EXC_NO_SMART_CARD_READERS_FOUND), Operation = SmartCardReadOperation.Fast }); return; } SafelyWithRetry(SmartCardReadOperation.Fast, () => { string content = ReadSmartCard(string.Empty); if (string.IsNullOrEmpty(content)) { OnCompleted(new DriverCardCompletedEventArgs { AutoRead = autoRead, Operation = SmartCardReadOperation.Fast, Exception = new Exception(Resources.EXC_UNABLE_READ_SMART_CARD) }); return; } XDocument document = XDocument.Parse(content); var calibrationRecord = CalibrationRecordParser.Parse(document); OnCompleted(new DriverCardCompletedEventArgs { AutoRead = autoRead, Operation = SmartCardReadOperation.Fast, CalibrationRecord = calibrationRecord }); }); }