mirror of
https://github.com/localsend/localsend.git
synced 2026-08-07 07:14:52 +00:00
feat(core): update device logs structure
This commit is contained in:
@@ -1,7 +1,8 @@
|
|||||||
mod store;
|
mod store;
|
||||||
|
|
||||||
pub use store::{
|
pub use store::{
|
||||||
ChannelStatus, DeviceChannel, DeviceLog, DiscoveredDevice, HttpChannel, StatefulDevice,
|
ChannelStatus, DeviceChannel, DeviceLog, DeviceLogKind, DiscoveredDevice, HttpChannel,
|
||||||
|
StatefulDevice,
|
||||||
};
|
};
|
||||||
|
|
||||||
use crate::http::client::{ClientError, LsHttpClientV2};
|
use crate::http::client::{ClientError, LsHttpClientV2};
|
||||||
|
|||||||
@@ -66,11 +66,27 @@ pub enum ChannelStatus {
|
|||||||
NotReachable,
|
NotReachable,
|
||||||
}
|
}
|
||||||
|
|
||||||
/// A [`DiscoveryEvent`] that affected a device, with the time it happened.
|
/// A confirmation of a device, as retained on it for display.
|
||||||
#[derive(Clone, Debug)]
|
#[derive(Clone, Debug)]
|
||||||
pub struct DeviceLog {
|
pub struct DeviceLog {
|
||||||
pub timestamp: SystemTime,
|
pub timestamp: SystemTime,
|
||||||
pub event: DiscoveryEvent,
|
|
||||||
|
/// Whether the confirmation discovered the device or re-confirmed it.
|
||||||
|
pub kind: DeviceLogKind,
|
||||||
|
|
||||||
|
/// The channel the confirmation happened on.
|
||||||
|
pub channel: DeviceChannel,
|
||||||
|
}
|
||||||
|
|
||||||
|
/// What a logged confirmation meant for the device, mirroring the
|
||||||
|
/// [`DiscoveryEvent`] variants.
|
||||||
|
#[derive(Clone, Copy, Debug, Eq, PartialEq)]
|
||||||
|
pub enum DeviceLogKind {
|
||||||
|
/// The device entered the store.
|
||||||
|
Discovered,
|
||||||
|
|
||||||
|
/// An already known device was confirmed again.
|
||||||
|
Updated,
|
||||||
}
|
}
|
||||||
|
|
||||||
impl StatefulDevice {
|
impl StatefulDevice {
|
||||||
@@ -93,11 +109,7 @@ impl StatefulDevice {
|
|||||||
/// The position of the channel's most recent confirmation in the logs;
|
/// The position of the channel's most recent confirmation in the logs;
|
||||||
/// `None` when its confirmations have been dropped from the log cap.
|
/// `None` when its confirmations have been dropped from the log cap.
|
||||||
fn last_confirmed(&self, channel: &DeviceChannel) -> Option<usize> {
|
fn last_confirmed(&self, channel: &DeviceChannel) -> Option<usize> {
|
||||||
self.logs.iter().rposition(|log| {
|
self.logs.iter().rposition(|log| log.channel == *channel)
|
||||||
let (DiscoveryEvent::Discovered { device } | DiscoveryEvent::Updated { device }) =
|
|
||||||
&log.event;
|
|
||||||
device.channel == *channel
|
|
||||||
})
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -192,10 +204,6 @@ impl DeviceStore {
|
|||||||
.find(|known| known.device.fingerprint == device.fingerprint)
|
.find(|known| known.device.fingerprint == device.fingerprint)
|
||||||
{
|
{
|
||||||
Some(known) => {
|
Some(known) => {
|
||||||
let event = DiscoveryEvent::Updated {
|
|
||||||
device: device.clone(),
|
|
||||||
};
|
|
||||||
|
|
||||||
known
|
known
|
||||||
.channels
|
.channels
|
||||||
.retain(|channel, _| !channel.same_endpoint(&device.channel));
|
.retain(|channel, _| !channel.same_endpoint(&device.channel));
|
||||||
@@ -205,30 +213,32 @@ impl DeviceStore {
|
|||||||
|
|
||||||
known.logs.push(DeviceLog {
|
known.logs.push(DeviceLog {
|
||||||
timestamp,
|
timestamp,
|
||||||
event: event.clone(),
|
kind: DeviceLogKind::Updated,
|
||||||
|
channel: device.channel.clone(),
|
||||||
});
|
});
|
||||||
if known.logs.len() > MAX_LOGS {
|
if known.logs.len() > MAX_LOGS {
|
||||||
let excess = known.logs.len() - MAX_LOGS;
|
let excess = known.logs.len() - MAX_LOGS;
|
||||||
known.logs.drain(..excess);
|
known.logs.drain(..excess);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
let event = DiscoveryEvent::Updated {
|
||||||
|
device: device.clone(),
|
||||||
|
};
|
||||||
known.device = device;
|
known.device = device;
|
||||||
(event, known.clone())
|
(event, known.clone())
|
||||||
}
|
}
|
||||||
None => {
|
None => {
|
||||||
let event = DiscoveryEvent::Discovered {
|
|
||||||
device: device.clone(),
|
|
||||||
};
|
|
||||||
let known = StatefulDevice {
|
let known = StatefulDevice {
|
||||||
channels: HashMap::from([(device.channel.clone(), ChannelStatus::Available)]),
|
channels: HashMap::from([(device.channel.clone(), ChannelStatus::Available)]),
|
||||||
device,
|
|
||||||
logs: vec![DeviceLog {
|
logs: vec![DeviceLog {
|
||||||
timestamp,
|
timestamp,
|
||||||
event: event.clone(),
|
kind: DeviceLogKind::Discovered,
|
||||||
|
channel: device.channel.clone(),
|
||||||
}],
|
}],
|
||||||
|
device: device.clone(),
|
||||||
};
|
};
|
||||||
devices.push(known.clone());
|
devices.push(known.clone());
|
||||||
(event, known)
|
(DiscoveryEvent::Discovered { device }, known)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -272,13 +282,10 @@ mod tests {
|
|||||||
channel.http().unwrap().host.as_str()
|
channel.http().unwrap().host.as_str()
|
||||||
}
|
}
|
||||||
|
|
||||||
/// The marker telling log entries apart: the host the logged snapshot
|
/// The marker telling log entries apart: the host the confirmation
|
||||||
/// was confirmed on.
|
/// happened on.
|
||||||
fn log_marker(log: &DeviceLog) -> &str {
|
fn log_marker(log: &DeviceLog) -> &str {
|
||||||
let device = match &log.event {
|
log.channel.http().unwrap().host.as_str()
|
||||||
DiscoveryEvent::Discovered { device } | DiscoveryEvent::Updated { device } => device,
|
|
||||||
};
|
|
||||||
device.http().unwrap().host.as_str()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
@@ -303,14 +310,8 @@ mod tests {
|
|||||||
|
|
||||||
let known = store.by_fingerprint("a").unwrap();
|
let known = store.by_fingerprint("a").unwrap();
|
||||||
assert_eq!(known.logs.len(), 2, "every confirmation must be logged");
|
assert_eq!(known.logs.len(), 2, "every confirmation must be logged");
|
||||||
assert!(matches!(
|
assert_eq!(known.logs[0].kind, DeviceLogKind::Discovered);
|
||||||
known.logs[0].event,
|
assert_eq!(known.logs[1].kind, DeviceLogKind::Updated);
|
||||||
DiscoveryEvent::Discovered { .. }
|
|
||||||
));
|
|
||||||
assert!(matches!(
|
|
||||||
known.logs[1].event,
|
|
||||||
DiscoveryEvent::Updated { .. }
|
|
||||||
));
|
|
||||||
assert_eq!(log_marker(&known.logs[1]), "fe80::1%3");
|
assert_eq!(log_marker(&known.logs[1]), "fe80::1%3");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ import 'package:flutter_rust_bridge/flutter_rust_bridge_for_generated.dart';
|
|||||||
import 'package:localsend_isolates/rust/api/model.dart';
|
import 'package:localsend_isolates/rust/api/model.dart';
|
||||||
import 'package:localsend_isolates/rust/frb_generated.dart';
|
import 'package:localsend_isolates/rust/frb_generated.dart';
|
||||||
|
|
||||||
// These functions are ignored because they are not marked as `pub`: `rs_stored_device`, `stop`
|
// These functions are ignored because they are not marked as `pub`: `rs_device_log`, `rs_stored_device`, `stop`
|
||||||
// These types are ignored because they are neither used by any `pub` functions nor (for structs and enums) marked `#[frb(unignore)]`: `DiscoveryInstance`
|
// These types are ignored because they are neither used by any `pub` functions nor (for structs and enums) marked `#[frb(unignore)]`: `DiscoveryInstance`
|
||||||
|
|
||||||
/// Starts the discovery: binds the UDP multicast sockets on all usable
|
/// Starts the discovery: binds the UDP multicast sockets on all usable
|
||||||
@@ -79,6 +79,10 @@ abstract class RsDiscovery implements RustOpaqueInterface {
|
|||||||
/// multicast is unavailable.
|
/// multicast is unavailable.
|
||||||
Future<void> announce();
|
Future<void> announce();
|
||||||
|
|
||||||
|
/// The retained confirmations of a stored device, oldest first, capped at
|
||||||
|
/// the store's log limit. Empty when the fingerprint is unknown.
|
||||||
|
Future<List<RsDeviceLog>> deviceLogs({required String fingerprint});
|
||||||
|
|
||||||
/// Discovers a device at a known address, e.g. a favorite or a peer that
|
/// Discovers a device at a known address, e.g. a favorite or a peer that
|
||||||
/// multicast does not reach, by sending it a register request.
|
/// multicast does not reach, by sending it a register request.
|
||||||
///
|
///
|
||||||
@@ -121,6 +125,11 @@ abstract class RsDiscovery implements RustOpaqueInterface {
|
|||||||
Future<void> stop();
|
Future<void> stop();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
enum DeviceLogKind {
|
||||||
|
discovered,
|
||||||
|
updated,
|
||||||
|
}
|
||||||
|
|
||||||
/// An address a stored device was confirmed on and is dialed at.
|
/// An address a stored device was confirmed on and is dialed at.
|
||||||
class RsDeviceChannel {
|
class RsDeviceChannel {
|
||||||
/// The host to dial: an IP address, or the scoped form `fe80::1%3` for
|
/// The host to dial: an IP address, or the scoped form `fe80::1%3` for
|
||||||
@@ -146,6 +155,36 @@ class RsDeviceChannel {
|
|||||||
other is RsDeviceChannel && runtimeType == other.runtimeType && host == other.host && port == other.port && protocol == other.protocol;
|
other is RsDeviceChannel && runtimeType == other.runtimeType && host == other.host && port == other.port && protocol == other.protocol;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// One retained confirmation of a stored device, for the device details UI.
|
||||||
|
class RsDeviceLog {
|
||||||
|
/// When the confirmation happened, in milliseconds since the Unix epoch.
|
||||||
|
final BigInt timestampMillis;
|
||||||
|
|
||||||
|
/// Whether the confirmation discovered the device or re-confirmed it.
|
||||||
|
final DeviceLogKind kind;
|
||||||
|
|
||||||
|
/// The channel the confirmation happened on.
|
||||||
|
final RsDeviceChannel channel;
|
||||||
|
|
||||||
|
const RsDeviceLog({
|
||||||
|
required this.timestampMillis,
|
||||||
|
required this.kind,
|
||||||
|
required this.channel,
|
||||||
|
});
|
||||||
|
|
||||||
|
@override
|
||||||
|
int get hashCode => timestampMillis.hashCode ^ kind.hashCode ^ channel.hashCode;
|
||||||
|
|
||||||
|
@override
|
||||||
|
bool operator ==(Object other) =>
|
||||||
|
identical(this, other) ||
|
||||||
|
other is RsDeviceLog &&
|
||||||
|
runtimeType == other.runtimeType &&
|
||||||
|
timestampMillis == other.timestampMillis &&
|
||||||
|
kind == other.kind &&
|
||||||
|
channel == other.channel;
|
||||||
|
}
|
||||||
|
|
||||||
/// A single device confirmation over HTTP, fed into the store via
|
/// A single device confirmation over HTTP, fed into the store via
|
||||||
/// [RsDiscovery::add_device]: the device's register request was accepted by
|
/// [RsDiscovery::add_device]: the device's register request was accepted by
|
||||||
/// our server, so it is known to be reachable at [RsDiscoveredDevice::host].
|
/// our server, so it is known to be reachable at [RsDiscoveredDevice::host].
|
||||||
|
|||||||
@@ -75,7 +75,7 @@ class RustLib extends BaseEntrypoint<RustLibApi, RustLibApiImpl, RustLibWire> {
|
|||||||
String get codegenVersion => '2.12.0';
|
String get codegenVersion => '2.12.0';
|
||||||
|
|
||||||
@override
|
@override
|
||||||
int get rustContentHash => -1120530143;
|
int get rustContentHash => -2095161624;
|
||||||
|
|
||||||
static const kDefaultExternalLibraryLoaderConfig = ExternalLibraryLoaderConfig(
|
static const kDefaultExternalLibraryLoaderConfig = ExternalLibraryLoaderConfig(
|
||||||
stem: 'rust_lib_localsend_app',
|
stem: 'rust_lib_localsend_app',
|
||||||
@@ -117,6 +117,8 @@ abstract class RustLibApi extends BaseApi {
|
|||||||
|
|
||||||
Future<void> crateApiDiscoveryRsDiscoveryAnnounce({required RsDiscovery that});
|
Future<void> crateApiDiscoveryRsDiscoveryAnnounce({required RsDiscovery that});
|
||||||
|
|
||||||
|
Future<List<RsDeviceLog>> crateApiDiscoveryRsDiscoveryDeviceLogs({required RsDiscovery that, required String fingerprint});
|
||||||
|
|
||||||
Future<RsStoredDevice?> crateApiDiscoveryRsDiscoveryDiscover({
|
Future<RsStoredDevice?> crateApiDiscoveryRsDiscoveryDiscover({
|
||||||
required RsDiscovery that,
|
required RsDiscovery that,
|
||||||
required String host,
|
required String host,
|
||||||
@@ -613,6 +615,32 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
argNames: ['that'],
|
argNames: ['that'],
|
||||||
);
|
);
|
||||||
|
|
||||||
|
@override
|
||||||
|
Future<List<RsDeviceLog>> crateApiDiscoveryRsDiscoveryDeviceLogs({required RsDiscovery that, required String fingerprint}) {
|
||||||
|
return handler.executeNormal(
|
||||||
|
NormalTask(
|
||||||
|
callFfi: (port_) {
|
||||||
|
final serializer = SseSerializer(generalizedFrbRustBinding);
|
||||||
|
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRsDiscovery(that, serializer);
|
||||||
|
sse_encode_String(fingerprint, serializer);
|
||||||
|
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 9, port: port_);
|
||||||
|
},
|
||||||
|
codec: SseCodec(
|
||||||
|
decodeSuccessData: sse_decode_list_rs_device_log,
|
||||||
|
decodeErrorData: null,
|
||||||
|
),
|
||||||
|
constMeta: kCrateApiDiscoveryRsDiscoveryDeviceLogsConstMeta,
|
||||||
|
argValues: [that, fingerprint],
|
||||||
|
apiImpl: this,
|
||||||
|
),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
TaskConstMeta get kCrateApiDiscoveryRsDiscoveryDeviceLogsConstMeta => const TaskConstMeta(
|
||||||
|
debugName: 'RsDiscovery_device_logs',
|
||||||
|
argNames: ['that', 'fingerprint'],
|
||||||
|
);
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Future<RsStoredDevice?> crateApiDiscoveryRsDiscoveryDiscover({
|
Future<RsStoredDevice?> crateApiDiscoveryRsDiscoveryDiscover({
|
||||||
required RsDiscovery that,
|
required RsDiscovery that,
|
||||||
@@ -628,7 +656,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
sse_encode_String(host, serializer);
|
sse_encode_String(host, serializer);
|
||||||
sse_encode_u_16(port, serializer);
|
sse_encode_u_16(port, serializer);
|
||||||
sse_encode_protocol_type(protocol, serializer);
|
sse_encode_protocol_type(protocol, serializer);
|
||||||
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 9, port: port_);
|
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 10, port: port_);
|
||||||
},
|
},
|
||||||
codec: SseCodec(
|
codec: SseCodec(
|
||||||
decodeSuccessData: sse_decode_opt_box_autoadd_rs_stored_device,
|
decodeSuccessData: sse_decode_opt_box_autoadd_rs_stored_device,
|
||||||
@@ -656,7 +684,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
final serializer = SseSerializer(generalizedFrbRustBinding);
|
final serializer = SseSerializer(generalizedFrbRustBinding);
|
||||||
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRsDiscovery(that, serializer);
|
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRsDiscovery(that, serializer);
|
||||||
sse_encode_StreamSink_rs_stored_device_Sse(sink, serializer);
|
sse_encode_StreamSink_rs_stored_device_Sse(sink, serializer);
|
||||||
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 10, port: port_);
|
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 11, port: port_);
|
||||||
},
|
},
|
||||||
codec: SseCodec(
|
codec: SseCodec(
|
||||||
decodeSuccessData: sse_decode_unit,
|
decodeSuccessData: sse_decode_unit,
|
||||||
@@ -683,7 +711,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
callFfi: (port_) {
|
callFfi: (port_) {
|
||||||
final serializer = SseSerializer(generalizedFrbRustBinding);
|
final serializer = SseSerializer(generalizedFrbRustBinding);
|
||||||
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRsDiscovery(that, serializer);
|
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRsDiscovery(that, serializer);
|
||||||
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 11, port: port_);
|
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 12, port: port_);
|
||||||
},
|
},
|
||||||
codec: SseCodec(
|
codec: SseCodec(
|
||||||
decodeSuccessData: sse_decode_opt_String,
|
decodeSuccessData: sse_decode_opt_String,
|
||||||
@@ -716,7 +744,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
sse_encode_String(interfaceIp, serializer);
|
sse_encode_String(interfaceIp, serializer);
|
||||||
sse_encode_u_16(port, serializer);
|
sse_encode_u_16(port, serializer);
|
||||||
sse_encode_protocol_type(protocol, serializer);
|
sse_encode_protocol_type(protocol, serializer);
|
||||||
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 12, port: port_);
|
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 13, port: port_);
|
||||||
},
|
},
|
||||||
codec: SseCodec(
|
codec: SseCodec(
|
||||||
decodeSuccessData: sse_decode_unit,
|
decodeSuccessData: sse_decode_unit,
|
||||||
@@ -742,7 +770,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
final serializer = SseSerializer(generalizedFrbRustBinding);
|
final serializer = SseSerializer(generalizedFrbRustBinding);
|
||||||
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRsDiscovery(that, serializer);
|
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRsDiscovery(that, serializer);
|
||||||
sse_encode_bool(answer, serializer);
|
sse_encode_bool(answer, serializer);
|
||||||
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 13, port: port_);
|
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 14, port: port_);
|
||||||
},
|
},
|
||||||
codec: SseCodec(
|
codec: SseCodec(
|
||||||
decodeSuccessData: sse_decode_unit,
|
decodeSuccessData: sse_decode_unit,
|
||||||
@@ -767,7 +795,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
callFfi: (port_) {
|
callFfi: (port_) {
|
||||||
final serializer = SseSerializer(generalizedFrbRustBinding);
|
final serializer = SseSerializer(generalizedFrbRustBinding);
|
||||||
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRsDiscovery(that, serializer);
|
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRsDiscovery(that, serializer);
|
||||||
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 14, port: port_);
|
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 15, port: port_);
|
||||||
},
|
},
|
||||||
codec: SseCodec(
|
codec: SseCodec(
|
||||||
decodeSuccessData: sse_decode_unit,
|
decodeSuccessData: sse_decode_unit,
|
||||||
@@ -802,7 +830,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
sse_encode_String(ip, serializer);
|
sse_encode_String(ip, serializer);
|
||||||
sse_encode_u_16(port, serializer);
|
sse_encode_u_16(port, serializer);
|
||||||
sse_encode_String(sessionId, serializer);
|
sse_encode_String(sessionId, serializer);
|
||||||
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 15, port: port_);
|
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 16, port: port_);
|
||||||
},
|
},
|
||||||
codec: SseCodec(
|
codec: SseCodec(
|
||||||
decodeSuccessData: sse_decode_unit,
|
decodeSuccessData: sse_decode_unit,
|
||||||
@@ -843,7 +871,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
sse_encode_opt_String(publicKey, serializer);
|
sse_encode_opt_String(publicKey, serializer);
|
||||||
sse_encode_opt_String(pin, serializer);
|
sse_encode_opt_String(pin, serializer);
|
||||||
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRsCancellationToken(cancelToken, serializer);
|
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRsCancellationToken(cancelToken, serializer);
|
||||||
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 16, port: port_);
|
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 17, port: port_);
|
||||||
},
|
},
|
||||||
codec: SseCodec(
|
codec: SseCodec(
|
||||||
decodeSuccessData: sse_decode_prepare_upload_result,
|
decodeSuccessData: sse_decode_prepare_upload_result,
|
||||||
@@ -878,7 +906,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
sse_encode_String(ip, serializer);
|
sse_encode_String(ip, serializer);
|
||||||
sse_encode_u_16(port, serializer);
|
sse_encode_u_16(port, serializer);
|
||||||
sse_encode_box_autoadd_register_dto(payload, serializer);
|
sse_encode_box_autoadd_register_dto(payload, serializer);
|
||||||
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 17, port: port_);
|
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 18, port: port_);
|
||||||
},
|
},
|
||||||
codec: SseCodec(
|
codec: SseCodec(
|
||||||
decodeSuccessData: sse_decode_result_with_public_key_register_response_dto,
|
decodeSuccessData: sse_decode_result_with_public_key_register_response_dto,
|
||||||
@@ -935,7 +963,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
sse_encode_opt_box_autoadd_i_32(fileDescriptor, serializer);
|
sse_encode_opt_box_autoadd_i_32(fileDescriptor, serializer);
|
||||||
sse_encode_u_64(contentLength, serializer);
|
sse_encode_u_64(contentLength, serializer);
|
||||||
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRsCancellationToken(cancelToken, serializer);
|
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRsCancellationToken(cancelToken, serializer);
|
||||||
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 18, port: port_);
|
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 19, port: port_);
|
||||||
},
|
},
|
||||||
codec: SseCodec(
|
codec: SseCodec(
|
||||||
decodeSuccessData: sse_decode_unit,
|
decodeSuccessData: sse_decode_unit,
|
||||||
@@ -978,7 +1006,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
final serializer = SseSerializer(generalizedFrbRustBinding);
|
final serializer = SseSerializer(generalizedFrbRustBinding);
|
||||||
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRsHttpServer(that, serializer);
|
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRsHttpServer(that, serializer);
|
||||||
sse_encode_String(sessionId, serializer);
|
sse_encode_String(sessionId, serializer);
|
||||||
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 19, port: port_);
|
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 20, port: port_);
|
||||||
},
|
},
|
||||||
codec: SseCodec(
|
codec: SseCodec(
|
||||||
decodeSuccessData: sse_decode_unit,
|
decodeSuccessData: sse_decode_unit,
|
||||||
@@ -1005,7 +1033,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRsHttpServer(that, serializer);
|
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRsHttpServer(that, serializer);
|
||||||
sse_encode_String(sessionId, serializer);
|
sse_encode_String(sessionId, serializer);
|
||||||
sse_encode_String(fileId, serializer);
|
sse_encode_String(fileId, serializer);
|
||||||
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 20, port: port_);
|
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 21, port: port_);
|
||||||
},
|
},
|
||||||
codec: SseCodec(
|
codec: SseCodec(
|
||||||
decodeSuccessData: sse_decode_unit,
|
decodeSuccessData: sse_decode_unit,
|
||||||
@@ -1032,7 +1060,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRsHttpServer(that, serializer);
|
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRsHttpServer(that, serializer);
|
||||||
sse_encode_String(sessionId, serializer);
|
sse_encode_String(sessionId, serializer);
|
||||||
sse_encode_String(fileId, serializer);
|
sse_encode_String(fileId, serializer);
|
||||||
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 21, port: port_);
|
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 22, port: port_);
|
||||||
},
|
},
|
||||||
codec: SseCodec(
|
codec: SseCodec(
|
||||||
decodeSuccessData: sse_decode_unit,
|
decodeSuccessData: sse_decode_unit,
|
||||||
@@ -1060,7 +1088,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
final serializer = SseSerializer(generalizedFrbRustBinding);
|
final serializer = SseSerializer(generalizedFrbRustBinding);
|
||||||
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRsHttpServer(that, serializer);
|
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRsHttpServer(that, serializer);
|
||||||
sse_encode_StreamSink_rs_server_event_Sse(sink, serializer);
|
sse_encode_StreamSink_rs_server_event_Sse(sink, serializer);
|
||||||
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 22, port: port_);
|
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 23, port: port_);
|
||||||
},
|
},
|
||||||
codec: SseCodec(
|
codec: SseCodec(
|
||||||
decodeSuccessData: sse_decode_unit,
|
decodeSuccessData: sse_decode_unit,
|
||||||
@@ -1097,7 +1125,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
sse_encode_String(fileId, serializer);
|
sse_encode_String(fileId, serializer);
|
||||||
sse_encode_opt_String(path, serializer);
|
sse_encode_opt_String(path, serializer);
|
||||||
sse_encode_opt_box_autoadd_i_32(fileDescriptor, serializer);
|
sse_encode_opt_box_autoadd_i_32(fileDescriptor, serializer);
|
||||||
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 23, port: port_);
|
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 24, port: port_);
|
||||||
},
|
},
|
||||||
codec: SseCodec(
|
codec: SseCodec(
|
||||||
decodeSuccessData: sse_decode_unit,
|
decodeSuccessData: sse_decode_unit,
|
||||||
@@ -1137,7 +1165,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
sse_encode_opt_String(path, serializer);
|
sse_encode_opt_String(path, serializer);
|
||||||
sse_encode_opt_box_autoadd_i_32(fileDescriptor, serializer);
|
sse_encode_opt_box_autoadd_i_32(fileDescriptor, serializer);
|
||||||
sse_encode_u_64(fileSize, serializer);
|
sse_encode_u_64(fileSize, serializer);
|
||||||
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 24, port: port_);
|
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 25, port: port_);
|
||||||
},
|
},
|
||||||
codec: SseCodec(
|
codec: SseCodec(
|
||||||
decodeSuccessData: sse_decode_unit,
|
decodeSuccessData: sse_decode_unit,
|
||||||
@@ -1166,7 +1194,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRsHttpServer(that, serializer);
|
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRsHttpServer(that, serializer);
|
||||||
sse_encode_String(sessionId, serializer);
|
sse_encode_String(sessionId, serializer);
|
||||||
sse_encode_bool(accept, serializer);
|
sse_encode_bool(accept, serializer);
|
||||||
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 25, port: port_);
|
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 26, port: port_);
|
||||||
},
|
},
|
||||||
codec: SseCodec(
|
codec: SseCodec(
|
||||||
decodeSuccessData: sse_decode_unit,
|
decodeSuccessData: sse_decode_unit,
|
||||||
@@ -1192,7 +1220,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
final serializer = SseSerializer(generalizedFrbRustBinding);
|
final serializer = SseSerializer(generalizedFrbRustBinding);
|
||||||
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRsHttpServer(that, serializer);
|
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRsHttpServer(that, serializer);
|
||||||
sse_encode_opt_list_String(acceptedFileIds, serializer);
|
sse_encode_opt_list_String(acceptedFileIds, serializer);
|
||||||
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 26, port: port_);
|
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 27, port: port_);
|
||||||
},
|
},
|
||||||
codec: SseCodec(
|
codec: SseCodec(
|
||||||
decodeSuccessData: sse_decode_unit,
|
decodeSuccessData: sse_decode_unit,
|
||||||
@@ -1217,7 +1245,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
callFfi: (port_) {
|
callFfi: (port_) {
|
||||||
final serializer = SseSerializer(generalizedFrbRustBinding);
|
final serializer = SseSerializer(generalizedFrbRustBinding);
|
||||||
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRsHttpServer(that, serializer);
|
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRsHttpServer(that, serializer);
|
||||||
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 27, port: port_);
|
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 28, port: port_);
|
||||||
},
|
},
|
||||||
codec: SseCodec(
|
codec: SseCodec(
|
||||||
decodeSuccessData: sse_decode_unit,
|
decodeSuccessData: sse_decode_unit,
|
||||||
@@ -1242,7 +1270,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
callFfi: (port_) {
|
callFfi: (port_) {
|
||||||
final serializer = SseSerializer(generalizedFrbRustBinding);
|
final serializer = SseSerializer(generalizedFrbRustBinding);
|
||||||
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRTCFileReceiver(that, serializer);
|
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRTCFileReceiver(that, serializer);
|
||||||
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 28, port: port_);
|
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 29, port: port_);
|
||||||
},
|
},
|
||||||
codec: SseCodec(
|
codec: SseCodec(
|
||||||
decodeSuccessData: sse_decode_String,
|
decodeSuccessData: sse_decode_String,
|
||||||
@@ -1270,7 +1298,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
final serializer = SseSerializer(generalizedFrbRustBinding);
|
final serializer = SseSerializer(generalizedFrbRustBinding);
|
||||||
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRTCFileReceiver(that, serializer);
|
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRTCFileReceiver(that, serializer);
|
||||||
sse_encode_StreamSink_list_prim_u_8_strict_Sse(sink, serializer);
|
sse_encode_StreamSink_list_prim_u_8_strict_Sse(sink, serializer);
|
||||||
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 29, port: port_);
|
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 30, port: port_);
|
||||||
},
|
},
|
||||||
codec: SseCodec(
|
codec: SseCodec(
|
||||||
decodeSuccessData: sse_decode_unit,
|
decodeSuccessData: sse_decode_unit,
|
||||||
@@ -1298,7 +1326,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
final serializer = SseSerializer(generalizedFrbRustBinding);
|
final serializer = SseSerializer(generalizedFrbRustBinding);
|
||||||
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRTCFileSender(that, serializer);
|
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRTCFileSender(that, serializer);
|
||||||
sse_encode_list_prim_u_8_loose(data, serializer);
|
sse_encode_list_prim_u_8_loose(data, serializer);
|
||||||
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 30, port: port_);
|
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 31, port: port_);
|
||||||
},
|
},
|
||||||
codec: SseCodec(
|
codec: SseCodec(
|
||||||
decodeSuccessData: sse_decode_unit,
|
decodeSuccessData: sse_decode_unit,
|
||||||
@@ -1323,7 +1351,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
callFfi: (port_) {
|
callFfi: (port_) {
|
||||||
final serializer = SseSerializer(generalizedFrbRustBinding);
|
final serializer = SseSerializer(generalizedFrbRustBinding);
|
||||||
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRTCReceiveController(that, serializer);
|
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRTCReceiveController(that, serializer);
|
||||||
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 31, port: port_);
|
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 32, port: port_);
|
||||||
},
|
},
|
||||||
codec: SseCodec(
|
codec: SseCodec(
|
||||||
decodeSuccessData: sse_decode_unit,
|
decodeSuccessData: sse_decode_unit,
|
||||||
@@ -1351,7 +1379,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
final serializer = SseSerializer(generalizedFrbRustBinding);
|
final serializer = SseSerializer(generalizedFrbRustBinding);
|
||||||
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRTCReceiveController(that, serializer);
|
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRTCReceiveController(that, serializer);
|
||||||
sse_encode_StreamSink_rtc_file_error_Sse(sink, serializer);
|
sse_encode_StreamSink_rtc_file_error_Sse(sink, serializer);
|
||||||
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 32, port: port_);
|
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 33, port: port_);
|
||||||
},
|
},
|
||||||
codec: SseCodec(
|
codec: SseCodec(
|
||||||
decodeSuccessData: sse_decode_unit,
|
decodeSuccessData: sse_decode_unit,
|
||||||
@@ -1378,7 +1406,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
callFfi: (port_) {
|
callFfi: (port_) {
|
||||||
final serializer = SseSerializer(generalizedFrbRustBinding);
|
final serializer = SseSerializer(generalizedFrbRustBinding);
|
||||||
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRTCReceiveController(that, serializer);
|
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRTCReceiveController(that, serializer);
|
||||||
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 33, port: port_);
|
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 34, port: port_);
|
||||||
},
|
},
|
||||||
codec: SseCodec(
|
codec: SseCodec(
|
||||||
decodeSuccessData: sse_decode_list_file_dto,
|
decodeSuccessData: sse_decode_list_file_dto,
|
||||||
@@ -1406,7 +1434,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
final serializer = SseSerializer(generalizedFrbRustBinding);
|
final serializer = SseSerializer(generalizedFrbRustBinding);
|
||||||
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRTCReceiveController(that, serializer);
|
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRTCReceiveController(that, serializer);
|
||||||
sse_encode_StreamSink_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRTCFileReceiver_Sse(sink, serializer);
|
sse_encode_StreamSink_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRTCFileReceiver_Sse(sink, serializer);
|
||||||
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 34, port: port_);
|
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 35, port: port_);
|
||||||
},
|
},
|
||||||
codec: SseCodec(
|
codec: SseCodec(
|
||||||
decodeSuccessData: sse_decode_unit,
|
decodeSuccessData: sse_decode_unit,
|
||||||
@@ -1436,7 +1464,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
final serializer = SseSerializer(generalizedFrbRustBinding);
|
final serializer = SseSerializer(generalizedFrbRustBinding);
|
||||||
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRTCReceiveController(that, serializer);
|
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRTCReceiveController(that, serializer);
|
||||||
sse_encode_StreamSink_rtc_status_Sse(sink, serializer);
|
sse_encode_StreamSink_rtc_status_Sse(sink, serializer);
|
||||||
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 35, port: port_);
|
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 36, port: port_);
|
||||||
},
|
},
|
||||||
codec: SseCodec(
|
codec: SseCodec(
|
||||||
decodeSuccessData: sse_decode_unit,
|
decodeSuccessData: sse_decode_unit,
|
||||||
@@ -1464,7 +1492,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
final serializer = SseSerializer(generalizedFrbRustBinding);
|
final serializer = SseSerializer(generalizedFrbRustBinding);
|
||||||
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRTCReceiveController(that, serializer);
|
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRTCReceiveController(that, serializer);
|
||||||
sse_encode_box_autoadd_rtc_send_file_response(status, serializer);
|
sse_encode_box_autoadd_rtc_send_file_response(status, serializer);
|
||||||
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 36, port: port_);
|
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 37, port: port_);
|
||||||
},
|
},
|
||||||
codec: SseCodec(
|
codec: SseCodec(
|
||||||
decodeSuccessData: sse_decode_unit,
|
decodeSuccessData: sse_decode_unit,
|
||||||
@@ -1490,7 +1518,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
final serializer = SseSerializer(generalizedFrbRustBinding);
|
final serializer = SseSerializer(generalizedFrbRustBinding);
|
||||||
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRTCReceiveController(that, serializer);
|
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRTCReceiveController(that, serializer);
|
||||||
sse_encode_String(pin, serializer);
|
sse_encode_String(pin, serializer);
|
||||||
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 37, port: port_);
|
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 38, port: port_);
|
||||||
},
|
},
|
||||||
codec: SseCodec(
|
codec: SseCodec(
|
||||||
decodeSuccessData: sse_decode_unit,
|
decodeSuccessData: sse_decode_unit,
|
||||||
@@ -1516,7 +1544,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
final serializer = SseSerializer(generalizedFrbRustBinding);
|
final serializer = SseSerializer(generalizedFrbRustBinding);
|
||||||
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRTCReceiveController(that, serializer);
|
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRTCReceiveController(that, serializer);
|
||||||
sse_encode_Set_String_None(selection, serializer);
|
sse_encode_Set_String_None(selection, serializer);
|
||||||
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 38, port: port_);
|
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 39, port: port_);
|
||||||
},
|
},
|
||||||
codec: SseCodec(
|
codec: SseCodec(
|
||||||
decodeSuccessData: sse_decode_unit,
|
decodeSuccessData: sse_decode_unit,
|
||||||
@@ -1544,7 +1572,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
final serializer = SseSerializer(generalizedFrbRustBinding);
|
final serializer = SseSerializer(generalizedFrbRustBinding);
|
||||||
sse_encode_Auto_RefMut_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRTCSendController(that, serializer);
|
sse_encode_Auto_RefMut_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRTCSendController(that, serializer);
|
||||||
sse_encode_StreamSink_rtc_file_error_Sse(sink, serializer);
|
sse_encode_StreamSink_rtc_file_error_Sse(sink, serializer);
|
||||||
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 39, port: port_);
|
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 40, port: port_);
|
||||||
},
|
},
|
||||||
codec: SseCodec(
|
codec: SseCodec(
|
||||||
decodeSuccessData: sse_decode_unit,
|
decodeSuccessData: sse_decode_unit,
|
||||||
@@ -1571,7 +1599,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
callFfi: (port_) {
|
callFfi: (port_) {
|
||||||
final serializer = SseSerializer(generalizedFrbRustBinding);
|
final serializer = SseSerializer(generalizedFrbRustBinding);
|
||||||
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRTCSendController(that, serializer);
|
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRTCSendController(that, serializer);
|
||||||
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 40, port: port_);
|
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 41, port: port_);
|
||||||
},
|
},
|
||||||
codec: SseCodec(
|
codec: SseCodec(
|
||||||
decodeSuccessData: sse_decode_Set_String_None,
|
decodeSuccessData: sse_decode_Set_String_None,
|
||||||
@@ -1599,7 +1627,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
final serializer = SseSerializer(generalizedFrbRustBinding);
|
final serializer = SseSerializer(generalizedFrbRustBinding);
|
||||||
sse_encode_Auto_RefMut_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRTCSendController(that, serializer);
|
sse_encode_Auto_RefMut_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRTCSendController(that, serializer);
|
||||||
sse_encode_StreamSink_rtc_status_Sse(sink, serializer);
|
sse_encode_StreamSink_rtc_status_Sse(sink, serializer);
|
||||||
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 41, port: port_);
|
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 42, port: port_);
|
||||||
},
|
},
|
||||||
codec: SseCodec(
|
codec: SseCodec(
|
||||||
decodeSuccessData: sse_decode_unit,
|
decodeSuccessData: sse_decode_unit,
|
||||||
@@ -1627,7 +1655,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
final serializer = SseSerializer(generalizedFrbRustBinding);
|
final serializer = SseSerializer(generalizedFrbRustBinding);
|
||||||
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRTCSendController(that, serializer);
|
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRTCSendController(that, serializer);
|
||||||
sse_encode_String(fileId, serializer);
|
sse_encode_String(fileId, serializer);
|
||||||
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 42, port: port_);
|
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 43, port: port_);
|
||||||
},
|
},
|
||||||
codec: SseCodec(
|
codec: SseCodec(
|
||||||
decodeSuccessData: sse_decode_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRTCFileSender,
|
decodeSuccessData: sse_decode_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRTCFileSender,
|
||||||
@@ -1653,7 +1681,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
final serializer = SseSerializer(generalizedFrbRustBinding);
|
final serializer = SseSerializer(generalizedFrbRustBinding);
|
||||||
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRTCSendController(that, serializer);
|
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRTCSendController(that, serializer);
|
||||||
sse_encode_String(pin, serializer);
|
sse_encode_String(pin, serializer);
|
||||||
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 43, port: port_);
|
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 44, port: port_);
|
||||||
},
|
},
|
||||||
codec: SseCodec(
|
codec: SseCodec(
|
||||||
decodeSuccessData: sse_decode_unit,
|
decodeSuccessData: sse_decode_unit,
|
||||||
@@ -1692,7 +1720,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
onConnection,
|
onConnection,
|
||||||
serializer,
|
serializer,
|
||||||
);
|
);
|
||||||
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 44, port: port_);
|
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 45, port: port_);
|
||||||
},
|
},
|
||||||
codec: SseCodec(
|
codec: SseCodec(
|
||||||
decodeSuccessData: sse_decode_unit,
|
decodeSuccessData: sse_decode_unit,
|
||||||
@@ -1718,7 +1746,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
SyncTask(
|
SyncTask(
|
||||||
callFfi: () {
|
callFfi: () {
|
||||||
final serializer = SseSerializer(generalizedFrbRustBinding);
|
final serializer = SseSerializer(generalizedFrbRustBinding);
|
||||||
return pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 45)!;
|
return pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 46)!;
|
||||||
},
|
},
|
||||||
codec: SseCodec(
|
codec: SseCodec(
|
||||||
decodeSuccessData: sse_decode_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRsCancellationToken,
|
decodeSuccessData: sse_decode_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRsCancellationToken,
|
||||||
@@ -1753,7 +1781,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
sse_encode_ls_http_client_version(version, serializer);
|
sse_encode_ls_http_client_version(version, serializer);
|
||||||
sse_encode_opt_String(expectedFingerprint, serializer);
|
sse_encode_opt_String(expectedFingerprint, serializer);
|
||||||
sse_encode_opt_box_autoadd_u_32(timeoutMs, serializer);
|
sse_encode_opt_box_autoadd_u_32(timeoutMs, serializer);
|
||||||
return pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 46)!;
|
return pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 47)!;
|
||||||
},
|
},
|
||||||
codec: SseCodec(
|
codec: SseCodec(
|
||||||
decodeSuccessData: sse_decode_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRsHttpClient,
|
decodeSuccessData: sse_decode_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRsHttpClient,
|
||||||
@@ -1777,7 +1805,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
NormalTask(
|
NormalTask(
|
||||||
callFfi: (port_) {
|
callFfi: (port_) {
|
||||||
final serializer = SseSerializer(generalizedFrbRustBinding);
|
final serializer = SseSerializer(generalizedFrbRustBinding);
|
||||||
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 47, port: port_);
|
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 48, port: port_);
|
||||||
},
|
},
|
||||||
codec: SseCodec(
|
codec: SseCodec(
|
||||||
decodeSuccessData:
|
decodeSuccessData:
|
||||||
@@ -1802,7 +1830,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
NormalTask(
|
NormalTask(
|
||||||
callFfi: (port_) {
|
callFfi: (port_) {
|
||||||
final serializer = SseSerializer(generalizedFrbRustBinding);
|
final serializer = SseSerializer(generalizedFrbRustBinding);
|
||||||
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 48, port: port_);
|
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 49, port: port_);
|
||||||
},
|
},
|
||||||
codec: SseCodec(
|
codec: SseCodec(
|
||||||
decodeSuccessData: sse_decode_unit,
|
decodeSuccessData: sse_decode_unit,
|
||||||
@@ -1826,7 +1854,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
NormalTask(
|
NormalTask(
|
||||||
callFfi: (port_) {
|
callFfi: (port_) {
|
||||||
final serializer = SseSerializer(generalizedFrbRustBinding);
|
final serializer = SseSerializer(generalizedFrbRustBinding);
|
||||||
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 49, port: port_);
|
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 50, port: port_);
|
||||||
},
|
},
|
||||||
codec: SseCodec(
|
codec: SseCodec(
|
||||||
decodeSuccessData: sse_decode_key_pair,
|
decodeSuccessData: sse_decode_key_pair,
|
||||||
@@ -1850,7 +1878,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
NormalTask(
|
NormalTask(
|
||||||
callFfi: (port_) {
|
callFfi: (port_) {
|
||||||
final serializer = SseSerializer(generalizedFrbRustBinding);
|
final serializer = SseSerializer(generalizedFrbRustBinding);
|
||||||
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 50, port: port_);
|
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 51, port: port_);
|
||||||
},
|
},
|
||||||
codec: SseCodec(
|
codec: SseCodec(
|
||||||
decodeSuccessData: sse_decode_security_context,
|
decodeSuccessData: sse_decode_security_context,
|
||||||
@@ -1881,7 +1909,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
sse_encode_opt_box_autoadd_i_32(fileDescriptor, serializer);
|
sse_encode_opt_box_autoadd_i_32(fileDescriptor, serializer);
|
||||||
sse_encode_opt_list_prim_u_8_strict(bytes, serializer);
|
sse_encode_opt_list_prim_u_8_strict(bytes, serializer);
|
||||||
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRsCancellationToken(cancelToken, serializer);
|
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRsCancellationToken(cancelToken, serializer);
|
||||||
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 51, port: port_);
|
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 52, port: port_);
|
||||||
},
|
},
|
||||||
codec: SseCodec(
|
codec: SseCodec(
|
||||||
decodeSuccessData: sse_decode_unit,
|
decodeSuccessData: sse_decode_unit,
|
||||||
@@ -1908,7 +1936,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
callFfi: () {
|
callFfi: () {
|
||||||
final serializer = SseSerializer(generalizedFrbRustBinding);
|
final serializer = SseSerializer(generalizedFrbRustBinding);
|
||||||
sse_encode_String(name, serializer);
|
sse_encode_String(name, serializer);
|
||||||
return pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 52)!;
|
return pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 53)!;
|
||||||
},
|
},
|
||||||
codec: SseCodec(
|
codec: SseCodec(
|
||||||
decodeSuccessData: sse_decode_bool,
|
decodeSuccessData: sse_decode_bool,
|
||||||
@@ -1933,7 +1961,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
callFfi: () {
|
callFfi: () {
|
||||||
final serializer = SseSerializer(generalizedFrbRustBinding);
|
final serializer = SseSerializer(generalizedFrbRustBinding);
|
||||||
sse_encode_String(name, serializer);
|
sse_encode_String(name, serializer);
|
||||||
return pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 53)!;
|
return pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 54)!;
|
||||||
},
|
},
|
||||||
codec: SseCodec(
|
codec: SseCodec(
|
||||||
decodeSuccessData: sse_decode_String,
|
decodeSuccessData: sse_decode_String,
|
||||||
@@ -1986,7 +2014,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
sse_encode_String(certPem, serializer);
|
sse_encode_String(certPem, serializer);
|
||||||
sse_encode_String(privateKeyPem, serializer);
|
sse_encode_String(privateKeyPem, serializer);
|
||||||
sse_encode_u_64(timeoutMs, serializer);
|
sse_encode_u_64(timeoutMs, serializer);
|
||||||
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 54, port: port_);
|
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 55, port: port_);
|
||||||
},
|
},
|
||||||
codec: SseCodec(
|
codec: SseCodec(
|
||||||
decodeSuccessData: sse_decode_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRsDiscovery,
|
decodeSuccessData: sse_decode_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRsDiscovery,
|
||||||
@@ -2063,7 +2091,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
sse_encode_bool(verifyChecksums, serializer);
|
sse_encode_bool(verifyChecksums, serializer);
|
||||||
sse_encode_opt_box_autoadd_web_params(web, serializer);
|
sse_encode_opt_box_autoadd_web_params(web, serializer);
|
||||||
sse_encode_opt_String(showToken, serializer);
|
sse_encode_opt_String(showToken, serializer);
|
||||||
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 55, port: port_);
|
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 56, port: port_);
|
||||||
},
|
},
|
||||||
codec: SseCodec(
|
codec: SseCodec(
|
||||||
decodeSuccessData: sse_decode_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRsHttpServer,
|
decodeSuccessData: sse_decode_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRsHttpServer,
|
||||||
@@ -2089,7 +2117,7 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
final serializer = SseSerializer(generalizedFrbRustBinding);
|
final serializer = SseSerializer(generalizedFrbRustBinding);
|
||||||
sse_encode_String(cert, serializer);
|
sse_encode_String(cert, serializer);
|
||||||
sse_encode_String(publicKey, serializer);
|
sse_encode_String(publicKey, serializer);
|
||||||
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 56, port: port_);
|
pdeCallFfi(generalizedFrbRustBinding, serializer, funcId: 57, port: port_);
|
||||||
},
|
},
|
||||||
codec: SseCodec(
|
codec: SseCodec(
|
||||||
decodeSuccessData: sse_decode_unit,
|
decodeSuccessData: sse_decode_unit,
|
||||||
@@ -2689,6 +2717,12 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@protected
|
||||||
|
DeviceLogKind dco_decode_device_log_kind(dynamic raw) {
|
||||||
|
// Codec=Dco (DartCObject based), see doc to use other codecs
|
||||||
|
return DeviceLogKind.values[raw as int];
|
||||||
|
}
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
DeviceType dco_decode_device_type(dynamic raw) {
|
DeviceType dco_decode_device_type(dynamic raw) {
|
||||||
// Codec=Dco (DartCObject based), see doc to use other codecs
|
// Codec=Dco (DartCObject based), see doc to use other codecs
|
||||||
@@ -2810,6 +2844,12 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
return (raw as List<dynamic>).map(dco_decode_rs_device_channel).toList();
|
return (raw as List<dynamic>).map(dco_decode_rs_device_channel).toList();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@protected
|
||||||
|
List<RsDeviceLog> dco_decode_list_rs_device_log(dynamic raw) {
|
||||||
|
// Codec=Dco (DartCObject based), see doc to use other codecs
|
||||||
|
return (raw as List<dynamic>).map(dco_decode_rs_device_log).toList();
|
||||||
|
}
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
LsHttpClientVersion dco_decode_ls_http_client_version(dynamic raw) {
|
LsHttpClientVersion dco_decode_ls_http_client_version(dynamic raw) {
|
||||||
// Codec=Dco (DartCObject based), see doc to use other codecs
|
// Codec=Dco (DartCObject based), see doc to use other codecs
|
||||||
@@ -3086,6 +3126,18 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@protected
|
||||||
|
RsDeviceLog dco_decode_rs_device_log(dynamic raw) {
|
||||||
|
// Codec=Dco (DartCObject based), see doc to use other codecs
|
||||||
|
final arr = raw as List<dynamic>;
|
||||||
|
if (arr.length != 3) throw Exception('unexpected arr length: expect 3 but see ${arr.length}');
|
||||||
|
return RsDeviceLog(
|
||||||
|
timestampMillis: dco_decode_u_64(arr[0]),
|
||||||
|
kind: dco_decode_device_log_kind(arr[1]),
|
||||||
|
channel: dco_decode_rs_device_channel(arr[2]),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
RsDiscoveredDevice dco_decode_rs_discovered_device(dynamic raw) {
|
RsDiscoveredDevice dco_decode_rs_discovered_device(dynamic raw) {
|
||||||
// Codec=Dco (DartCObject based), see doc to use other codecs
|
// Codec=Dco (DartCObject based), see doc to use other codecs
|
||||||
@@ -3954,6 +4006,13 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
return ClientInfoWithoutId(alias: var_alias, version: var_version, deviceModel: var_deviceModel, deviceType: var_deviceType, token: var_token);
|
return ClientInfoWithoutId(alias: var_alias, version: var_version, deviceModel: var_deviceModel, deviceType: var_deviceType, token: var_token);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@protected
|
||||||
|
DeviceLogKind sse_decode_device_log_kind(SseDeserializer deserializer) {
|
||||||
|
// Codec=Sse (Serialization based), see doc to use other codecs
|
||||||
|
var inner = sse_decode_i_32(deserializer);
|
||||||
|
return DeviceLogKind.values[inner];
|
||||||
|
}
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
DeviceType sse_decode_device_type(SseDeserializer deserializer) {
|
DeviceType sse_decode_device_type(SseDeserializer deserializer) {
|
||||||
// Codec=Sse (Serialization based), see doc to use other codecs
|
// Codec=Sse (Serialization based), see doc to use other codecs
|
||||||
@@ -4110,6 +4169,18 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
return ans_;
|
return ans_;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@protected
|
||||||
|
List<RsDeviceLog> sse_decode_list_rs_device_log(SseDeserializer deserializer) {
|
||||||
|
// Codec=Sse (Serialization based), see doc to use other codecs
|
||||||
|
|
||||||
|
var len_ = sse_decode_i_32(deserializer);
|
||||||
|
var ans_ = <RsDeviceLog>[];
|
||||||
|
for (var idx_ = 0; idx_ < len_; ++idx_) {
|
||||||
|
ans_.add(sse_decode_rs_device_log(deserializer));
|
||||||
|
}
|
||||||
|
return ans_;
|
||||||
|
}
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
LsHttpClientVersion sse_decode_ls_http_client_version(SseDeserializer deserializer) {
|
LsHttpClientVersion sse_decode_ls_http_client_version(SseDeserializer deserializer) {
|
||||||
// Codec=Sse (Serialization based), see doc to use other codecs
|
// Codec=Sse (Serialization based), see doc to use other codecs
|
||||||
@@ -4443,6 +4514,15 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
return RsDeviceChannel(host: var_host, port: var_port, protocol: var_protocol);
|
return RsDeviceChannel(host: var_host, port: var_port, protocol: var_protocol);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@protected
|
||||||
|
RsDeviceLog sse_decode_rs_device_log(SseDeserializer deserializer) {
|
||||||
|
// Codec=Sse (Serialization based), see doc to use other codecs
|
||||||
|
var var_timestampMillis = sse_decode_u_64(deserializer);
|
||||||
|
var var_kind = sse_decode_device_log_kind(deserializer);
|
||||||
|
var var_channel = sse_decode_rs_device_channel(deserializer);
|
||||||
|
return RsDeviceLog(timestampMillis: var_timestampMillis, kind: var_kind, channel: var_channel);
|
||||||
|
}
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
RsDiscoveredDevice sse_decode_rs_discovered_device(SseDeserializer deserializer) {
|
RsDiscoveredDevice sse_decode_rs_discovered_device(SseDeserializer deserializer) {
|
||||||
// Codec=Sse (Serialization based), see doc to use other codecs
|
// Codec=Sse (Serialization based), see doc to use other codecs
|
||||||
@@ -5427,6 +5507,12 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
sse_encode_String(self.token, serializer);
|
sse_encode_String(self.token, serializer);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@protected
|
||||||
|
void sse_encode_device_log_kind(DeviceLogKind self, SseSerializer serializer) {
|
||||||
|
// Codec=Sse (Serialization based), see doc to use other codecs
|
||||||
|
sse_encode_i_32(self.index, serializer);
|
||||||
|
}
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
void sse_encode_device_type(DeviceType self, SseSerializer serializer) {
|
void sse_encode_device_type(DeviceType self, SseSerializer serializer) {
|
||||||
// Codec=Sse (Serialization based), see doc to use other codecs
|
// Codec=Sse (Serialization based), see doc to use other codecs
|
||||||
@@ -5552,6 +5638,15 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@protected
|
||||||
|
void sse_encode_list_rs_device_log(List<RsDeviceLog> self, SseSerializer serializer) {
|
||||||
|
// Codec=Sse (Serialization based), see doc to use other codecs
|
||||||
|
sse_encode_i_32(self.length, serializer);
|
||||||
|
for (final item in self) {
|
||||||
|
sse_encode_rs_device_log(item, serializer);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
void sse_encode_ls_http_client_version(LsHttpClientVersion self, SseSerializer serializer) {
|
void sse_encode_ls_http_client_version(LsHttpClientVersion self, SseSerializer serializer) {
|
||||||
// Codec=Sse (Serialization based), see doc to use other codecs
|
// Codec=Sse (Serialization based), see doc to use other codecs
|
||||||
@@ -5831,6 +5926,14 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
|||||||
sse_encode_protocol_type(self.protocol, serializer);
|
sse_encode_protocol_type(self.protocol, serializer);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@protected
|
||||||
|
void sse_encode_rs_device_log(RsDeviceLog self, SseSerializer serializer) {
|
||||||
|
// Codec=Sse (Serialization based), see doc to use other codecs
|
||||||
|
sse_encode_u_64(self.timestampMillis, serializer);
|
||||||
|
sse_encode_device_log_kind(self.kind, serializer);
|
||||||
|
sse_encode_rs_device_channel(self.channel, serializer);
|
||||||
|
}
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
void sse_encode_rs_discovered_device(RsDiscoveredDevice self, SseSerializer serializer) {
|
void sse_encode_rs_discovered_device(RsDiscoveredDevice self, SseSerializer serializer) {
|
||||||
// Codec=Sse (Serialization based), see doc to use other codecs
|
// Codec=Sse (Serialization based), see doc to use other codecs
|
||||||
@@ -6266,6 +6369,11 @@ class RsDiscoveryImpl extends RustOpaque implements RsDiscovery {
|
|||||||
that: this,
|
that: this,
|
||||||
);
|
);
|
||||||
|
|
||||||
|
/// The retained confirmations of a stored device, oldest first, capped at
|
||||||
|
/// the store's log limit. Empty when the fingerprint is unknown.
|
||||||
|
Future<List<RsDeviceLog>> deviceLogs({required String fingerprint}) =>
|
||||||
|
RustLib.instance.api.crateApiDiscoveryRsDiscoveryDeviceLogs(that: this, fingerprint: fingerprint);
|
||||||
|
|
||||||
/// Discovers a device at a known address, e.g. a favorite or a peer that
|
/// Discovers a device at a known address, e.g. a favorite or a peer that
|
||||||
/// multicast does not reach, by sending it a register request.
|
/// multicast does not reach, by sending it a register request.
|
||||||
///
|
///
|
||||||
|
|||||||
@@ -300,6 +300,9 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
|
|||||||
@protected
|
@protected
|
||||||
ClientInfoWithoutId dco_decode_client_info_without_id(dynamic raw);
|
ClientInfoWithoutId dco_decode_client_info_without_id(dynamic raw);
|
||||||
|
|
||||||
|
@protected
|
||||||
|
DeviceLogKind dco_decode_device_log_kind(dynamic raw);
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
DeviceType dco_decode_device_type(dynamic raw);
|
DeviceType dco_decode_device_type(dynamic raw);
|
||||||
|
|
||||||
@@ -348,6 +351,9 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
|
|||||||
@protected
|
@protected
|
||||||
List<RsDeviceChannel> dco_decode_list_rs_device_channel(dynamic raw);
|
List<RsDeviceChannel> dco_decode_list_rs_device_channel(dynamic raw);
|
||||||
|
|
||||||
|
@protected
|
||||||
|
List<RsDeviceLog> dco_decode_list_rs_device_log(dynamic raw);
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
LsHttpClientVersion dco_decode_ls_http_client_version(dynamic raw);
|
LsHttpClientVersion dco_decode_ls_http_client_version(dynamic raw);
|
||||||
|
|
||||||
@@ -442,6 +448,9 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
|
|||||||
@protected
|
@protected
|
||||||
RsDeviceChannel dco_decode_rs_device_channel(dynamic raw);
|
RsDeviceChannel dco_decode_rs_device_channel(dynamic raw);
|
||||||
|
|
||||||
|
@protected
|
||||||
|
RsDeviceLog dco_decode_rs_device_log(dynamic raw);
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
RsDiscoveredDevice dco_decode_rs_discovered_device(dynamic raw);
|
RsDiscoveredDevice dco_decode_rs_discovered_device(dynamic raw);
|
||||||
|
|
||||||
@@ -767,6 +776,9 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
|
|||||||
@protected
|
@protected
|
||||||
ClientInfoWithoutId sse_decode_client_info_without_id(SseDeserializer deserializer);
|
ClientInfoWithoutId sse_decode_client_info_without_id(SseDeserializer deserializer);
|
||||||
|
|
||||||
|
@protected
|
||||||
|
DeviceLogKind sse_decode_device_log_kind(SseDeserializer deserializer);
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
DeviceType sse_decode_device_type(SseDeserializer deserializer);
|
DeviceType sse_decode_device_type(SseDeserializer deserializer);
|
||||||
|
|
||||||
@@ -815,6 +827,9 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
|
|||||||
@protected
|
@protected
|
||||||
List<RsDeviceChannel> sse_decode_list_rs_device_channel(SseDeserializer deserializer);
|
List<RsDeviceChannel> sse_decode_list_rs_device_channel(SseDeserializer deserializer);
|
||||||
|
|
||||||
|
@protected
|
||||||
|
List<RsDeviceLog> sse_decode_list_rs_device_log(SseDeserializer deserializer);
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
LsHttpClientVersion sse_decode_ls_http_client_version(SseDeserializer deserializer);
|
LsHttpClientVersion sse_decode_ls_http_client_version(SseDeserializer deserializer);
|
||||||
|
|
||||||
@@ -911,6 +926,9 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
|
|||||||
@protected
|
@protected
|
||||||
RsDeviceChannel sse_decode_rs_device_channel(SseDeserializer deserializer);
|
RsDeviceChannel sse_decode_rs_device_channel(SseDeserializer deserializer);
|
||||||
|
|
||||||
|
@protected
|
||||||
|
RsDeviceLog sse_decode_rs_device_log(SseDeserializer deserializer);
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
RsDiscoveredDevice sse_decode_rs_discovered_device(SseDeserializer deserializer);
|
RsDiscoveredDevice sse_decode_rs_discovered_device(SseDeserializer deserializer);
|
||||||
|
|
||||||
@@ -1281,6 +1299,9 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
|
|||||||
@protected
|
@protected
|
||||||
void sse_encode_client_info_without_id(ClientInfoWithoutId self, SseSerializer serializer);
|
void sse_encode_client_info_without_id(ClientInfoWithoutId self, SseSerializer serializer);
|
||||||
|
|
||||||
|
@protected
|
||||||
|
void sse_encode_device_log_kind(DeviceLogKind self, SseSerializer serializer);
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
void sse_encode_device_type(DeviceType self, SseSerializer serializer);
|
void sse_encode_device_type(DeviceType self, SseSerializer serializer);
|
||||||
|
|
||||||
@@ -1329,6 +1350,9 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
|
|||||||
@protected
|
@protected
|
||||||
void sse_encode_list_rs_device_channel(List<RsDeviceChannel> self, SseSerializer serializer);
|
void sse_encode_list_rs_device_channel(List<RsDeviceChannel> self, SseSerializer serializer);
|
||||||
|
|
||||||
|
@protected
|
||||||
|
void sse_encode_list_rs_device_log(List<RsDeviceLog> self, SseSerializer serializer);
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
void sse_encode_ls_http_client_version(LsHttpClientVersion self, SseSerializer serializer);
|
void sse_encode_ls_http_client_version(LsHttpClientVersion self, SseSerializer serializer);
|
||||||
|
|
||||||
@@ -1426,6 +1450,9 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
|
|||||||
@protected
|
@protected
|
||||||
void sse_encode_rs_device_channel(RsDeviceChannel self, SseSerializer serializer);
|
void sse_encode_rs_device_channel(RsDeviceChannel self, SseSerializer serializer);
|
||||||
|
|
||||||
|
@protected
|
||||||
|
void sse_encode_rs_device_log(RsDeviceLog self, SseSerializer serializer);
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
void sse_encode_rs_discovered_device(RsDiscoveredDevice self, SseSerializer serializer);
|
void sse_encode_rs_discovered_device(RsDiscoveredDevice self, SseSerializer serializer);
|
||||||
|
|
||||||
|
|||||||
@@ -302,6 +302,9 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
|
|||||||
@protected
|
@protected
|
||||||
ClientInfoWithoutId dco_decode_client_info_without_id(dynamic raw);
|
ClientInfoWithoutId dco_decode_client_info_without_id(dynamic raw);
|
||||||
|
|
||||||
|
@protected
|
||||||
|
DeviceLogKind dco_decode_device_log_kind(dynamic raw);
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
DeviceType dco_decode_device_type(dynamic raw);
|
DeviceType dco_decode_device_type(dynamic raw);
|
||||||
|
|
||||||
@@ -350,6 +353,9 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
|
|||||||
@protected
|
@protected
|
||||||
List<RsDeviceChannel> dco_decode_list_rs_device_channel(dynamic raw);
|
List<RsDeviceChannel> dco_decode_list_rs_device_channel(dynamic raw);
|
||||||
|
|
||||||
|
@protected
|
||||||
|
List<RsDeviceLog> dco_decode_list_rs_device_log(dynamic raw);
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
LsHttpClientVersion dco_decode_ls_http_client_version(dynamic raw);
|
LsHttpClientVersion dco_decode_ls_http_client_version(dynamic raw);
|
||||||
|
|
||||||
@@ -444,6 +450,9 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
|
|||||||
@protected
|
@protected
|
||||||
RsDeviceChannel dco_decode_rs_device_channel(dynamic raw);
|
RsDeviceChannel dco_decode_rs_device_channel(dynamic raw);
|
||||||
|
|
||||||
|
@protected
|
||||||
|
RsDeviceLog dco_decode_rs_device_log(dynamic raw);
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
RsDiscoveredDevice dco_decode_rs_discovered_device(dynamic raw);
|
RsDiscoveredDevice dco_decode_rs_discovered_device(dynamic raw);
|
||||||
|
|
||||||
@@ -769,6 +778,9 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
|
|||||||
@protected
|
@protected
|
||||||
ClientInfoWithoutId sse_decode_client_info_without_id(SseDeserializer deserializer);
|
ClientInfoWithoutId sse_decode_client_info_without_id(SseDeserializer deserializer);
|
||||||
|
|
||||||
|
@protected
|
||||||
|
DeviceLogKind sse_decode_device_log_kind(SseDeserializer deserializer);
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
DeviceType sse_decode_device_type(SseDeserializer deserializer);
|
DeviceType sse_decode_device_type(SseDeserializer deserializer);
|
||||||
|
|
||||||
@@ -817,6 +829,9 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
|
|||||||
@protected
|
@protected
|
||||||
List<RsDeviceChannel> sse_decode_list_rs_device_channel(SseDeserializer deserializer);
|
List<RsDeviceChannel> sse_decode_list_rs_device_channel(SseDeserializer deserializer);
|
||||||
|
|
||||||
|
@protected
|
||||||
|
List<RsDeviceLog> sse_decode_list_rs_device_log(SseDeserializer deserializer);
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
LsHttpClientVersion sse_decode_ls_http_client_version(SseDeserializer deserializer);
|
LsHttpClientVersion sse_decode_ls_http_client_version(SseDeserializer deserializer);
|
||||||
|
|
||||||
@@ -913,6 +928,9 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
|
|||||||
@protected
|
@protected
|
||||||
RsDeviceChannel sse_decode_rs_device_channel(SseDeserializer deserializer);
|
RsDeviceChannel sse_decode_rs_device_channel(SseDeserializer deserializer);
|
||||||
|
|
||||||
|
@protected
|
||||||
|
RsDeviceLog sse_decode_rs_device_log(SseDeserializer deserializer);
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
RsDiscoveredDevice sse_decode_rs_discovered_device(SseDeserializer deserializer);
|
RsDiscoveredDevice sse_decode_rs_discovered_device(SseDeserializer deserializer);
|
||||||
|
|
||||||
@@ -1283,6 +1301,9 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
|
|||||||
@protected
|
@protected
|
||||||
void sse_encode_client_info_without_id(ClientInfoWithoutId self, SseSerializer serializer);
|
void sse_encode_client_info_without_id(ClientInfoWithoutId self, SseSerializer serializer);
|
||||||
|
|
||||||
|
@protected
|
||||||
|
void sse_encode_device_log_kind(DeviceLogKind self, SseSerializer serializer);
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
void sse_encode_device_type(DeviceType self, SseSerializer serializer);
|
void sse_encode_device_type(DeviceType self, SseSerializer serializer);
|
||||||
|
|
||||||
@@ -1331,6 +1352,9 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
|
|||||||
@protected
|
@protected
|
||||||
void sse_encode_list_rs_device_channel(List<RsDeviceChannel> self, SseSerializer serializer);
|
void sse_encode_list_rs_device_channel(List<RsDeviceChannel> self, SseSerializer serializer);
|
||||||
|
|
||||||
|
@protected
|
||||||
|
void sse_encode_list_rs_device_log(List<RsDeviceLog> self, SseSerializer serializer);
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
void sse_encode_ls_http_client_version(LsHttpClientVersion self, SseSerializer serializer);
|
void sse_encode_ls_http_client_version(LsHttpClientVersion self, SseSerializer serializer);
|
||||||
|
|
||||||
@@ -1428,6 +1452,9 @@ abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
|
|||||||
@protected
|
@protected
|
||||||
void sse_encode_rs_device_channel(RsDeviceChannel self, SseSerializer serializer);
|
void sse_encode_rs_device_channel(RsDeviceChannel self, SseSerializer serializer);
|
||||||
|
|
||||||
|
@protected
|
||||||
|
void sse_encode_rs_device_log(RsDeviceLog self, SseSerializer serializer);
|
||||||
|
|
||||||
@protected
|
@protected
|
||||||
void sse_encode_rs_discovered_device(RsDiscoveredDevice self, SseSerializer serializer);
|
void sse_encode_rs_discovered_device(RsDiscoveredDevice self, SseSerializer serializer);
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,8 @@
|
|||||||
use crate::frb_generated::StreamSink;
|
use crate::frb_generated::StreamSink;
|
||||||
|
use flutter_rust_bridge::frb;
|
||||||
|
pub use localsend::discovery::DeviceLogKind;
|
||||||
use localsend::discovery::{
|
use localsend::discovery::{
|
||||||
DeviceChannel, DeviceIdentity, DiscoveredDevice, DiscoveryConfig, DiscoveryEvent,
|
DeviceChannel, DeviceIdentity, DeviceLog, DiscoveredDevice, DiscoveryConfig, DiscoveryEvent,
|
||||||
DiscoveryHandle, HttpChannel, StatefulDevice,
|
DiscoveryHandle, HttpChannel, StatefulDevice,
|
||||||
};
|
};
|
||||||
use localsend::model::discovery::{DeviceType, ProtocolType};
|
use localsend::model::discovery::{DeviceType, ProtocolType};
|
||||||
@@ -83,6 +85,24 @@ pub struct RsStoredDevice {
|
|||||||
pub channels: Vec<RsDeviceChannel>,
|
pub channels: Vec<RsDeviceChannel>,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// One retained confirmation of a stored device, for the device details UI.
|
||||||
|
pub struct RsDeviceLog {
|
||||||
|
/// When the confirmation happened, in milliseconds since the Unix epoch.
|
||||||
|
pub timestamp_millis: u64,
|
||||||
|
|
||||||
|
/// Whether the confirmation discovered the device or re-confirmed it.
|
||||||
|
pub kind: DeviceLogKind,
|
||||||
|
|
||||||
|
/// The channel the confirmation happened on.
|
||||||
|
pub channel: RsDeviceChannel,
|
||||||
|
}
|
||||||
|
|
||||||
|
#[frb(mirror(DeviceLogKind))]
|
||||||
|
pub enum _DeviceLogKind {
|
||||||
|
Discovered,
|
||||||
|
Updated,
|
||||||
|
}
|
||||||
|
|
||||||
pub struct RsDiscovery {
|
pub struct RsDiscovery {
|
||||||
instance: Arc<DiscoveryInstance>,
|
instance: Arc<DiscoveryInstance>,
|
||||||
event_rx: Mutex<Option<mpsc::Receiver<DiscoveryEvent>>>,
|
event_rx: Mutex<Option<mpsc::Receiver<DiscoveryEvent>>>,
|
||||||
@@ -334,6 +354,16 @@ impl RsDiscovery {
|
|||||||
.await;
|
.await;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// The retained confirmations of a stored device, oldest first, capped at
|
||||||
|
/// the store's log limit. Empty when the fingerprint is unknown.
|
||||||
|
pub fn device_logs(&self, fingerprint: String) -> Vec<RsDeviceLog> {
|
||||||
|
self.instance
|
||||||
|
.handle
|
||||||
|
.device_by_fingerprint(&fingerprint)
|
||||||
|
.map(|stored| stored.logs.into_iter().map(rs_device_log).collect())
|
||||||
|
.unwrap_or_default()
|
||||||
|
}
|
||||||
|
|
||||||
/// Stops the discovery, which also ends the [RsDiscovery::listen] stream.
|
/// Stops the discovery, which also ends the [RsDiscovery::listen] stream.
|
||||||
/// Returns after all sockets are closed, so the port can be bound again.
|
/// Returns after all sockets are closed, so the port can be bound again.
|
||||||
pub async fn stop(&self) {
|
pub async fn stop(&self) {
|
||||||
@@ -349,6 +379,23 @@ impl RsDiscovery {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fn rs_device_log(log: DeviceLog) -> RsDeviceLog {
|
||||||
|
let DeviceChannel::Http(http) = log.channel;
|
||||||
|
RsDeviceLog {
|
||||||
|
timestamp_millis: log
|
||||||
|
.timestamp
|
||||||
|
.duration_since(std::time::UNIX_EPOCH)
|
||||||
|
.map(|elapsed| elapsed.as_millis() as u64)
|
||||||
|
.unwrap_or(0),
|
||||||
|
kind: log.kind,
|
||||||
|
channel: RsDeviceChannel {
|
||||||
|
host: http.host,
|
||||||
|
port: http.port,
|
||||||
|
protocol: http.protocol,
|
||||||
|
},
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// The merged stored device flattened for the Dart side, its channels ranked
|
/// The merged stored device flattened for the Dart side, its channels ranked
|
||||||
/// best first.
|
/// best first.
|
||||||
fn rs_stored_device(stored: StatefulDevice) -> RsStoredDevice {
|
fn rs_stored_device(stored: StatefulDevice) -> RsStoredDevice {
|
||||||
|
|||||||
@@ -44,7 +44,7 @@ flutter_rust_bridge::frb_generated_boilerplate!(
|
|||||||
default_rust_auto_opaque = RustAutoOpaqueMoi,
|
default_rust_auto_opaque = RustAutoOpaqueMoi,
|
||||||
);
|
);
|
||||||
pub(crate) const FLUTTER_RUST_BRIDGE_CODEGEN_VERSION: &str = "2.12.0";
|
pub(crate) const FLUTTER_RUST_BRIDGE_CODEGEN_VERSION: &str = "2.12.0";
|
||||||
pub(crate) const FLUTTER_RUST_BRIDGE_CODEGEN_CONTENT_HASH: i32 = -1120530143;
|
pub(crate) const FLUTTER_RUST_BRIDGE_CODEGEN_CONTENT_HASH: i32 = -2095161624;
|
||||||
|
|
||||||
// Section: executor
|
// Section: executor
|
||||||
|
|
||||||
@@ -528,6 +528,60 @@ fn wire__crate__api__discovery__RsDiscovery_announce_impl(
|
|||||||
},
|
},
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
fn wire__crate__api__discovery__RsDiscovery_device_logs_impl(
|
||||||
|
port_: flutter_rust_bridge::for_generated::MessagePort,
|
||||||
|
ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
|
||||||
|
rust_vec_len_: i32,
|
||||||
|
data_len_: i32,
|
||||||
|
) {
|
||||||
|
FLUTTER_RUST_BRIDGE_HANDLER.wrap_normal::<flutter_rust_bridge::for_generated::SseCodec, _, _>(
|
||||||
|
flutter_rust_bridge::for_generated::TaskInfo {
|
||||||
|
debug_name: "RsDiscovery_device_logs",
|
||||||
|
port: Some(port_),
|
||||||
|
mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
|
||||||
|
},
|
||||||
|
move || {
|
||||||
|
let message = unsafe {
|
||||||
|
flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
|
||||||
|
ptr_,
|
||||||
|
rust_vec_len_,
|
||||||
|
data_len_,
|
||||||
|
)
|
||||||
|
};
|
||||||
|
let mut deserializer =
|
||||||
|
flutter_rust_bridge::for_generated::SseDeserializer::new(message);
|
||||||
|
let api_that = <RustOpaqueMoi<
|
||||||
|
flutter_rust_bridge::for_generated::RustAutoOpaqueInner<RsDiscovery>,
|
||||||
|
>>::sse_decode(&mut deserializer);
|
||||||
|
let api_fingerprint = <String>::sse_decode(&mut deserializer);
|
||||||
|
deserializer.end();
|
||||||
|
move |context| {
|
||||||
|
transform_result_sse::<_, ()>((move || {
|
||||||
|
let mut api_that_guard = None;
|
||||||
|
let decode_indices_ =
|
||||||
|
flutter_rust_bridge::for_generated::lockable_compute_decode_order(vec![
|
||||||
|
flutter_rust_bridge::for_generated::LockableOrderInfo::new(
|
||||||
|
&api_that, 0, false,
|
||||||
|
),
|
||||||
|
]);
|
||||||
|
for i in decode_indices_ {
|
||||||
|
match i {
|
||||||
|
0 => api_that_guard = Some(api_that.lockable_decode_sync_ref()),
|
||||||
|
_ => unreachable!(),
|
||||||
|
}
|
||||||
|
}
|
||||||
|
let api_that_guard = api_that_guard.unwrap();
|
||||||
|
let output_ok =
|
||||||
|
Result::<_, ()>::Ok(crate::api::discovery::RsDiscovery::device_logs(
|
||||||
|
&*api_that_guard,
|
||||||
|
api_fingerprint,
|
||||||
|
))?;
|
||||||
|
Ok(output_ok)
|
||||||
|
})())
|
||||||
|
}
|
||||||
|
},
|
||||||
|
)
|
||||||
|
}
|
||||||
fn wire__crate__api__discovery__RsDiscovery_discover_impl(
|
fn wire__crate__api__discovery__RsDiscovery_discover_impl(
|
||||||
port_: flutter_rust_bridge::for_generated::MessagePort,
|
port_: flutter_rust_bridge::for_generated::MessagePort,
|
||||||
ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
|
ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
|
||||||
@@ -3932,6 +3986,18 @@ impl SseDecode for crate::api::webrtc::ClientInfoWithoutId {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
impl SseDecode for crate::api::discovery::DeviceLogKind {
|
||||||
|
// Codec=Sse (Serialization based), see doc to use other codecs
|
||||||
|
fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
|
||||||
|
let mut inner = <i32>::sse_decode(deserializer);
|
||||||
|
return match inner {
|
||||||
|
0 => crate::api::discovery::DeviceLogKind::Discovered,
|
||||||
|
1 => crate::api::discovery::DeviceLogKind::Updated,
|
||||||
|
_ => unreachable!("Invalid variant for DeviceLogKind: {}", inner),
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
impl SseDecode for crate::api::model::DeviceType {
|
impl SseDecode for crate::api::model::DeviceType {
|
||||||
// Codec=Sse (Serialization based), see doc to use other codecs
|
// Codec=Sse (Serialization based), see doc to use other codecs
|
||||||
fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
|
fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
|
||||||
@@ -4114,6 +4180,20 @@ impl SseDecode for Vec<crate::api::discovery::RsDeviceChannel> {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
impl SseDecode for Vec<crate::api::discovery::RsDeviceLog> {
|
||||||
|
// Codec=Sse (Serialization based), see doc to use other codecs
|
||||||
|
fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
|
||||||
|
let mut len_ = <i32>::sse_decode(deserializer);
|
||||||
|
let mut ans_ = Vec::with_capacity(len_ as usize);
|
||||||
|
for idx_ in 0..len_ {
|
||||||
|
ans_.push(<crate::api::discovery::RsDeviceLog>::sse_decode(
|
||||||
|
deserializer,
|
||||||
|
));
|
||||||
|
}
|
||||||
|
return ans_;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
impl SseDecode for crate::api::http::LsHttpClientVersion {
|
impl SseDecode for crate::api::http::LsHttpClientVersion {
|
||||||
// Codec=Sse (Serialization based), see doc to use other codecs
|
// Codec=Sse (Serialization based), see doc to use other codecs
|
||||||
fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
|
fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
|
||||||
@@ -4500,6 +4580,20 @@ impl SseDecode for crate::api::discovery::RsDeviceChannel {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
impl SseDecode for crate::api::discovery::RsDeviceLog {
|
||||||
|
// Codec=Sse (Serialization based), see doc to use other codecs
|
||||||
|
fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
|
||||||
|
let mut var_timestampMillis = <u64>::sse_decode(deserializer);
|
||||||
|
let mut var_kind = <crate::api::discovery::DeviceLogKind>::sse_decode(deserializer);
|
||||||
|
let mut var_channel = <crate::api::discovery::RsDeviceChannel>::sse_decode(deserializer);
|
||||||
|
return crate::api::discovery::RsDeviceLog {
|
||||||
|
timestamp_millis: var_timestampMillis,
|
||||||
|
kind: var_kind,
|
||||||
|
channel: var_channel,
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
impl SseDecode for crate::api::discovery::RsDiscoveredDevice {
|
impl SseDecode for crate::api::discovery::RsDiscoveredDevice {
|
||||||
// Codec=Sse (Serialization based), see doc to use other codecs
|
// Codec=Sse (Serialization based), see doc to use other codecs
|
||||||
fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
|
fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
|
||||||
@@ -5028,194 +5122,200 @@ fn pde_ffi_dispatcher_primary_impl(
|
|||||||
rust_vec_len,
|
rust_vec_len,
|
||||||
data_len,
|
data_len,
|
||||||
),
|
),
|
||||||
9 => wire__crate__api__discovery__RsDiscovery_discover_impl(
|
9 => wire__crate__api__discovery__RsDiscovery_device_logs_impl(
|
||||||
port,
|
port,
|
||||||
ptr,
|
ptr,
|
||||||
rust_vec_len,
|
rust_vec_len,
|
||||||
data_len,
|
data_len,
|
||||||
),
|
),
|
||||||
10 => {
|
10 => wire__crate__api__discovery__RsDiscovery_discover_impl(
|
||||||
|
port,
|
||||||
|
ptr,
|
||||||
|
rust_vec_len,
|
||||||
|
data_len,
|
||||||
|
),
|
||||||
|
11 => {
|
||||||
wire__crate__api__discovery__RsDiscovery_listen_impl(port, ptr, rust_vec_len, data_len)
|
wire__crate__api__discovery__RsDiscovery_listen_impl(port, ptr, rust_vec_len, data_len)
|
||||||
}
|
}
|
||||||
11 => wire__crate__api__discovery__RsDiscovery_multicast_error_impl(
|
12 => wire__crate__api__discovery__RsDiscovery_multicast_error_impl(
|
||||||
port,
|
port,
|
||||||
ptr,
|
ptr,
|
||||||
rust_vec_len,
|
rust_vec_len,
|
||||||
data_len,
|
data_len,
|
||||||
),
|
),
|
||||||
12 => wire__crate__api__discovery__RsDiscovery_scan_subnet_impl(
|
13 => wire__crate__api__discovery__RsDiscovery_scan_subnet_impl(
|
||||||
port,
|
port,
|
||||||
ptr,
|
ptr,
|
||||||
rust_vec_len,
|
rust_vec_len,
|
||||||
data_len,
|
data_len,
|
||||||
),
|
),
|
||||||
13 => wire__crate__api__discovery__RsDiscovery_set_answer_announcements_impl(
|
14 => wire__crate__api__discovery__RsDiscovery_set_answer_announcements_impl(
|
||||||
port,
|
port,
|
||||||
ptr,
|
ptr,
|
||||||
rust_vec_len,
|
rust_vec_len,
|
||||||
data_len,
|
data_len,
|
||||||
),
|
),
|
||||||
14 => wire__crate__api__discovery__RsDiscovery_stop_impl(port, ptr, rust_vec_len, data_len),
|
15 => wire__crate__api__discovery__RsDiscovery_stop_impl(port, ptr, rust_vec_len, data_len),
|
||||||
15 => wire__crate__api__http__RsHttpClient_cancel_impl(port, ptr, rust_vec_len, data_len),
|
16 => wire__crate__api__http__RsHttpClient_cancel_impl(port, ptr, rust_vec_len, data_len),
|
||||||
16 => wire__crate__api__http__RsHttpClient_prepare_upload_impl(
|
17 => wire__crate__api__http__RsHttpClient_prepare_upload_impl(
|
||||||
port,
|
port,
|
||||||
ptr,
|
ptr,
|
||||||
rust_vec_len,
|
rust_vec_len,
|
||||||
data_len,
|
data_len,
|
||||||
),
|
),
|
||||||
17 => wire__crate__api__http__RsHttpClient_register_impl(port, ptr, rust_vec_len, data_len),
|
18 => wire__crate__api__http__RsHttpClient_register_impl(port, ptr, rust_vec_len, data_len),
|
||||||
18 => wire__crate__api__http__RsHttpClient_upload_impl(port, ptr, rust_vec_len, data_len),
|
19 => wire__crate__api__http__RsHttpClient_upload_impl(port, ptr, rust_vec_len, data_len),
|
||||||
19 => wire__crate__api__server__RsHttpServer_cancel_session_impl(
|
20 => wire__crate__api__server__RsHttpServer_cancel_session_impl(
|
||||||
port,
|
port,
|
||||||
ptr,
|
ptr,
|
||||||
rust_vec_len,
|
rust_vec_len,
|
||||||
data_len,
|
data_len,
|
||||||
),
|
),
|
||||||
20 => wire__crate__api__server__RsHttpServer_fail_file_download_impl(
|
21 => wire__crate__api__server__RsHttpServer_fail_file_download_impl(
|
||||||
port,
|
port,
|
||||||
ptr,
|
ptr,
|
||||||
rust_vec_len,
|
rust_vec_len,
|
||||||
data_len,
|
data_len,
|
||||||
),
|
),
|
||||||
21 => wire__crate__api__server__RsHttpServer_fail_file_upload_impl(
|
22 => wire__crate__api__server__RsHttpServer_fail_file_upload_impl(
|
||||||
port,
|
port,
|
||||||
ptr,
|
ptr,
|
||||||
rust_vec_len,
|
rust_vec_len,
|
||||||
data_len,
|
data_len,
|
||||||
),
|
),
|
||||||
22 => wire__crate__api__server__RsHttpServer_listen_impl(port, ptr, rust_vec_len, data_len),
|
23 => wire__crate__api__server__RsHttpServer_listen_impl(port, ptr, rust_vec_len, data_len),
|
||||||
23 => wire__crate__api__server__RsHttpServer_respond_file_download_impl(
|
24 => wire__crate__api__server__RsHttpServer_respond_file_download_impl(
|
||||||
port,
|
port,
|
||||||
ptr,
|
ptr,
|
||||||
rust_vec_len,
|
rust_vec_len,
|
||||||
data_len,
|
data_len,
|
||||||
),
|
),
|
||||||
24 => wire__crate__api__server__RsHttpServer_respond_file_upload_impl(
|
25 => wire__crate__api__server__RsHttpServer_respond_file_upload_impl(
|
||||||
port,
|
port,
|
||||||
ptr,
|
ptr,
|
||||||
rust_vec_len,
|
rust_vec_len,
|
||||||
data_len,
|
data_len,
|
||||||
),
|
),
|
||||||
25 => wire__crate__api__server__RsHttpServer_respond_prepare_download_impl(
|
26 => wire__crate__api__server__RsHttpServer_respond_prepare_download_impl(
|
||||||
port,
|
port,
|
||||||
ptr,
|
ptr,
|
||||||
rust_vec_len,
|
rust_vec_len,
|
||||||
data_len,
|
data_len,
|
||||||
),
|
),
|
||||||
26 => wire__crate__api__server__RsHttpServer_respond_prepare_upload_impl(
|
27 => wire__crate__api__server__RsHttpServer_respond_prepare_upload_impl(
|
||||||
port,
|
port,
|
||||||
ptr,
|
ptr,
|
||||||
rust_vec_len,
|
rust_vec_len,
|
||||||
data_len,
|
data_len,
|
||||||
),
|
),
|
||||||
27 => wire__crate__api__server__RsHttpServer_stop_impl(port, ptr, rust_vec_len, data_len),
|
28 => wire__crate__api__server__RsHttpServer_stop_impl(port, ptr, rust_vec_len, data_len),
|
||||||
28 => wire__crate__api__webrtc__RtcFileReceiver_get_file_id_impl(
|
29 => wire__crate__api__webrtc__RtcFileReceiver_get_file_id_impl(
|
||||||
port,
|
port,
|
||||||
ptr,
|
ptr,
|
||||||
rust_vec_len,
|
rust_vec_len,
|
||||||
data_len,
|
data_len,
|
||||||
),
|
),
|
||||||
29 => wire__crate__api__webrtc__RtcFileReceiver_receive_impl(
|
30 => wire__crate__api__webrtc__RtcFileReceiver_receive_impl(
|
||||||
port,
|
port,
|
||||||
ptr,
|
ptr,
|
||||||
rust_vec_len,
|
rust_vec_len,
|
||||||
data_len,
|
data_len,
|
||||||
),
|
),
|
||||||
30 => wire__crate__api__webrtc__RtcFileSender_send_impl(port, ptr, rust_vec_len, data_len),
|
31 => wire__crate__api__webrtc__RtcFileSender_send_impl(port, ptr, rust_vec_len, data_len),
|
||||||
31 => wire__crate__api__webrtc__RtcReceiveController_decline_impl(
|
32 => wire__crate__api__webrtc__RtcReceiveController_decline_impl(
|
||||||
port,
|
port,
|
||||||
ptr,
|
ptr,
|
||||||
rust_vec_len,
|
rust_vec_len,
|
||||||
data_len,
|
data_len,
|
||||||
),
|
),
|
||||||
32 => wire__crate__api__webrtc__RtcReceiveController_listen_error_impl(
|
33 => wire__crate__api__webrtc__RtcReceiveController_listen_error_impl(
|
||||||
port,
|
port,
|
||||||
ptr,
|
ptr,
|
||||||
rust_vec_len,
|
rust_vec_len,
|
||||||
data_len,
|
data_len,
|
||||||
),
|
),
|
||||||
33 => wire__crate__api__webrtc__RtcReceiveController_listen_files_impl(
|
34 => wire__crate__api__webrtc__RtcReceiveController_listen_files_impl(
|
||||||
port,
|
port,
|
||||||
ptr,
|
ptr,
|
||||||
rust_vec_len,
|
rust_vec_len,
|
||||||
data_len,
|
data_len,
|
||||||
),
|
),
|
||||||
34 => wire__crate__api__webrtc__RtcReceiveController_listen_receiving_impl(
|
35 => wire__crate__api__webrtc__RtcReceiveController_listen_receiving_impl(
|
||||||
port,
|
port,
|
||||||
ptr,
|
ptr,
|
||||||
rust_vec_len,
|
rust_vec_len,
|
||||||
data_len,
|
data_len,
|
||||||
),
|
),
|
||||||
35 => wire__crate__api__webrtc__RtcReceiveController_listen_status_impl(
|
36 => wire__crate__api__webrtc__RtcReceiveController_listen_status_impl(
|
||||||
port,
|
port,
|
||||||
ptr,
|
ptr,
|
||||||
rust_vec_len,
|
rust_vec_len,
|
||||||
data_len,
|
data_len,
|
||||||
),
|
),
|
||||||
36 => wire__crate__api__webrtc__RtcReceiveController_send_file_status_impl(
|
37 => wire__crate__api__webrtc__RtcReceiveController_send_file_status_impl(
|
||||||
port,
|
port,
|
||||||
ptr,
|
ptr,
|
||||||
rust_vec_len,
|
rust_vec_len,
|
||||||
data_len,
|
data_len,
|
||||||
),
|
),
|
||||||
37 => wire__crate__api__webrtc__RtcReceiveController_send_pin_impl(
|
38 => wire__crate__api__webrtc__RtcReceiveController_send_pin_impl(
|
||||||
port,
|
port,
|
||||||
ptr,
|
ptr,
|
||||||
rust_vec_len,
|
rust_vec_len,
|
||||||
data_len,
|
data_len,
|
||||||
),
|
),
|
||||||
38 => wire__crate__api__webrtc__RtcReceiveController_send_selection_impl(
|
39 => wire__crate__api__webrtc__RtcReceiveController_send_selection_impl(
|
||||||
port,
|
port,
|
||||||
ptr,
|
ptr,
|
||||||
rust_vec_len,
|
rust_vec_len,
|
||||||
data_len,
|
data_len,
|
||||||
),
|
),
|
||||||
39 => wire__crate__api__webrtc__RtcSendController_listen_error_impl(
|
40 => wire__crate__api__webrtc__RtcSendController_listen_error_impl(
|
||||||
port,
|
port,
|
||||||
ptr,
|
ptr,
|
||||||
rust_vec_len,
|
rust_vec_len,
|
||||||
data_len,
|
data_len,
|
||||||
),
|
),
|
||||||
40 => wire__crate__api__webrtc__RtcSendController_listen_selected_files_impl(
|
41 => wire__crate__api__webrtc__RtcSendController_listen_selected_files_impl(
|
||||||
port,
|
port,
|
||||||
ptr,
|
ptr,
|
||||||
rust_vec_len,
|
rust_vec_len,
|
||||||
data_len,
|
data_len,
|
||||||
),
|
),
|
||||||
41 => wire__crate__api__webrtc__RtcSendController_listen_status_impl(
|
42 => wire__crate__api__webrtc__RtcSendController_listen_status_impl(
|
||||||
port,
|
port,
|
||||||
ptr,
|
ptr,
|
||||||
rust_vec_len,
|
rust_vec_len,
|
||||||
data_len,
|
data_len,
|
||||||
),
|
),
|
||||||
42 => wire__crate__api__webrtc__RtcSendController_send_file_impl(
|
43 => wire__crate__api__webrtc__RtcSendController_send_file_impl(
|
||||||
port,
|
port,
|
||||||
ptr,
|
ptr,
|
||||||
rust_vec_len,
|
rust_vec_len,
|
||||||
data_len,
|
data_len,
|
||||||
),
|
),
|
||||||
43 => wire__crate__api__webrtc__RtcSendController_send_pin_impl(
|
44 => wire__crate__api__webrtc__RtcSendController_send_pin_impl(
|
||||||
port,
|
port,
|
||||||
ptr,
|
ptr,
|
||||||
rust_vec_len,
|
rust_vec_len,
|
||||||
data_len,
|
data_len,
|
||||||
),
|
),
|
||||||
44 => wire__crate__api__webrtc__connect_impl(port, ptr, rust_vec_len, data_len),
|
45 => wire__crate__api__webrtc__connect_impl(port, ptr, rust_vec_len, data_len),
|
||||||
47 => wire__crate__api__stream__create_stream_impl(port, ptr, rust_vec_len, data_len),
|
48 => wire__crate__api__stream__create_stream_impl(port, ptr, rust_vec_len, data_len),
|
||||||
48 => {
|
49 => {
|
||||||
wire__crate__api__logging__enable_debug_logging_impl(port, ptr, rust_vec_len, data_len)
|
wire__crate__api__logging__enable_debug_logging_impl(port, ptr, rust_vec_len, data_len)
|
||||||
}
|
}
|
||||||
49 => wire__crate__api__crypto__generate_key_pair_impl(port, ptr, rust_vec_len, data_len),
|
50 => wire__crate__api__crypto__generate_key_pair_impl(port, ptr, rust_vec_len, data_len),
|
||||||
50 => wire__crate__api__crypto__generate_security_context_impl(
|
51 => wire__crate__api__crypto__generate_security_context_impl(
|
||||||
port,
|
port,
|
||||||
ptr,
|
ptr,
|
||||||
rust_vec_len,
|
rust_vec_len,
|
||||||
data_len,
|
data_len,
|
||||||
),
|
),
|
||||||
51 => wire__crate__api__crypto__hash_file_impl(port, ptr, rust_vec_len, data_len),
|
52 => wire__crate__api__crypto__hash_file_impl(port, ptr, rust_vec_len, data_len),
|
||||||
54 => wire__crate__api__discovery__start_discovery_impl(port, ptr, rust_vec_len, data_len),
|
55 => wire__crate__api__discovery__start_discovery_impl(port, ptr, rust_vec_len, data_len),
|
||||||
55 => wire__crate__api__server__start_server_impl(port, ptr, rust_vec_len, data_len),
|
56 => wire__crate__api__server__start_server_impl(port, ptr, rust_vec_len, data_len),
|
||||||
56 => wire__crate__api__crypto__verify_cert_impl(port, ptr, rust_vec_len, data_len),
|
57 => wire__crate__api__crypto__verify_cert_impl(port, ptr, rust_vec_len, data_len),
|
||||||
_ => unreachable!(),
|
_ => unreachable!(),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -5230,10 +5330,10 @@ fn pde_ffi_dispatcher_sync_impl(
|
|||||||
match func_id {
|
match func_id {
|
||||||
2 => wire__crate__api__stream__Dart2RustStreamSink_close_impl(ptr, rust_vec_len, data_len),
|
2 => wire__crate__api__stream__Dart2RustStreamSink_close_impl(ptr, rust_vec_len, data_len),
|
||||||
6 => wire__crate__api__cancel__RsCancellationToken_cancel_impl(ptr, rust_vec_len, data_len),
|
6 => wire__crate__api__cancel__RsCancellationToken_cancel_impl(ptr, rust_vec_len, data_len),
|
||||||
45 => wire__crate__api__cancel__create_cancellation_token_impl(ptr, rust_vec_len, data_len),
|
46 => wire__crate__api__cancel__create_cancellation_token_impl(ptr, rust_vec_len, data_len),
|
||||||
46 => wire__crate__api__http__create_client_impl(ptr, rust_vec_len, data_len),
|
47 => wire__crate__api__http__create_client_impl(ptr, rust_vec_len, data_len),
|
||||||
52 => wire__crate__api__filename__is_valid_file_name_impl(ptr, rust_vec_len, data_len),
|
53 => wire__crate__api__filename__is_valid_file_name_impl(ptr, rust_vec_len, data_len),
|
||||||
53 => wire__crate__api__filename__sanitize_file_name_impl(ptr, rust_vec_len, data_len),
|
54 => wire__crate__api__filename__sanitize_file_name_impl(ptr, rust_vec_len, data_len),
|
||||||
_ => unreachable!(),
|
_ => unreachable!(),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -5474,6 +5574,27 @@ impl flutter_rust_bridge::IntoIntoDart<FrbWrapper<crate::api::webrtc::ClientInfo
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
// Codec=Dco (DartCObject based), see doc to use other codecs
|
// Codec=Dco (DartCObject based), see doc to use other codecs
|
||||||
|
impl flutter_rust_bridge::IntoDart for FrbWrapper<crate::api::discovery::DeviceLogKind> {
|
||||||
|
fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
|
||||||
|
match self.0 {
|
||||||
|
crate::api::discovery::DeviceLogKind::Discovered => 0.into_dart(),
|
||||||
|
crate::api::discovery::DeviceLogKind::Updated => 1.into_dart(),
|
||||||
|
_ => unreachable!(),
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
|
||||||
|
for FrbWrapper<crate::api::discovery::DeviceLogKind>
|
||||||
|
{
|
||||||
|
}
|
||||||
|
impl flutter_rust_bridge::IntoIntoDart<FrbWrapper<crate::api::discovery::DeviceLogKind>>
|
||||||
|
for crate::api::discovery::DeviceLogKind
|
||||||
|
{
|
||||||
|
fn into_into_dart(self) -> FrbWrapper<crate::api::discovery::DeviceLogKind> {
|
||||||
|
self.into()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// Codec=Dco (DartCObject based), see doc to use other codecs
|
||||||
impl flutter_rust_bridge::IntoDart for FrbWrapper<crate::api::model::DeviceType> {
|
impl flutter_rust_bridge::IntoDart for FrbWrapper<crate::api::model::DeviceType> {
|
||||||
fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
|
fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
|
||||||
match self.0 {
|
match self.0 {
|
||||||
@@ -5855,6 +5976,28 @@ impl flutter_rust_bridge::IntoIntoDart<crate::api::discovery::RsDeviceChannel>
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
// Codec=Dco (DartCObject based), see doc to use other codecs
|
// Codec=Dco (DartCObject based), see doc to use other codecs
|
||||||
|
impl flutter_rust_bridge::IntoDart for crate::api::discovery::RsDeviceLog {
|
||||||
|
fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
|
||||||
|
[
|
||||||
|
self.timestamp_millis.into_into_dart().into_dart(),
|
||||||
|
self.kind.into_into_dart().into_dart(),
|
||||||
|
self.channel.into_into_dart().into_dart(),
|
||||||
|
]
|
||||||
|
.into_dart()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
|
||||||
|
for crate::api::discovery::RsDeviceLog
|
||||||
|
{
|
||||||
|
}
|
||||||
|
impl flutter_rust_bridge::IntoIntoDart<crate::api::discovery::RsDeviceLog>
|
||||||
|
for crate::api::discovery::RsDeviceLog
|
||||||
|
{
|
||||||
|
fn into_into_dart(self) -> crate::api::discovery::RsDeviceLog {
|
||||||
|
self
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// Codec=Dco (DartCObject based), see doc to use other codecs
|
||||||
impl flutter_rust_bridge::IntoDart for crate::api::discovery::RsDiscoveredDevice {
|
impl flutter_rust_bridge::IntoDart for crate::api::discovery::RsDiscoveredDevice {
|
||||||
fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
|
fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
|
||||||
[
|
[
|
||||||
@@ -6762,6 +6905,22 @@ impl SseEncode for crate::api::webrtc::ClientInfoWithoutId {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
impl SseEncode for crate::api::discovery::DeviceLogKind {
|
||||||
|
// Codec=Sse (Serialization based), see doc to use other codecs
|
||||||
|
fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
|
||||||
|
<i32>::sse_encode(
|
||||||
|
match self {
|
||||||
|
crate::api::discovery::DeviceLogKind::Discovered => 0,
|
||||||
|
crate::api::discovery::DeviceLogKind::Updated => 1,
|
||||||
|
_ => {
|
||||||
|
unimplemented!("");
|
||||||
|
}
|
||||||
|
},
|
||||||
|
serializer,
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
impl SseEncode for crate::api::model::DeviceType {
|
impl SseEncode for crate::api::model::DeviceType {
|
||||||
// Codec=Sse (Serialization based), see doc to use other codecs
|
// Codec=Sse (Serialization based), see doc to use other codecs
|
||||||
fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
|
fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
|
||||||
@@ -6912,6 +7071,16 @@ impl SseEncode for Vec<crate::api::discovery::RsDeviceChannel> {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
impl SseEncode for Vec<crate::api::discovery::RsDeviceLog> {
|
||||||
|
// Codec=Sse (Serialization based), see doc to use other codecs
|
||||||
|
fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
|
||||||
|
<i32>::sse_encode(self.len() as _, serializer);
|
||||||
|
for item in self {
|
||||||
|
<crate::api::discovery::RsDeviceLog>::sse_encode(item, serializer);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
impl SseEncode for crate::api::http::LsHttpClientVersion {
|
impl SseEncode for crate::api::http::LsHttpClientVersion {
|
||||||
// Codec=Sse (Serialization based), see doc to use other codecs
|
// Codec=Sse (Serialization based), see doc to use other codecs
|
||||||
fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
|
fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
|
||||||
@@ -7222,6 +7391,15 @@ impl SseEncode for crate::api::discovery::RsDeviceChannel {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
impl SseEncode for crate::api::discovery::RsDeviceLog {
|
||||||
|
// Codec=Sse (Serialization based), see doc to use other codecs
|
||||||
|
fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
|
||||||
|
<u64>::sse_encode(self.timestamp_millis, serializer);
|
||||||
|
<crate::api::discovery::DeviceLogKind>::sse_encode(self.kind, serializer);
|
||||||
|
<crate::api::discovery::RsDeviceChannel>::sse_encode(self.channel, serializer);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
impl SseEncode for crate::api::discovery::RsDiscoveredDevice {
|
impl SseEncode for crate::api::discovery::RsDiscoveredDevice {
|
||||||
// Codec=Sse (Serialization based), see doc to use other codecs
|
// Codec=Sse (Serialization based), see doc to use other codecs
|
||||||
fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
|
fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
|
||||||
|
|||||||
Reference in New Issue
Block a user