AWSParser/lib/awsparser.dart
2024-11-21 21:27:09 -07:00

64 lines
1.5 KiB
Dart

class AWSJson {
String syncToken = "";
String createDate = "";
List<AWSIPv4> prefixes = [];
List<AWSIPv6> ipv6_prefixes = [];
AWSJson._();
factory AWSJson.parse(Map<String, dynamic> js) {
AWSJson ajs = AWSJson._();
ajs.syncToken = js['syncToken'] as String;
ajs.createDate = js['createDate'] as String;
List<dynamic> LPv4 = js['prefixes'] as List<dynamic>;
for (var entry in LPv4) {
ajs.prefixes.add(AWSIPv4.parse(entry as Map<String, dynamic>));
}
List<dynamic> LPv6 = js['ipv6_prefixes'] as List<dynamic>;
for (var entry in LPv6) {
ajs.ipv6_prefixes.add(AWSIPv6.parse(entry as Map<String, dynamic>));
}
return ajs;
}
}
class AWSIPv4 {
String ip_prefix = "";
String region = "";
String service = "";
String network_border_group = "";
AWSIPv4._();
factory AWSIPv4.parse(Map<String, dynamic> js) {
AWSIPv4 ip = AWSIPv4._();
ip.ip_prefix = js['ip_prefix'] as String;
ip.region = js['region'] as String;
ip.service = js['service'] as String;
ip.network_border_group = js['network_border_group'] as String;
return ip;
}
}
class AWSIPv6 {
String ipv6_prefix = "";
String region = "";
String service = "";
String network_border_group = "";
AWSIPv6._();
factory AWSIPv6.parse(Map<String, dynamic> js) {
AWSIPv6 ip = AWSIPv6._();
ip.ipv6_prefix = js['ipv6_prefix'] as String;
ip.region = js['region'] as String;
ip.service = js['service'] as String;
ip.network_border_group = js['network_border_group'] as String;
return ip;
}
}