Fix java.lang.NullPointerException for username in ContributionBoundaryCallback (#5003)

This commit is contained in:
Madhur Gupta 2022-07-05 14:24:15 +05:30 committed by GitHub
parent d8e4c038e0
commit 5fe1ad84a0
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -21,7 +21,7 @@ class ContributionBoundaryCallback @Inject constructor(
@param:Named(CommonsApplicationModule.IO_THREAD) private val ioThreadScheduler: Scheduler
) : BoundaryCallback<Contribution>() {
private val compositeDisposable: CompositeDisposable = CompositeDisposable()
lateinit var userName: String
var userName: String? = null
/**
@ -53,13 +53,13 @@ class ContributionBoundaryCallback @Inject constructor(
/**
* Fetches contributions using the MediaWiki API
*/
fun fetchContributions() {
private fun fetchContributions() {
if (sessionManager.userName != null) {
compositeDisposable.add(
mediaClient.getMediaListForUser(userName!!)
userName?.let { userName ->
mediaClient.getMediaListForUser(userName)
.map { mediaList ->
mediaList.map {
Contribution(media = it, state = Contribution.STATE_COMPLETED)
mediaList.map { media ->
Contribution(media = media, state = Contribution.STATE_COMPLETED)
}
}
.subscribeOn(ioThreadScheduler)
@ -69,11 +69,13 @@ class ContributionBoundaryCallback @Inject constructor(
error.message
)
}
}?.let {
compositeDisposable.add(
it
)
}else {
if (compositeDisposable != null){
compositeDisposable.clear()
}
}else {
compositeDisposable.clear()
}
}