fromPacket static method

Packet fromPacket(
  1. String raw
)

Implementation

static Packet fromPacket(String raw) {
  // Client packets
  if (raw.startsWith('<Pc>') && raw.endsWith('</Pc>')) return PcPacket.fromPacket(raw);
  if (raw.startsWith('<Pi>') && raw.endsWith('</Pi>')) return PiPacket.fromPacket(raw);
  if (raw.startsWith('<Pd>') && raw.endsWith('</Pd>')) return PdPacket.fromPacket(raw);
  if (raw.startsWith('<Ps>') && raw.endsWith('</Ps>')) return PsPacket.fromPacket(raw);
  if (raw.startsWith('<Pb>') && raw.endsWith('</Pb>')) return PbPacket.fromPacket(raw);
  if (raw.startsWith('<Pa>') && raw.endsWith('</Pa>')) return PaPacket.fromPacket(raw);
  if (raw.startsWith('<Pr>') && raw.endsWith('</Pr>')) return PrPacket.fromPacket(raw);
  if (raw.startsWith('<Pm>') && raw.endsWith('</Pm>')) return PmPacket.fromPacket(raw);

  // Server packets
  if (raw.startsWith('<Ao>') && raw.endsWith('</Ao>')) return AoPacket.fromPacket(raw);
  if (raw.startsWith('<Ac>') && raw.endsWith('</Ac>')) return AcPacket.fromPacket(raw);
  if (raw.startsWith('<Ar>') && raw.endsWith('</Ar>')) return ArPacket.fromPacket(raw);
  if (raw.startsWith('<Ab>') && raw.endsWith('</Ab>')) return AbPacket.fromPacket(raw);
  if (raw.startsWith('<As>') && raw.endsWith('</As>')) return AsPacket.fromPacket(raw);
  // ignore: deprecated_member_use_from_same_package
  if (raw.startsWith('<Au>') && raw.endsWith('</Au>')) return AuPacket.fromPacket(raw);

  // Trips packets
  if (raw.startsWith('<Ts>') && raw.endsWith('</Ts>')) return TsPacket.fromPacket(raw);
  if (raw.startsWith('<Te>') && raw.endsWith('</Te>')) return TePacket.fromPacket(raw);

  // AI packets
  if (raw.startsWith('<Im>') && raw.endsWith('</Im>')) return ImPacket.fromPacket(raw);

  // ignore: avoid_print
  print('Invalid packet: $raw');
  throw MalformedException('Invalid packet type');
}