readResource method
RitoResource
readResource({
- required int sessionId,
- required int artifactId,
- required RitoResourceKind kind,
- required String href,
Implementation
RitoResource readResource({
required int sessionId,
required int artifactId,
required RitoResourceKind kind,
required String href,
}) {
final owned = _readResourceWire(
sessionId: sessionId,
artifactId: artifactId,
kind: kind,
href: href,
);
try {
final resource = resourceDecoder.decode(owned);
if (resource.artifactId != artifactId ||
resource.kind != kind ||
resource.href != href) {
throw const RitoNativeException(
status: 4,
message: 'Native resource identity does not match its request.',
);
}
return resource;
} on Object catch (error, stackTrace) {
_disposeAfterFailedSessionOutput(sessionId);
Error.throwWithStackTrace(
_terminatedSessionResultError('resource', error),
stackTrace,
);
}
}