maybeWhen<TResult extends Object?> method
TResult
maybeWhen<TResult extends Object?>({
- TResult getRooms(
- CommonApiParams? params
- TResult getRoomsResult()?,
- TResult getRoomCount(
- CommonApiParams? params
- TResult getRoomCountResult(
- CommonApiParams? params,
- Either<
Failure, int> result
- TResult getRoomById(
- String chatRoomId
- TResult getRoomByIdResult()?,
- TResult getRoomMessages(
- String chatRoomId,
- CommonApiParams? params
- TResult getRoomMessagesResult(
- String chatRoomId,
- CommonApiParams? params,
- Either<
Failure, List< resultChatMessage> >
- TResult deleteRoom(
- String chatRoomId
- TResult deleteRoomResult(
- String chatRoomId,
- Either<
Failure, Unit> result
- TResult archiveRoom(
- String chatRoomId
- TResult archiveRoomResult()?,
- TResult unArchiveRoom(
- String chatRoomId
- TResult unArchiveRoomResult()?,
- TResult markRoomAsRead(
- String chatRoomId
- TResult markRoomAsReadResult()?,
- TResult sendMessage(
- SendMessageDto dto
- TResult sendMessageResult(
- SendMessageDto dto,
- Either<
Failure, ChatMessage> result
- TResult deleteMessage(
- DeleteMessageParams params
- TResult deleteMessageResult(
- DeleteMessageParams params,
- Either<
Failure, Unit> result
- TResult externalEventReceived(
- MessengerExternalEvent event
- required TResult orElse(),
A variant of when that fallback to an orElse callback.
It is equivalent to doing:
switch (sealedClass) {
case Subclass(:final field):
return ...;
case _:
return orElse();
}
Implementation
@optionalTypeArgs TResult maybeWhen<TResult extends Object?>({TResult Function( CommonApiParams? params)? getRooms,TResult Function( CommonApiParams? params, Either<Failure, List<ChatRoom>> result)? getRoomsResult,TResult Function( CommonApiParams? params)? getRoomCount,TResult Function( CommonApiParams? params, Either<Failure, int> result)? getRoomCountResult,TResult Function( String chatRoomId)? getRoomById,TResult Function( String chatRoomId, Either<Failure, ChatRoom> result)? getRoomByIdResult,TResult Function( String chatRoomId, CommonApiParams? params)? getRoomMessages,TResult Function( String chatRoomId, CommonApiParams? params, Either<Failure, List<ChatMessage>> result)? getRoomMessagesResult,TResult Function( String chatRoomId)? deleteRoom,TResult Function( String chatRoomId, Either<Failure, Unit> result)? deleteRoomResult,TResult Function( String chatRoomId)? archiveRoom,TResult Function( String chatRoomId, Either<Failure, ChatRoom> result)? archiveRoomResult,TResult Function( String chatRoomId)? unArchiveRoom,TResult Function( String chatRoomId, Either<Failure, ChatRoom> result)? unArchiveRoomResult,TResult Function( String chatRoomId)? markRoomAsRead,TResult Function( String chatRoomId, Either<Failure, ChatRoom> result)? markRoomAsReadResult,TResult Function( SendMessageDto dto)? sendMessage,TResult Function( SendMessageDto dto, Either<Failure, ChatMessage> result)? sendMessageResult,TResult Function( DeleteMessageParams params)? deleteMessage,TResult Function( DeleteMessageParams params, Either<Failure, Unit> result)? deleteMessageResult,TResult Function( MessengerExternalEvent event)? externalEventReceived,required TResult orElse(),}) {final _that = this;
switch (_that) {
case MessengerEventGetRooms() when getRooms != null:
return getRooms(_that.params);case MessengerEventGetRoomsResult() when getRoomsResult != null:
return getRoomsResult(_that.params,_that.result);case MessengerEventGetRoomCount() when getRoomCount != null:
return getRoomCount(_that.params);case MessengerEventGetRoomCountResult() when getRoomCountResult != null:
return getRoomCountResult(_that.params,_that.result);case MessengerEventGetRoomById() when getRoomById != null:
return getRoomById(_that.chatRoomId);case MessengerEventGetRoomByIdResult() when getRoomByIdResult != null:
return getRoomByIdResult(_that.chatRoomId,_that.result);case MessengerEventGetRoomMessages() when getRoomMessages != null:
return getRoomMessages(_that.chatRoomId,_that.params);case MessengerEventGetRoomMessagesResult() when getRoomMessagesResult != null:
return getRoomMessagesResult(_that.chatRoomId,_that.params,_that.result);case MessengerEventDeleteRoom() when deleteRoom != null:
return deleteRoom(_that.chatRoomId);case MessengerEventDeleteRoomResult() when deleteRoomResult != null:
return deleteRoomResult(_that.chatRoomId,_that.result);case MessengerEventArchiveRoom() when archiveRoom != null:
return archiveRoom(_that.chatRoomId);case MessengerEventArchiveRoomResult() when archiveRoomResult != null:
return archiveRoomResult(_that.chatRoomId,_that.result);case MessengerEventUnArchiveRoom() when unArchiveRoom != null:
return unArchiveRoom(_that.chatRoomId);case MessengerEventUnArchiveRoomResult() when unArchiveRoomResult != null:
return unArchiveRoomResult(_that.chatRoomId,_that.result);case MessengerEventMarkRoomAsRead() when markRoomAsRead != null:
return markRoomAsRead(_that.chatRoomId);case MessengerEventMarkRoomAsReadResult() when markRoomAsReadResult != null:
return markRoomAsReadResult(_that.chatRoomId,_that.result);case MessengerEventSendMessage() when sendMessage != null:
return sendMessage(_that.dto);case MessengerEventSendMessageResult() when sendMessageResult != null:
return sendMessageResult(_that.dto,_that.result);case MessengerEventDeleteMessage() when deleteMessage != null:
return deleteMessage(_that.params);case MessengerEventDeleteMessageResult() when deleteMessageResult != null:
return deleteMessageResult(_that.params,_that.result);case MessengerEventExternalEventReceived() when externalEventReceived != null:
return externalEventReceived(_that.event);case _:
return orElse();
}
}