Line data Source code
1 : /*
2 : * Famedly Matrix SDK
3 : * Copyright (C) 2020, 2021 Famedly GmbH
4 : *
5 : * This program is free software: you can redistribute it and/or modify
6 : * it under the terms of the GNU Affero General Public License as
7 : * published by the Free Software Foundation, either version 3 of the
8 : * License, or (at your option) any later version.
9 : *
10 : * This program is distributed in the hope that it will be useful,
11 : * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 : * GNU Affero General Public License for more details.
14 : *
15 : * You should have received a copy of the GNU Affero General Public License
16 : * along with this program. If not, see <https://www.gnu.org/licenses/>.
17 : */
18 :
19 : import 'package:matrix/matrix.dart';
20 :
21 : class ToDeviceEvent extends BasicEventWithSender {
22 : Map<String, dynamic>? encryptedContent;
23 :
24 48 : String get sender => senderId;
25 0 : set sender(String sender) => senderId = sender;
26 :
27 33 : ToDeviceEvent({
28 : required String sender,
29 : required super.type,
30 : required Map<String, dynamic> super.content,
31 : this.encryptedContent,
32 33 : }) : super(senderId: sender);
33 :
34 33 : factory ToDeviceEvent.fromJson(Map<String, dynamic> json) {
35 33 : final event = BasicEventWithSender.fromJson(json);
36 33 : return ToDeviceEvent(
37 33 : sender: event.senderId,
38 33 : type: event.type,
39 33 : content: event.content,
40 : );
41 : }
42 : }
43 :
44 : class ToDeviceEventDecryptionError extends ToDeviceEvent {
45 : Exception exception;
46 : StackTrace? stackTrace;
47 0 : ToDeviceEventDecryptionError({
48 : required ToDeviceEvent toDeviceEvent,
49 : required this.exception,
50 : this.stackTrace,
51 0 : }) : super(
52 0 : sender: toDeviceEvent.senderId,
53 0 : content: toDeviceEvent.content,
54 0 : type: toDeviceEvent.type,
55 : );
56 : }
|