parseUri static method
---- URI HANDLING --- ///
Implementation
static Map<String, dynamic> parseUri(Uri uri) {
Map<String, dynamic> ret = {};
String protocol = uri.scheme;
String path = uri.path;
final List<String> splitParams = path.split('@');
if (splitParams.length == 1) {
throw Error(
code: 0,
message: 'Invalid URI: Missing @',
);
}
ret['protocol'] = protocol;
ret['topic'] = splitParams[0];
ret['version'] = splitParams[1];
ret['symKey'] = uri.queryParameters['symKey']!;
ret['relay'] = Relay(
uri.queryParameters['relay-protocol']!,
data: uri.queryParameters.containsKey('relay-data')
? uri.queryParameters['relay-data']
: null,
);
// print(ret);
return ret;
}