Skip to content

Instantly share code, notes, and snippets.

@emedinaa
Last active November 28, 2019 16:49
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save emedinaa/af253771b223aa2c29a2bd9568a4a90e to your computer and use it in GitHub Desktop.
Save emedinaa/af253771b223aa2c29a2bd9568a4a90e to your computer and use it in GitHub Desktop.
Firebase - crud
//all
private fun loadNotes(){
val notesQuery:Query = mDatabase.child("notes")
val options= FirebaseRecyclerOptions.Builder<NoteEntity>()
.setQuery(notesQuery,NoteEntity::class.java)
.build()
noteAdapter= NoteAdapter(options)
recyclerViewNotes.adapter= noteAdapter
}
//add
private fun addNote(){
showLoading()
val noteId = mDatabase.child("notes").push().key
val note= NoteEntity(noteId,name,desc)
noteId?.let {
mDatabase.child("notes").child(it).setValue(note,object:DatabaseReference.CompletionListener{
override fun onComplete(databaseError: DatabaseError?, databaseReference: DatabaseReference) {
hideLoading()
databaseError?.let {dbError ->
showErrorMessage(dbError.message)
}?:run{
finish()
}
}
})
}
}
//edit
private fun editNote() {
showLoading()
val noteId = note?.id
val note= NoteEntity(noteId,name,desc)
noteId?.let {
mDatabase.child("notes").child(it).updateChildren(note.toMap(),object: DatabaseReference.CompletionListener{
override fun onComplete(databaseError: DatabaseError?, databaseReference: DatabaseReference) {
hideLoading()
databaseError?.let {
showErrorMessage(databaseError.message)
}?:run{
finish()
}
}
})
}
}
//delete
private fun deleteNote(mNote:NoteEntity){
showLoading()
mNote.id?.let {
mDatabase.child("notes").child(it).removeValue(object: DatabaseReference.CompletionListener{
override fun onComplete(databaseError: DatabaseError?, databaseReference: DatabaseReference) {
hideLoading()
databaseError?.let {
showErrorMessage(databaseError.message)
}?:run{
finish()
}
}
})
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment