refactor: add and use constructor with named parameters

This commit is contained in:
Lukas Lihotzki 2021-10-08 14:25:04 +02:00
parent 66f29c7685
commit b516bd1005
1 changed files with 73 additions and 81 deletions

View File

@ -4,20 +4,19 @@ class CallReplacesTarget {
String display_name; String display_name;
String avatar_url; String avatar_url;
CallReplacesTarget(); CallReplacesTarget({this.id, this.display_name, this.avatar_url});
factory CallReplacesTarget.fromJson(Map<String, dynamic> json) { factory CallReplacesTarget.fromJson(Map<String, dynamic> json) =>
return CallReplacesTarget() CallReplacesTarget(
..id = json['id'].toString() id: json['id'].toString(),
..display_name = json['display_name'].toString() display_name: json['display_name'].toString(),
..avatar_url = json['avatar_url'].toString(); avatar_url: json['avatar_url'].toString(),
} );
Map<String, dynamic> toJson() {
return { Map<String, dynamic> toJson() => {
if (id != null) 'id': id, if (id != null) 'id': id,
if (display_name != null) 'display_name': display_name, if (display_name != null) 'display_name': display_name,
if (avatar_url != null) 'avatar_url': avatar_url, if (avatar_url != null) 'avatar_url': avatar_url,
}; };
}
} }
/// MSC2747: VoIP call transfers /// MSC2747: VoIP call transfers
@ -29,25 +28,28 @@ class CallReplaces {
String await_call; String await_call;
String target_room; String target_room;
CallReplaces(); CallReplaces({
factory CallReplaces.fromJson(Map<String, dynamic> json) { this.replacement_id,
return CallReplaces() this.target_user,
..replacement_id = json['replacement_id'].toString() this.create_call,
..create_call = json['create_call'].toString() this.await_call,
..await_call = json['await_call'].toString() this.target_room,
..target_room = json['target_room'].toString() });
..target_user = CallReplacesTarget.fromJson(json['target_user']); factory CallReplaces.fromJson(Map<String, dynamic> json) => CallReplaces(
} replacement_id: json['replacement_id'].toString(),
create_call: json['create_call'].toString(),
await_call: json['await_call'].toString(),
target_room: json['target_room'].toString(),
target_user: CallReplacesTarget.fromJson(json['target_user']),
);
Map<String, dynamic> toJson() { Map<String, dynamic> toJson() => {
return { if (replacement_id != null) 'replacement_id': replacement_id,
if (replacement_id != null) 'replacement_id': replacement_id, if (target_user != null) 'target_user': target_user.toJson(),
if (target_user != null) 'target_user': target_user.toJson(), if (create_call != null) 'create_call': create_call,
if (create_call != null) 'create_call': create_call, if (await_call != null) 'await_call': await_call,
if (await_call != null) 'await_call': await_call, if (target_room != null) 'target_room': target_room,
if (target_room != null) 'target_room': target_room, };
};
}
} }
// TODO: Change to "sdp_stream_metadata" when MSC3077 is merged // TODO: Change to "sdp_stream_metadata" when MSC3077 is merged
@ -58,18 +60,16 @@ const String sdpStreamMetadataKey = 'org.matrix.msc3077.sdp_stream_metadata';
class CallCapabilities { class CallCapabilities {
bool transferee; bool transferee;
bool dtmf; bool dtmf;
CallCapabilities(); CallCapabilities({this.transferee, this.dtmf});
factory CallCapabilities.fromJson(Map<String, dynamic> json) { factory CallCapabilities.fromJson(Map<String, dynamic> json) =>
return CallCapabilities() CallCapabilities(
..dtmf = json['m.call.dtmf'] as bool ?? false dtmf: json['m.call.dtmf'] as bool ?? false,
..transferee = json['m.call.transferee'] as bool ?? false; transferee: json['m.call.transferee'] as bool ?? false,
} );
Map<String, dynamic> toJson() { Map<String, dynamic> toJson() => {
return { if (transferee != null) 'm.call.transferee': transferee,
if (transferee != null) 'm.call.transferee': transferee, if (dtmf != null) 'm.call.dtmf': dtmf,
if (dtmf != null) 'm.call.dtmf': dtmf, };
};
}
} }
/// MSC3077: Support for multi-stream VoIP /// MSC3077: Support for multi-stream VoIP
@ -88,21 +88,19 @@ class SDPStreamPurpose {
bool audio_muted; bool audio_muted;
bool video_muted; bool video_muted;
SDPStreamPurpose(); SDPStreamPurpose({this.purpose, this.audio_muted, this.video_muted});
factory SDPStreamPurpose.fromJson(Map<String, dynamic> json) { factory SDPStreamPurpose.fromJson(Map<String, dynamic> json) =>
return SDPStreamPurpose() SDPStreamPurpose(
..audio_muted = json['audio_muted'] as bool ?? false audio_muted: json['audio_muted'] as bool ?? false,
..video_muted = json['video_muted'] as bool ?? false video_muted: json['video_muted'] as bool ?? false,
..purpose = json['purpose'] as String; purpose: json['purpose'] as String,
} );
Map<String, dynamic> toJson() { Map<String, dynamic> toJson() => {
return { 'purpose': purpose,
'purpose': purpose, if (audio_muted != null) 'audio_muted': audio_muted,
if (audio_muted != null) 'audio_muted': audio_muted, if (video_muted != null) 'video_muted': video_muted,
if (video_muted != null) 'video_muted': video_muted, };
};
}
} }
class SDPStreamMetadataPurpose { class SDPStreamMetadataPurpose {
@ -114,14 +112,11 @@ class SDPStreamMetadata {
Map<String, SDPStreamPurpose> sdpStreamMetadatas; Map<String, SDPStreamPurpose> sdpStreamMetadatas;
SDPStreamMetadata(this.sdpStreamMetadatas); SDPStreamMetadata(this.sdpStreamMetadatas);
factory SDPStreamMetadata.fromJson(Map<String, dynamic> json) { factory SDPStreamMetadata.fromJson(Map<String, dynamic> json) =>
return SDPStreamMetadata(json SDPStreamMetadata(json.map(
.map((key, value) => MapEntry(key, SDPStreamPurpose.fromJson(value)))); (key, value) => MapEntry(key, SDPStreamPurpose.fromJson(value))));
} Map<String, dynamic> toJson() =>
Map<String, dynamic> toJson() { sdpStreamMetadatas.map((key, value) => MapEntry(key, value.toJson()));
return sdpStreamMetadatas
.map((key, value) => MapEntry(key, value.toJson()));
}
} }
/// MSC3086: Asserted identity on VoIP calls /// MSC3086: Asserted identity on VoIP calls
@ -130,19 +125,16 @@ class AssertedIdentity {
String id; String id;
String displayName; String displayName;
String avatarUrl; String avatarUrl;
AssertedIdentity(); AssertedIdentity({this.id, this.displayName, this.avatarUrl});
factory AssertedIdentity.fromJson(Map<String, dynamic> json) { factory AssertedIdentity.fromJson(Map<String, dynamic> json) =>
return AssertedIdentity() AssertedIdentity(
..displayName = json['display_name'] as String displayName: json['display_name'] as String,
..id = json['id'] as String id: json['id'] as String,
..avatarUrl = json['avatar_url'] as String; avatarUrl: json['avatar_url'] as String,
} );
Map<String, dynamic> toJson() { Map<String, dynamic> toJson() => {
return { if (displayName != null) 'display_name': displayName,
if (displayName != null) 'display_name': displayName, if (id != null) 'id': id,
if (id != null) 'id': id, if (avatarUrl != null) 'avatar_url': avatarUrl,
if (avatarUrl != null) 'avatar_url': avatarUrl, };
};
}
} }