Transaction.fromBinary constructor

Transaction.fromBinary(
  1. Uint8List frame,
  2. int offset,
  3. int size
)

Implementation

factory Transaction.fromBinary(Uint8List frame, int offset, int size) {
  frame = frame.sublist(offset);
  Transaction tr = Transaction(0, "", "", 0, 0, 0, 0, Uint8List(0));
  tr.frameType = frame[8];
  tr.transactionId = frame.buffer.asUint64List(16)[0];
  tr.sessionId = frame.buffer.asUint64List(24)[0];
  tr.offset = frame.buffer.asUint32List(32)[0];
  tr.totalSize = frame.buffer.asUint32List(36)[0];

  tr.srcAddress = "#" +
      base32.encode(Uint8List.fromList(frame.sublist(40, 70))).toLowerCase();
  tr.destAddress = "#" +
      base32.encode(Uint8List.fromList(frame.sublist(70, 100))).toLowerCase();

  tr.data = frame.sublist(128, size);
  return tr;
}