error static method

StompFrame error({
  1. required String message,
  2. String? receiptId,
  3. String? body,
  4. Uint8List? bodyBytes,
  5. Map<String, String>? additionalHeaders,
})

Creates an ERROR frame

Implementation

static StompFrame error({
  required String message,
  String? receiptId,
  String? body,
  Uint8List? bodyBytes,
  Map<String, String>? additionalHeaders,
}) {
  final headers = <String, String>{
    StompHeaders.message: message,
  };

  if (receiptId != null) headers[StompHeaders.receiptId] = receiptId;
  if (additionalHeaders != null) headers.addAll(additionalHeaders);

  Uint8List? frameBody;
  if (body != null) {
    frameBody = Uint8List.fromList(utf8.encode(body));
  } else if (bodyBytes != null) {
    frameBody = bodyBytes;
  }

  if (frameBody != null) {
    headers[StompHeaders.contentLength] = frameBody.length.toString();
    headers[StompHeaders.contentType] = 'text/plain';
  }

  return StompFrame(command: StompCommands.error, headers: headers, body: frameBody);
}