Skip to content

Instantly share code, notes, and snippets.

@trongdth
Last active January 14, 2021 07:31
Show Gist options
  • Save trongdth/33c502effa73686f0cd956069d938a7d to your computer and use it in GitHub Desktop.
Save trongdth/33c502effa73686f0cd956069d938a7d to your computer and use it in GitHub Desktop.
import 'package:bloc/bloc.dart';
import 'package:flutter_bloc_back4app/blocs/home/home_states.dart';
import 'package:flutter_bloc_back4app/data/models/message.dart';
import 'package:flutter_bloc_back4app/repositories/message_repos.dart';
class HomeCubit extends Cubit<HomeState> {
final MessageRepository messageRepository;
HomeCubit({this.messageRepository})
: assert(messageRepository != null),
super(HomeLoading());
Future<void> sendMessagePressed({String message}) async {
emit(HomeLoading());
try {
bool result = await messageRepository.sendMessage(
message: message,
);
if (result) {
emit(SendMessageSuccess());
} else {
emit(Failure(error: 'Send message Failed'));
}
} catch (error) {
emit(Failure(error: error.toString()));
}
}
Future<void> homeStarted() async {
emit(HomeLoading());
try {
List<Message> result = await messageRepository.loadAllMessages();
emit(HomeLoaded(lstMessages: result));
} catch (error) {
emit(Failure(error: error.toString()));
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment