call method
takes a ByteToken as argument and returns it if valid
Implementation
ByteToken call(ByteToken p0) {
if (!p0.signature.equals(signature(p0.payload))) {
throw Exception('signature not valid for $p0');
}
if (p0.payload.expirationTime == null) {
throw Exception('invalid token expiration time\n$p0');
}
if (p0.payload.expirationTime! <
DateTime.now().toUtc().millisecondsSinceEpoch) {
throw Exception('token expired\n$p0');
}
return p0;
}