requestArtifactEncoded method

RitoArtifact requestArtifactEncoded({
  1. required int sessionId,
  2. required Uint8List requestBytes,
})

Implementation

RitoArtifact requestArtifactEncoded({
  required int sessionId,
  required Uint8List requestBytes,
}) {
  final owned = _requestArtifactEncodedWire(
    sessionId: sessionId,
    requestBytes: requestBytes,
  );
  try {
    final artifact = artifactDecoder.decode(owned);
    _validateArtifactIdentity(
      artifact,
      sessionId: sessionId,
      requestId: _acceptedRequestId(requestBytes),
    );
    return artifact;
  } on Object catch (error, stackTrace) {
    if (_releaseAfterFailedArtifact(sessionId, _acceptedArtifactId(owned))) {
      rethrow;
    }
    _disposeAfterFailedSessionOutput(sessionId);
    Error.throwWithStackTrace(
      _terminatedSessionResultError('artifact', error),
      stackTrace,
    );
  }
}