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 : }