HeaderCustomTCP.fromJson constructor

HeaderCustomTCP.fromJson(
  1. Object? json
)

Implementation

factory HeaderCustomTCP.fromJson(Object? json) {
  final map = asJsonMap(json, 'header-custom tcp');
  List<List<TCPItem>>? parseSequences(Object? value) {
    if (value == null) return null;
    if (value is! List) {
      throw FormatException('invalid tcp sequence: $value');
    }
    return value.map((sequence) {
      if (sequence is! List) {
        throw FormatException('invalid tcp sequence item: $sequence');
      }
      return sequence.map(TCPItem.fromJson).toList();
    }).toList();
  }

  return HeaderCustomTCP(
    clients: parseSequences(map['clients']),
    servers: parseSequences(map['servers']),
    errors: parseSequences(map['errors']),
  );
}