33 lines
1008 B
Dart
33 lines
1008 B
Dart
// ignore_for_file: unused_import, unnecessary_import
|
|
|
|
import 'dart:async';
|
|
import 'dart:convert';
|
|
import 'dart:io';
|
|
import 'dart:math';
|
|
import 'package:device_info_plus/device_info_plus.dart';
|
|
import 'package:flutter/foundation.dart';
|
|
import 'package:package_info_plus/package_info_plus.dart';
|
|
import 'package:web_socket_channel/io.dart';
|
|
import '../app/app_metadata.dart';
|
|
import 'device_identity_store.dart';
|
|
import 'platform_environment.dart';
|
|
import 'runtime_models.dart';
|
|
import 'secure_config_store.dart';
|
|
import 'gateway_runtime_protocol.dart';
|
|
import 'gateway_runtime_events.dart';
|
|
import 'gateway_runtime_helpers.dart';
|
|
import 'gateway_runtime_core.dart';
|
|
|
|
class GatewayRuntimeException implements Exception {
|
|
GatewayRuntimeException(this.message, {this.code, this.details});
|
|
|
|
final String message;
|
|
final String? code;
|
|
final Object? details;
|
|
|
|
String? get detailCode => stringValue(asMap(details)['code']);
|
|
|
|
@override
|
|
String toString() => code == null ? message : '$code: $message';
|
|
}
|