RsaIdCard.fromBarcodeString constructor
RsaIdCard.fromBarcodeString(
- String barcodeString
Returns a SmartId
instance from the String read from the
barcode of the ID.
The barcodeString is expected to be in the following format: SURNAME|NAME|GENDER|NATIONALITY|ID NUMBER|BIRTH DATE|COUNTRY OF BIRTH|CITIZENSHIP STATUS|ISSUE DATE|23370|SMART ID NUMBER|1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890
If the format above is not adhered to an a FormatException will be thrown.
Implementation
factory RsaIdCard.fromBarcodeString(String barcodeString) {
try {
var fields = barcodeString.split('|');
var surname = fields[0];
var firstNames = fields[1];
var gender = fields[2];
var nationality = fields[3];
var idNumber = fields[4];
var birthDate = _dateFromShortString(fields[5]);
var countryOfBirth = fields[6];
var citizenshipStatus = fields[7];
var issueDate = _dateFromShortString(fields[8]);
var smartIdNumber = fields[10];
return RsaIdCard(
idNumber: idNumber,
firstNames: firstNames,
surname: surname,
gender: gender,
birthDate: birthDate,
issueDate: issueDate,
smartIdNumber: smartIdNumber,
nationality: nationality,
countryOfBirth: countryOfBirth,
citizenshipStatus: citizenshipStatus,
);
} catch (e) {
throw FormatException(
'Could not instantiate Smart ID from given barcode String: $e');
}
}