LiveData Observver поймает только первое значение

Я получаю список проблем из базы данных Firebase и возвращаю LiveData .

 fun getAllIssues(): MutableLiveData<IssueEntity> { val issues: MutableLiveData<IssueEntity> = MutableLiveData() val issuesReference = FirebaseDatabase.getInstance().reference.child("issues") issuesReference.addValueEventListener(object : ValueEventListener { override fun onCancelled(p0: DatabaseError?) { } override fun onDataChange(snapshot: DataSnapshot?) { if (snapshot == null) { return } snapshot.children.forEach({ val issueMessage = it.child("message").value.toString() val issueTitle = it.child("title").value.toString() val issueOwner = it.child("owner").value.toString() issues.postValue(IssueEntity(issueTitle, issueMessage, issueOwner)) }) } }) return issues } 

Код моей деятельности:

 override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_all_issues) val issues: MutableList<IssueEntity> = mutableListOf() issuesList.adapter = IssuesAdapter(issues) IssueRepository().getAllIssues().observe(this, Observer { if (it != null) { issues.add(it) val issuesAdapter = issuesList.adapter as IssuesAdapter issuesAdapter.notifyDataSetChanged() } }) } 

Но Observer получает только первое значение. Не могли бы вы рассказать мне, почему?

Извините за путаницу. Мне просто нужно вернуть не только MutableLiveData и MutableLiveData>