56 lines
1.1 KiB
Dart
Raw Normal View History

import 'package:flowy_sdk/protobuf/errors.pb.dart';
2021-07-09 08:42:52 +08:00
import 'package:flowy_sdk/protobuf/ffi_response.pb.dart';
2021-07-09 08:44:52 +08:00
class FlowyError {
late FFIStatusCode _statusCode;
late String _error;
FFIStatusCode get statusCode {
return _statusCode;
}
String get error {
return _error;
}
bool get has_error {
return _statusCode != FFIStatusCode.Ok;
}
String toString() {
return "$_statusCode: $_error";
}
FlowyError({required FFIStatusCode statusCode, required String error}) {
_statusCode = statusCode;
_error = error;
}
factory FlowyError.from(FFIResponse resp) {
return FlowyError(statusCode: resp.code, error: "");
2021-07-09 08:44:52 +08:00
}
UserError userErrorFromFlowyError() {
return UserError.create()
..code = UserErrorCode.Unknown
..msg = this.toString();
2021-07-09 08:44:52 +08:00
}
}
2021-07-09 08:42:52 +08:00
class StackTraceError {
Object error;
StackTrace trace;
StackTraceError(
this.error,
this.trace,
);
FlowyError asFlowyError() {
return FlowyError(statusCode: FFIStatusCode.Err, error: this.toString());
2021-07-09 08:42:52 +08:00
}
String toString() {
return '${error.runtimeType}. Stack trace: $trace';
}
}