Change EteBase to Etebase

pull/1244/head
Alex Baker 5 years ago
parent ca8320c01e
commit d86f382c4e

@ -382,7 +382,7 @@
android:theme="@style/Tasks" /> android:theme="@style/Tasks" />
<activity <activity
android:name=".etebase.EteBaseAccountSettingsActivity" android:name=".etebase.EtebaseAccountSettingsActivity"
android:theme="@style/Tasks" /> android:theme="@style/Tasks" />
<activity <activity
@ -606,7 +606,7 @@
android:theme="@style/Tasks" /> android:theme="@style/Tasks" />
<activity <activity
android:name=".etebase.EteBaseCalendarSettingsActivity" android:name=".etebase.EtebaseCalendarSettingsActivity"
android:theme="@style/Tasks" /> android:theme="@style/Tasks" />
<activity <activity

@ -12,7 +12,7 @@ import org.tasks.activities.BaseListSettingsActivity
import org.tasks.caldav.CaldavCalendarSettingsActivity import org.tasks.caldav.CaldavCalendarSettingsActivity
import org.tasks.caldav.LocalListSettingsActivity import org.tasks.caldav.LocalListSettingsActivity
import org.tasks.data.OpenTaskDao.Companion.ACCOUNT_TYPE_ETESYNC import org.tasks.data.OpenTaskDao.Companion.ACCOUNT_TYPE_ETESYNC
import org.tasks.etebase.EteBaseCalendarSettingsActivity import org.tasks.etebase.EtebaseCalendarSettingsActivity
import org.tasks.etesync.EteSyncCalendarSettingsActivity import org.tasks.etesync.EteSyncCalendarSettingsActivity
import org.tasks.opentasks.OpenTasksListSettingsActivity import org.tasks.opentasks.OpenTasksListSettingsActivity
import org.tasks.security.KeyStoreEncryption import org.tasks.security.KeyStoreEncryption
@ -91,7 +91,7 @@ class CaldavAccount : Parcelable {
val isEteSyncAccount: Boolean val isEteSyncAccount: Boolean
get() = accountType == TYPE_ETESYNC get() = accountType == TYPE_ETESYNC
val isEteBaseAccount: Boolean val isEtebaseAccount: Boolean
get() = accountType == TYPE_ETEBASE get() = accountType == TYPE_ETEBASE
val isOpenTasks: Boolean val isOpenTasks: Boolean
@ -107,7 +107,7 @@ class CaldavAccount : Parcelable {
TYPE_ETESYNC -> EteSyncCalendarSettingsActivity::class.java TYPE_ETESYNC -> EteSyncCalendarSettingsActivity::class.java
TYPE_LOCAL -> LocalListSettingsActivity::class.java TYPE_LOCAL -> LocalListSettingsActivity::class.java
TYPE_OPENTASKS -> OpenTasksListSettingsActivity::class.java TYPE_OPENTASKS -> OpenTasksListSettingsActivity::class.java
TYPE_ETEBASE -> EteBaseCalendarSettingsActivity::class.java TYPE_ETEBASE -> EtebaseCalendarSettingsActivity::class.java
else -> CaldavCalendarSettingsActivity::class.java else -> CaldavCalendarSettingsActivity::class.java
} }

@ -3,8 +3,8 @@ package org.tasks.etebase
import androidx.hilt.lifecycle.ViewModelInject import androidx.hilt.lifecycle.ViewModelInject
import org.tasks.ui.CompletableViewModel import org.tasks.ui.CompletableViewModel
class AddEteBaseAccountViewModel @ViewModelInject constructor( class AddEtebaseAccountViewModel @ViewModelInject constructor(
private val clientProvider: EteBaseClientProvider): CompletableViewModel<String>() { private val clientProvider: EtebaseClientProvider): CompletableViewModel<String>() {
suspend fun addAccount(url: String, username: String, password: String) { suspend fun addAccount(url: String, username: String, password: String) {
run { run {
clientProvider clientProvider

@ -5,7 +5,7 @@ import org.tasks.data.CaldavAccount
import org.tasks.ui.CompletableViewModel import org.tasks.ui.CompletableViewModel
class CreateCalendarViewModel @ViewModelInject constructor( class CreateCalendarViewModel @ViewModelInject constructor(
private val clientProvider: EteBaseClientProvider) : CompletableViewModel<String?>() { private val clientProvider: EtebaseClientProvider) : CompletableViewModel<String?>() {
suspend fun createCalendar(account: CaldavAccount, name: String, color: Int) { suspend fun createCalendar(account: CaldavAccount, name: String, color: Int) {
run { clientProvider.forAccount(account).makeCollection(name, color) } run { clientProvider.forAccount(account).makeCollection(name, color) }
} }

@ -6,7 +6,7 @@ import org.tasks.data.CaldavCalendar
import org.tasks.ui.ActionViewModel import org.tasks.ui.ActionViewModel
class DeleteCalendarViewModel @ViewModelInject constructor( class DeleteCalendarViewModel @ViewModelInject constructor(
private val clientProvider: EteBaseClientProvider) : ActionViewModel() { private val clientProvider: EtebaseClientProvider) : ActionViewModel() {
suspend fun deleteCalendar(account: CaldavAccount, calendar: CaldavCalendar) { suspend fun deleteCalendar(account: CaldavAccount, calendar: CaldavCalendar) {
run { clientProvider.forAccount(account).deleteCollection(calendar) } run { clientProvider.forAccount(account).deleteCollection(calendar) }
} }

@ -17,11 +17,11 @@ import org.tasks.data.CaldavAccount
import javax.inject.Inject import javax.inject.Inject
@AndroidEntryPoint @AndroidEntryPoint
class EteBaseAccountSettingsActivity : BaseCaldavAccountSettingsActivity(), Toolbar.OnMenuItemClickListener { class EtebaseAccountSettingsActivity : BaseCaldavAccountSettingsActivity(), Toolbar.OnMenuItemClickListener {
@Inject lateinit var clientProvider: EteBaseClientProvider @Inject lateinit var clientProvider: EtebaseClientProvider
private val addAccountViewModel: AddEteBaseAccountViewModel by viewModels() private val addAccountViewModel: AddEtebaseAccountViewModel by viewModels()
private val updateAccountViewModel: UpdateEteBaseAccountViewModel by viewModels() private val updateAccountViewModel: UpdateEtebaseAccountViewModel by viewModels()
override fun onCreate(savedInstanceState: Bundle?) { override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState) super.onCreate(savedInstanceState)

@ -8,7 +8,7 @@ import org.tasks.data.CaldavAccount
import org.tasks.data.CaldavCalendar import org.tasks.data.CaldavCalendar
@AndroidEntryPoint @AndroidEntryPoint
class EteBaseCalendarSettingsActivity : BaseCaldavCalendarSettingsActivity() { class EtebaseCalendarSettingsActivity : BaseCaldavCalendarSettingsActivity() {
private val createCalendarViewModel: CreateCalendarViewModel by viewModels() private val createCalendarViewModel: CreateCalendarViewModel by viewModels()
private val deleteCalendarViewModel: DeleteCalendarViewModel by viewModels() private val deleteCalendarViewModel: DeleteCalendarViewModel by viewModels()
private val updateCalendarViewModel: UpdateCalendarViewModel by viewModels() private val updateCalendarViewModel: UpdateCalendarViewModel by viewModels()

@ -15,7 +15,7 @@ import org.tasks.time.DateTimeUtils.currentTimeMillis
import timber.log.Timber import timber.log.Timber
import java.io.IOException import java.io.IOException
class EteBaseClient( class EtebaseClient(
private val context: Context, private val context: Context,
private val username: String, private val username: String,
private val etebase: Account, private val etebase: Account,

@ -27,7 +27,7 @@ import java.util.concurrent.TimeUnit
import javax.inject.Inject import javax.inject.Inject
import javax.net.ssl.SSLContext import javax.net.ssl.SSLContext
class EteBaseClientProvider @Inject constructor( class EtebaseClientProvider @Inject constructor(
@ApplicationContext private val context: Context, @ApplicationContext private val context: Context,
private val encryption: KeyStoreEncryption, private val encryption: KeyStoreEncryption,
private val preferences: Preferences, private val preferences: Preferences,
@ -35,7 +35,7 @@ class EteBaseClientProvider @Inject constructor(
private val caldavDao: CaldavDao private val caldavDao: CaldavDao
) { ) {
@Throws(NoSuchAlgorithmException::class, KeyManagementException::class) @Throws(NoSuchAlgorithmException::class, KeyManagementException::class)
suspend fun forAccount(account: CaldavAccount): EteBaseClient { suspend fun forAccount(account: CaldavAccount): EtebaseClient {
return forUrl( return forUrl(
account.url!!, account.url!!,
account.username!!, account.username!!,
@ -44,13 +44,13 @@ class EteBaseClientProvider @Inject constructor(
} }
@Throws(KeyManagementException::class, NoSuchAlgorithmException::class) @Throws(KeyManagementException::class, NoSuchAlgorithmException::class)
suspend fun forUrl(url: String, username: String, password: String?, session: String? = null, foreground: Boolean = false): EteBaseClient = withContext(Dispatchers.IO) { suspend fun forUrl(url: String, username: String, password: String?, session: String? = null, foreground: Boolean = false): EtebaseClient = withContext(Dispatchers.IO) {
val httpClient = createHttpClient(foreground) val httpClient = createHttpClient(foreground)
val client = Client.create(httpClient, url) val client = Client.create(httpClient, url)
val etebase = session val etebase = session
?.let { Account.restore(client, it, null) } ?.let { Account.restore(client, it, null) }
?: Account.login(client, username, password!!) ?: Account.login(client, username, password!!)
EteBaseClient(context, username, etebase, caldavDao) EtebaseClient(context, username, etebase, caldavDao)
} }
private suspend fun createHttpClient(foreground: Boolean): OkHttpClient { private suspend fun createHttpClient(foreground: Boolean): OkHttpClient {

@ -29,13 +29,13 @@ import java.security.NoSuchAlgorithmException
import java.util.* import java.util.*
import javax.inject.Inject import javax.inject.Inject
class EteBaseSynchronizer @Inject constructor( class EtebaseSynchronizer @Inject constructor(
@param:ApplicationContext private val context: Context, @param:ApplicationContext private val context: Context,
private val caldavDao: CaldavDao, private val caldavDao: CaldavDao,
private val localBroadcastManager: LocalBroadcastManager, private val localBroadcastManager: LocalBroadcastManager,
private val taskDeleter: TaskDeleter, private val taskDeleter: TaskDeleter,
private val inventory: Inventory, private val inventory: Inventory,
private val clientProvider: EteBaseClientProvider, private val clientProvider: EtebaseClientProvider,
private val iCal: iCalendar) { private val iCal: iCalendar) {
companion object { companion object {
init { init {
@ -115,7 +115,7 @@ class EteBaseSynchronizer @Inject constructor(
@Throws(IntegrityException::class, Exceptions.HttpException::class, VersionTooNewException::class) @Throws(IntegrityException::class, Exceptions.HttpException::class, VersionTooNewException::class)
private suspend fun sync( private suspend fun sync(
client: EteBaseClient, client: EtebaseClient,
caldavCalendar: CaldavCalendar, caldavCalendar: CaldavCalendar,
collection: Collection collection: Collection
) { ) {

@ -6,7 +6,7 @@ import org.tasks.data.CaldavCalendar
import org.tasks.ui.CompletableViewModel import org.tasks.ui.CompletableViewModel
class UpdateCalendarViewModel @ViewModelInject constructor( class UpdateCalendarViewModel @ViewModelInject constructor(
private val clientProvider: EteBaseClientProvider): CompletableViewModel<String?>() { private val clientProvider: EtebaseClientProvider): CompletableViewModel<String?>() {
suspend fun updateCalendar(account: CaldavAccount, calendar: CaldavCalendar, name: String, color: Int) { suspend fun updateCalendar(account: CaldavAccount, calendar: CaldavCalendar, name: String, color: Int) {
run { clientProvider.forAccount(account).updateCollection(calendar, name, color) } run { clientProvider.forAccount(account).updateCollection(calendar, name, color) }
} }

@ -4,8 +4,8 @@ import androidx.hilt.lifecycle.ViewModelInject
import org.tasks.Strings.isNullOrEmpty import org.tasks.Strings.isNullOrEmpty
import org.tasks.ui.CompletableViewModel import org.tasks.ui.CompletableViewModel
class UpdateEteBaseAccountViewModel @ViewModelInject constructor( class UpdateEtebaseAccountViewModel @ViewModelInject constructor(
private val clientProvider: EteBaseClientProvider) : CompletableViewModel<String>() { private val clientProvider: EtebaseClientProvider) : CompletableViewModel<String>() {
suspend fun updateAccount(url: String, user: String, pass: String?, session: String) { suspend fun updateAccount(url: String, user: String, pass: String?, session: String) {
run { run {
if (isNullOrEmpty(pass)) { if (isNullOrEmpty(pass)) {

@ -10,17 +10,17 @@ import org.tasks.R
import org.tasks.analytics.Firebase import org.tasks.analytics.Firebase
import org.tasks.data.CaldavAccount.Companion.TYPE_ETEBASE import org.tasks.data.CaldavAccount.Companion.TYPE_ETEBASE
import org.tasks.data.CaldavDao import org.tasks.data.CaldavDao
import org.tasks.etebase.EteBaseSynchronizer import org.tasks.etebase.EtebaseSynchronizer
import org.tasks.preferences.Preferences import org.tasks.preferences.Preferences
class SyncEteBaseWork @WorkerInject constructor( class SyncEtebaseWork @WorkerInject constructor(
@Assisted context: Context, @Assisted context: Context,
@Assisted workerParams: WorkerParameters, @Assisted workerParams: WorkerParameters,
firebase: Firebase, firebase: Firebase,
localBroadcastManager: LocalBroadcastManager, localBroadcastManager: LocalBroadcastManager,
preferences: Preferences, preferences: Preferences,
private val caldavDao: CaldavDao, private val caldavDao: CaldavDao,
private val synchronizer: EteBaseSynchronizer private val synchronizer: EtebaseSynchronizer
) : SyncWork(context, workerParams, firebase, localBroadcastManager, preferences) { ) : SyncWork(context, workerParams, firebase, localBroadcastManager, preferences) {
override suspend fun enabled() = caldavDao.getAccounts(TYPE_ETEBASE).isNotEmpty() override suspend fun enabled() = caldavDao.getAccounts(TYPE_ETEBASE).isNotEmpty()

@ -105,7 +105,7 @@ class WorkManagerImpl constructor(
sync(immediate, TAG_SYNC_ETESYNC, SyncEteSyncWork::class.java) sync(immediate, TAG_SYNC_ETESYNC, SyncEteSyncWork::class.java)
override fun eteBaseSync(immediate: Boolean) = override fun eteBaseSync(immediate: Boolean) =
sync(immediate, TAG_SYNC_ETEBASE, SyncEteBaseWork::class.java) sync(immediate, TAG_SYNC_ETEBASE, SyncEtebaseWork::class.java)
override fun openTaskSync(immediate: Boolean) = override fun openTaskSync(immediate: Boolean) =
sync(immediate, TAG_SYNC_OPENTASK, SyncOpenTasksWork::class.java, false) sync(immediate, TAG_SYNC_OPENTASK, SyncOpenTasksWork::class.java, false)
@ -177,7 +177,7 @@ class WorkManagerImpl constructor(
throttle.run { throttle.run {
scheduleBackgroundSync( scheduleBackgroundSync(
TAG_BACKGROUND_SYNC_ETEBASE, TAG_BACKGROUND_SYNC_ETEBASE,
SyncEteBaseWork::class.java, SyncEtebaseWork::class.java,
enabled && caldavDao.getAccounts(TYPE_ETEBASE).isNotEmpty(), enabled && caldavDao.getAccounts(TYPE_ETEBASE).isNotEmpty(),
unmetered) unmetered)
} }

@ -24,7 +24,7 @@ import org.tasks.data.GoogleTaskAccount
import org.tasks.data.GoogleTaskListDao import org.tasks.data.GoogleTaskListDao
import org.tasks.data.OpenTaskDao.Companion.ACCOUNT_TYPE_DAVx5 import org.tasks.data.OpenTaskDao.Companion.ACCOUNT_TYPE_DAVx5
import org.tasks.data.OpenTaskDao.Companion.ACCOUNT_TYPE_ETESYNC import org.tasks.data.OpenTaskDao.Companion.ACCOUNT_TYPE_ETESYNC
import org.tasks.etebase.EteBaseAccountSettingsActivity import org.tasks.etebase.EtebaseAccountSettingsActivity
import org.tasks.etesync.EteSyncAccountSettingsActivity import org.tasks.etesync.EteSyncAccountSettingsActivity
import org.tasks.injection.InjectingPreferenceFragment import org.tasks.injection.InjectingPreferenceFragment
import org.tasks.jobs.WorkManager import org.tasks.jobs.WorkManager
@ -151,7 +151,7 @@ class Synchronization : InjectingPreferenceFragment() {
preference.setSummary(when { preference.setSummary(when {
account.isCaldavAccount -> R.string.caldav account.isCaldavAccount -> R.string.caldav
account.isEteSyncAccount -> R.string.etesync_v1 account.isEteSyncAccount -> R.string.etesync_v1
account.isEteBaseAccount account.isEtebaseAccount
|| (account.isOpenTasks || (account.isOpenTasks
&& account.uuid?.startsWith(ACCOUNT_TYPE_ETESYNC) == true) -> && account.uuid?.startsWith(ACCOUNT_TYPE_ETESYNC) == true) ->
R.string.etesync R.string.etesync
@ -167,7 +167,7 @@ class Synchronization : InjectingPreferenceFragment() {
val intent = Intent(context, when { val intent = Intent(context, when {
account.isCaldavAccount -> CaldavAccountSettingsActivity::class.java account.isCaldavAccount -> CaldavAccountSettingsActivity::class.java
account.isEteSyncAccount -> EteSyncAccountSettingsActivity::class.java account.isEteSyncAccount -> EteSyncAccountSettingsActivity::class.java
account.isEteBaseAccount -> EteBaseAccountSettingsActivity::class.java account.isEtebaseAccount -> EtebaseAccountSettingsActivity::class.java
account.isOpenTasks -> OpenTaskAccountSettingsActivity::class.java account.isOpenTasks -> OpenTaskAccountSettingsActivity::class.java
else -> throw IllegalArgumentException("Unexpected account type: $account") else -> throw IllegalArgumentException("Unexpected account type: $account")
}) })

@ -17,7 +17,7 @@ import dagger.hilt.android.AndroidEntryPoint
import org.tasks.R import org.tasks.R
import org.tasks.caldav.CaldavAccountSettingsActivity import org.tasks.caldav.CaldavAccountSettingsActivity
import org.tasks.dialogs.DialogBuilder import org.tasks.dialogs.DialogBuilder
import org.tasks.etebase.EteBaseAccountSettingsActivity import org.tasks.etebase.EtebaseAccountSettingsActivity
import org.tasks.preferences.fragments.Synchronization.Companion.REQUEST_CALDAV_SETTINGS import org.tasks.preferences.fragments.Synchronization.Companion.REQUEST_CALDAV_SETTINGS
import org.tasks.preferences.fragments.Synchronization.Companion.REQUEST_GOOGLE_TASKS import org.tasks.preferences.fragments.Synchronization.Companion.REQUEST_GOOGLE_TASKS
import org.tasks.themes.DrawableUtil import org.tasks.themes.DrawableUtil
@ -65,7 +65,7 @@ class AddAccountDialog : DialogFragment() {
Intent(activity, CaldavAccountSettingsActivity::class.java), Intent(activity, CaldavAccountSettingsActivity::class.java),
REQUEST_CALDAV_SETTINGS) REQUEST_CALDAV_SETTINGS)
3 -> activity?.startActivityForResult( 3 -> activity?.startActivityForResult(
Intent(activity, EteBaseAccountSettingsActivity::class.java), Intent(activity, EtebaseAccountSettingsActivity::class.java),
REQUEST_CALDAV_SETTINGS) REQUEST_CALDAV_SETTINGS)
} }
dialog.dismiss() dialog.dismiss()

@ -90,7 +90,7 @@ class SyncAdapters @Inject constructor(
val googleTasksEnabled = async { isGoogleTaskSyncEnabled() } val googleTasksEnabled = async { isGoogleTaskSyncEnabled() }
val caldavEnabled = async { isCaldavSyncEnabled() } val caldavEnabled = async { isCaldavSyncEnabled() }
val eteSyncEnabled = async { isEteSyncEnabled() } val eteSyncEnabled = async { isEteSyncEnabled() }
val eteBaseEnabled = async { isEteBaseEnabled() } val eteBaseEnabled = async { isEtebaseEnabled() }
val opentasksEnabled = async { isOpenTaskSyncEnabled() } val opentasksEnabled = async { isOpenTaskSyncEnabled() }
if (googleTasksEnabled.await()) { if (googleTasksEnabled.await()) {
@ -122,7 +122,7 @@ class SyncAdapters @Inject constructor(
@Deprecated("use etebase") @Deprecated("use etebase")
private suspend fun isEteSyncEnabled() = caldavDao.getAccounts(TYPE_ETESYNC).isNotEmpty() private suspend fun isEteSyncEnabled() = caldavDao.getAccounts(TYPE_ETESYNC).isNotEmpty()
private suspend fun isEteBaseEnabled() = caldavDao.getAccounts(TYPE_ETEBASE).isNotEmpty() private suspend fun isEtebaseEnabled() = caldavDao.getAccounts(TYPE_ETEBASE).isNotEmpty()
private suspend fun isOpenTaskSyncEnabled() = private suspend fun isOpenTaskSyncEnabled() =
caldavDao.getAccounts(TYPE_OPENTASKS).isNotEmpty() caldavDao.getAccounts(TYPE_OPENTASKS).isNotEmpty()

Loading…
Cancel
Save