Skip to content

Commit 9b08aa6

Browse files
authored
Merge branch 'master' into 8981-illegalstateexception
2 parents 9ff6cb8 + 9ab55e7 commit 9b08aa6

File tree

12 files changed

+42
-41
lines changed

12 files changed

+42
-41
lines changed

app/src/main/java/org/ole/planet/myplanet/repository/SurveyRepositoryImpl.kt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ package org.ole.planet.myplanet.repository
22

33
import android.content.Context
44
import dagger.hilt.android.qualifiers.ApplicationContext
5-
import io.realm.Sort
65
import javax.inject.Inject
76
import org.json.JSONException
87
import org.json.JSONObject

app/src/main/java/org/ole/planet/myplanet/service/AutoSyncWorker.kt

Lines changed: 26 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,8 @@ import androidx.work.Worker
99
import androidx.work.WorkerParameters
1010
import dagger.hilt.android.EntryPointAccessors
1111
import java.util.Date
12+
import java.util.concurrent.ExecutorService
13+
import java.util.concurrent.Executors
1214
import org.ole.planet.myplanet.MainApplication
1315
import org.ole.planet.myplanet.callback.SuccessListener
1416
import org.ole.planet.myplanet.callback.SyncListener
@@ -26,11 +28,11 @@ class AutoSyncWorker(
2628
private val context: Context,
2729
workerParams: WorkerParameters
2830
) : Worker(context, workerParams), SyncListener, CheckVersionCallback, SuccessListener {
29-
3031
private lateinit var preferences: SharedPreferences
3132
private lateinit var syncManager: SyncManager
3233
private lateinit var uploadManager: UploadManager
3334
private lateinit var uploadToShelfService: UploadToShelfService
35+
private val backgroundExecutor: ExecutorService = Executors.newSingleThreadExecutor()
3436

3537
override fun doWork(): Result {
3638
preferences = context.getSharedPreferences(PREFS_NAME, Context.MODE_PRIVATE)
@@ -78,22 +80,24 @@ class AutoSyncWorker(
7880
}
7981
if (!MainApplication.isSyncRunning) {
8082
MainApplication.isSyncRunning = true
81-
uploadManager.uploadExamResult(this)
82-
uploadManager.uploadFeedback(this)
83-
uploadManager.uploadAchievement()
84-
uploadManager.uploadResourceActivities("")
85-
uploadManager.uploadUserActivities(this)
86-
uploadManager.uploadCourseActivities()
87-
uploadManager.uploadSearchActivity()
88-
uploadManager.uploadRating()
89-
uploadManager.uploadResource(this)
90-
uploadManager.uploadNews()
91-
uploadManager.uploadTeams()
92-
uploadManager.uploadTeamTask()
93-
uploadManager.uploadMeetups()
94-
uploadManager.uploadCrashLog()
95-
uploadManager.uploadSubmissions()
96-
uploadManager.uploadActivities { MainApplication.isSyncRunning = false }
83+
backgroundExecutor.execute {
84+
uploadManager.uploadExamResult(this@AutoSyncWorker)
85+
uploadManager.uploadFeedback(this@AutoSyncWorker)
86+
uploadManager.uploadAchievement()
87+
uploadManager.uploadResourceActivities("")
88+
uploadManager.uploadUserActivities(this@AutoSyncWorker)
89+
uploadManager.uploadCourseActivities()
90+
uploadManager.uploadSearchActivity()
91+
uploadManager.uploadRating()
92+
uploadManager.uploadResource(this@AutoSyncWorker)
93+
uploadManager.uploadNews()
94+
uploadManager.uploadTeams()
95+
uploadManager.uploadTeamTask()
96+
uploadManager.uploadMeetups()
97+
uploadManager.uploadCrashLog()
98+
uploadManager.uploadSubmissions()
99+
uploadManager.uploadActivities { MainApplication.isSyncRunning = false }
100+
}
97101
}
98102
}
99103
}
@@ -103,6 +107,11 @@ class AutoSyncWorker(
103107
settings.edit { putLong("lastUsageUploaded", Date().time) }
104108
}
105109

110+
override fun onStopped() {
111+
super.onStopped()
112+
backgroundExecutor.shutdown()
113+
}
114+
106115
private fun isAppInForeground(context: Context): Boolean {
107116
val activityManager = context.getSystemService(Context.ACTIVITY_SERVICE) as ActivityManager
108117
val runningProcesses = activityManager.runningAppProcesses ?: return false

app/src/main/java/org/ole/planet/myplanet/service/UploadManager.kt

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -187,9 +187,11 @@ class UploadManager @Inject constructor(
187187
submissionsToUpload.processInBatches { data ->
188188
try {
189189
val response: JsonObject? = if (TextUtils.isEmpty(data._id)) {
190-
apiInterface?.postDoc(UrlUtils.header, "application/json", "${UrlUtils.getUrl()}/submissions", data.serialized)?.execute()?.body()
190+
apiInterface.postDoc(UrlUtils.header, "application/json", "${UrlUtils.getUrl()}/submissions", data.serialized)
191+
.execute().body()
191192
} else {
192-
apiInterface?.putDoc(UrlUtils.header, "application/json", "${UrlUtils.getUrl()}/submissions/${data._id}", data.serialized)?.execute()?.body()
193+
apiInterface.putDoc(UrlUtils.header, "application/json", "${UrlUtils.getUrl()}/submissions/${data._id}", data.serialized)
194+
.execute().body()
193195
}
194196

195197
if (response != null && data.id != null) {

app/src/main/java/org/ole/planet/myplanet/service/UserProfileDbHandler.kt

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,16 +3,15 @@ package org.ole.planet.myplanet.service
33
import android.content.Context
44
import android.content.SharedPreferences
55
import dagger.hilt.android.qualifiers.ApplicationContext
6-
import io.realm.Realm
7-
import kotlinx.coroutines.Dispatchers
8-
import kotlinx.coroutines.GlobalScope
9-
import kotlinx.coroutines.launch
10-
import kotlinx.coroutines.withContext
116
import java.text.SimpleDateFormat
127
import java.util.Date
138
import java.util.Locale
149
import java.util.UUID
1510
import javax.inject.Inject
11+
import kotlinx.coroutines.Dispatchers
12+
import kotlinx.coroutines.GlobalScope
13+
import kotlinx.coroutines.launch
14+
import kotlinx.coroutines.withContext
1615
import org.ole.planet.myplanet.datamanager.DatabaseService
1716
import org.ole.planet.myplanet.di.AppPreferences
1817
import org.ole.planet.myplanet.model.RealmMyLibrary

app/src/main/java/org/ole/planet/myplanet/ui/dashboard/BaseDashboardFragment.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,8 @@ import androidx.lifecycle.lifecycleScope
1717
import com.bumptech.glide.Glide
1818
import com.google.android.flexbox.FlexDirection
1919
import com.google.android.flexbox.FlexboxLayout
20-
import io.realm.Realm
2120
import io.realm.Case
21+
import io.realm.Realm
2222
import io.realm.RealmChangeListener
2323
import io.realm.RealmObject
2424
import io.realm.RealmResults

app/src/main/java/org/ole/planet/myplanet/ui/dashboard/notification/NotificationsFragment.kt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@ import androidx.lifecycle.lifecycleScope
1414
import androidx.recyclerview.widget.LinearLayoutManager
1515
import com.google.android.material.snackbar.Snackbar
1616
import dagger.hilt.android.AndroidEntryPoint
17-
import io.realm.Sort
1817
import java.util.ArrayList
1918
import java.util.Date
2019
import javax.inject.Inject

app/src/main/java/org/ole/planet/myplanet/ui/news/AdapterNews.kt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@ import android.view.LayoutInflater
1212
import android.view.View
1313
import android.view.ViewGroup
1414
import android.widget.ImageView
15-
import android.widget.LinearLayout
1615
import androidx.annotation.RequiresApi
1716
import androidx.appcompat.app.AlertDialog
1817
import androidx.cardview.widget.CardView

app/src/main/java/org/ole/planet/myplanet/ui/news/NewsActions.kt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@ import android.view.ViewGroup
77
import android.widget.EditText
88
import android.widget.FrameLayout
99
import android.widget.ImageView
10-
import android.widget.LinearLayout
1110
import android.widget.TextView
1211
import androidx.appcompat.app.AlertDialog
1312
import androidx.core.content.ContextCompat

app/src/main/java/org/ole/planet/myplanet/ui/survey/AdapterSurvey.kt

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,13 +18,9 @@ import org.ole.planet.myplanet.model.RealmExamQuestion
1818
import org.ole.planet.myplanet.model.RealmMembershipDoc
1919
import org.ole.planet.myplanet.model.RealmStepExam
2020
import org.ole.planet.myplanet.model.RealmSubmission
21-
import org.ole.planet.myplanet.model.RealmSubmission.Companion.getNoOfSubmissionByTeam
22-
import org.ole.planet.myplanet.model.RealmSubmission.Companion.getNoOfSubmissionByUser
23-
import org.ole.planet.myplanet.model.RealmSubmission.Companion.getRecentSubmissionDate
2421
import org.ole.planet.myplanet.service.UserProfileDbHandler
2522
import org.ole.planet.myplanet.ui.submission.AdapterMySubmission
2623
import org.ole.planet.myplanet.utilities.DiffUtils
27-
import org.ole.planet.myplanet.utilities.TimeUtils.formatDate
2824

2925
class AdapterSurvey(
3026
private val context: Context,

app/src/main/java/org/ole/planet/myplanet/ui/team/AdapterTeamList.kt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@ import kotlinx.coroutines.CoroutineScope
1818
import kotlinx.coroutines.Dispatchers
1919
import kotlinx.coroutines.Job
2020
import kotlinx.coroutines.async
21-
import kotlinx.coroutines.awaitAll
2221
import kotlinx.coroutines.cancel
2322
import kotlinx.coroutines.launch
2423
import kotlinx.coroutines.withContext

0 commit comments

Comments
 (0)