Code view:

A painting is a person's account of this edit as text, recorded independently of the node mapping - a rendering often has several equally defensible answers where the mapping has one. Deletions and insertions carry no position on the opposite side in a painting, so that panel draws no caret for them.

Before

…lines 1–15 unchanged (15 lines)
16import com.nextcloud.client.database.entity.toOCUpload
17import com.nextcloud.client.database.entity.toUploadEntity
18import com.nextcloud.client.device.BatteryStatus
19import com.nextcloud.client.device.PowerManagementService
20import com.nextcloud.client.jobs.BackgroundJobManager
21import com.nextcloud.client.jobs.upload.FileUploadWorker.Companion.currentUploadFileOperation
22import com.nextcloud.client.network.Connectivity
23import com.nextcloud.client.network.ConnectivityService
24import com.nextcloud.utils.extensions.getUploadIds
25import com.owncloud.android.MainApp
26import com.owncloud.android.R
27import com.owncloud.android.datamodel.FileDataStorageManager
28import com.owncloud.android.datamodel.OCFile
…lines 29–166 unchanged (138 lines)
167 connectivityService: ConnectivityService,
168 accountManager: UserAccountManager,
169 powerManagementService: PowerManagementService,
170 uploads: Array<OCUpload>
171 ): Boolean {
172 var showNotExistMessage = false
173 val isOnline = checkConnectivity(connectivityService)
174 val connectivity = connectivityService.connectivity
175 val batteryStatus = powerManagementService.battery
176
177 val uploadsToRetry = mutableListOf<Long>()
178
179 for (upload in uploads) {
180 val uploadResult = checkUploadConditions(
181 upload,
182 connectivity,
183 batteryStatus,
184 powerManagementService,
185 isOnline
186 )
…lines 187–209 unchanged (23 lines)
210 backgroundJobManager.startFilesUploadJob(
211 accountManager.user,
212 uploadsToRetry.toLongArray(),
213 false
214 )
215 }
216
217 return showNotExistMessage
218 }
219
220 @JvmOverloads
221 @Suppress("LongParameterList")
222 fun uploadNewFiles(
…lines 223–519 unchanged (297 lines)

After

…lines 1–15 unchanged (15 lines)
16import com.nextcloud.client.database.entity.toOCUpload
17import com.nextcloud.client.database.entity.toUploadEntity
18import com.nextcloud.client.device.BatteryStatus
19import com.nextcloud.client.device.PowerManagementService
20import com.nextcloud.client.jobs.BackgroundJobManager
21import com.nextcloud.client.jobs.upload.FileUploadWorker.Companion.currentUploadFileOperation
22import com.nextcloud.client.notifications.AppWideNotificationManager
23import com.nextcloud.client.network.Connectivity
24import com.nextcloud.client.network.ConnectivityService
25import com.nextcloud.utils.extensions.getUploadIds
26import com.owncloud.android.MainApp
27import com.owncloud.android.R
28import com.owncloud.android.datamodel.FileDataStorageManager
…lines 29–167 unchanged (139 lines)
168 connectivityService: ConnectivityService,
169 accountManager: UserAccountManager,
170 powerManagementService: PowerManagementService,
171 uploads: Array<OCUpload>
172 ): Boolean {
173 var showNotExistMessage = false
174 var showSyncConflictNotification = false
175 val isOnline = checkConnectivity(connectivityService)
176 val connectivity = connectivityService.connectivity
177 val batteryStatus = powerManagementService.battery
178
179 val uploadsToRetry = mutableListOf<Long>()
180
181 for (upload in uploads) {
182 if (upload.lastResult == UploadResult.SYNC_CONFLICT) {
183 Log_OC.d(TAG, "retry upload skipped, sync conflict: ${upload.remotePath}")
184 showSyncConflictNotification = true
185 continue
186 }
187
188 val uploadResult = checkUploadConditions(
189 upload,
190 connectivity,
191 batteryStatus,
192 powerManagementService,
…lines 193–218 unchanged (26 lines)
219 accountManager.user,
220 uploadsToRetry.toLongArray(),
221 false
222 )
223 }
224
225 if (showSyncConflictNotification) {
226 AppWideNotificationManager.showSyncConflictNotification(MainApp.getAppContext())
227 }
228
229 return showNotExistMessage
230 }
231
232 @JvmOverloads
233 @Suppress("LongParameterList")
…lines 234–531 unchanged (298 lines)

Before

source_file
block_comment "/*\n * Nextcloud - Android Client\n *\n * SPDX-FileCopyrightTex"...
package_header
package "package"
qualified_identifier
identifier "com"
. "."
identifier "nextcloud"
. "."
identifier "client"
. "."
identifier "jobs"
. "."
identifier "upload"
import
import "import"
qualified_identifier
identifier "android"
. "."
identifier "app"
. "."
identifier "Activity"
import
import "import"
qualified_identifier
identifier "android"
. "."
identifier "content"
. "."
identifier "BroadcastReceiver"
import
import "import"
qualified_identifier
identifier "android"
. "."
identifier "content"
. "."
identifier "Context"
import
import "import"
qualified_identifier
identifier "android"
. "."
identifier "content"
. "."
identifier "Intent"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "nextcloud"
. "."
identifier "client"
. "."
identifier "account"
. "."
identifier "User"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "nextcloud"
. "."
identifier "client"
. "."
identifier "account"
. "."
identifier "UserAccountManager"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "nextcloud"
. "."
identifier "client"
. "."
identifier "database"
. "."
identifier "entity"
. "."
identifier "toOCUpload"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "nextcloud"
. "."
identifier "client"
. "."
identifier "database"
. "."
identifier "entity"
. "."
identifier "toUploadEntity"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "nextcloud"
. "."
identifier "client"
. "."
identifier "device"
. "."
identifier "BatteryStatus"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "nextcloud"
. "."
identifier "client"
. "."
identifier "device"
. "."
identifier "PowerManagementService"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "nextcloud"
. "."
identifier "client"
. "."
identifier "jobs"
. "."
identifier "BackgroundJobManager"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "nextcloud"
. "."
identifier "client"
. "."
identifier "jobs"
. "."
identifier "upload"
. "."
identifier "FileUploadWorker"
. "."
identifier "Companion"
. "."
identifier "currentUploadFileOperation"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "nextcloud"
. "."
identifier "client"
. "."
identifier "network"
. "."
identifier "Connectivity"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "nextcloud"
. "."
identifier "client"
. "."
identifier "network"
. "."
identifier "ConnectivityService"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "nextcloud"
. "."
identifier "utils"
. "."
identifier "extensions"
. "."
identifier "getUploadIds"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "owncloud"
. "."
identifier "android"
. "."
identifier "MainApp"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "owncloud"
. "."
identifier "android"
. "."
identifier "R"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "owncloud"
. "."
identifier "android"
. "."
identifier "datamodel"
. "."
identifier "FileDataStorageManager"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "owncloud"
. "."
identifier "android"
. "."
identifier "datamodel"
. "."
identifier "OCFile"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "owncloud"
. "."
identifier "android"
. "."
identifier "datamodel"
. "."
identifier "UploadsStorageManager"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "owncloud"
. "."
identifier "android"
. "."
identifier "datamodel"
. "."
identifier "UploadsStorageManager"
. "."
identifier "UploadStatus"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "owncloud"
. "."
identifier "android"
. "."
identifier "db"
. "."
identifier "OCUpload"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "owncloud"
. "."
identifier "android"
. "."
identifier "db"
. "."
identifier "UploadResult"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "owncloud"
. "."
identifier "android"
. "."
identifier "files"
. "."
identifier "services"
. "."
identifier "NameCollisionPolicy"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "owncloud"
. "."
identifier "android"
. "."
identifier "lib"
. "."
identifier "common"
. "."
identifier "OwnCloudClient"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "owncloud"
. "."
identifier "android"
. "."
identifier "lib"
. "."
identifier "common"
. "."
identifier "network"
. "."
identifier "OnDatatransferProgressListener"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "owncloud"
. "."
identifier "android"
. "."
identifier "lib"
. "."
identifier "common"
. "."
identifier "operations"
. "."
identifier "RemoteOperationResult"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "owncloud"
. "."
identifier "android"
. "."
identifier "lib"
. "."
identifier "common"
. "."
identifier "utils"
. "."
identifier "Log_OC"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "owncloud"
. "."
identifier "android"
. "."
identifier "lib"
. "."
identifier "resources"
. "."
identifier "files"
. "."
identifier "ReadFileRemoteOperation"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "owncloud"
. "."
identifier "android"
. "."
identifier "lib"
. "."
identifier "resources"
. "."
identifier "files"
. "."
identifier "model"
. "."
identifier "RemoteFile"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "owncloud"
. "."
identifier "android"
. "."
identifier "operations"
. "."
identifier "RemoveFileOperation"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "owncloud"
. "."
identifier "android"
. "."
identifier "operations"
. "."
identifier "UploadFileOperation"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "owncloud"
. "."
identifier "android"
. "."
identifier "utils"
. "."
identifier "DisplayUtils"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "owncloud"
. "."
identifier "android"
. "."
identifier "utils"
. "."
identifier "FileUtil"
import
import "import"
qualified_identifier
identifier "kotlinx"
. "."
identifier "coroutines"
. "."
identifier "CoroutineScope"
import
import "import"
qualified_identifier
identifier "kotlinx"
. "."
identifier "coroutines"
. "."
identifier "Dispatchers"
import
import "import"
qualified_identifier
identifier "kotlinx"
. "."
identifier "coroutines"
. "."
identifier "launch"
import
import "import"
qualified_identifier
identifier "java"
. "."
identifier "io"
. "."
identifier "File"
import
import "import"
qualified_identifier
identifier "java"
. "."
identifier "util"
. "."
identifier "concurrent"
. "."
identifier "Semaphore"
import
import "import"
qualified_identifier
identifier "javax"
. "."
identifier "inject"
. "."
identifier "Inject"
class_declaration
modifiers
annotation
@ "@"
constructor_invocation
user_type
identifier "Suppress"
value_arguments
( "("
value_argument
string_literal
" "\""
string_content "TooManyFunctions"
" "\""
) ")"
class "class"
identifier "FileUploadHelper"
class_body
{ "{"
property_declaration
modifiers
annotation
@ "@"
user_type
identifier "Inject"
member_modifier
lateinit "lateinit"
var "var"
variable_declaration
identifier "backgroundJobManager"
: ":"
user_type
identifier "BackgroundJobManager"
property_declaration
modifiers
annotation
@ "@"
user_type
identifier "Inject"
member_modifier
lateinit "lateinit"
var "var"
variable_declaration
identifier "accountManager"
: ":"
user_type
identifier "UserAccountManager"
property_declaration
modifiers
annotation
@ "@"
user_type
identifier "Inject"
member_modifier
lateinit "lateinit"
var "var"
variable_declaration
identifier "uploadsStorageManager"
: ":"
user_type
identifier "UploadsStorageManager"
property_declaration
modifiers
annotation
@ "@"
user_type
identifier "Inject"
member_modifier
lateinit "lateinit"
var "var"
variable_declaration
identifier "fileStorageManager"
: ":"
user_type
identifier "FileDataStorageManager"
property_declaration
modifiers
visibility_modifier
private "private"
val "val"
variable_declaration
identifier "ioScope"
= "="
call_expression
identifier "CoroutineScope"
value_arguments
( "("
value_argument
navigation_expression
identifier "Dispatchers"
. "."
identifier "IO"
) ")"
anonymous_initializer (+23 nodes collapsed)
companion_object (+168 nodes collapsed)
block_comment "/**\n * Retries all failed uploads across all user accoun"...
function_declaration (+157 nodes collapsed)
function_declaration (+91 nodes collapsed)
function_declaration
modifiers
annotation
@ "@"
constructor_invocation
user_type
identifier "Suppress"
value_arguments
( "("
value_argument
string_literal
" "\""
string_content "ComplexCondition"
" "\""
) ")"
visibility_modifier
private "private"
fun "fun"
identifier "retryUploads"
function_value_parameters (+38 nodes collapsed)
: ":"
user_type
identifier "Boolean"
function_body
block
{ "{"
property_declaration
var "var"
variable_declaration
identifier "showNotExistMessage"
= "="
identifier "false"
property_declaration
val "val"
variable_declaration
identifier "isOnline"
= "="
call_expression
identifier "checkConnectivity"
value_arguments
( "("
value_argument
identifier "connectivityService"
) ")"
property_declaration
val "val"
variable_declaration
identifier "connectivity"
= "="
navigation_expression
identifier "connectivityService"
. "."
identifier "connectivity"
property_declaration
val "val"
variable_declaration
identifier "batteryStatus"
= "="
navigation_expression
identifier "powerManagementService"
. "."
identifier "battery"
property_declaration
val "val"
variable_declaration
identifier "uploadsToRetry"
= "="
call_expression
identifier "mutableListOf"
type_arguments
< "<"
type_projection
user_type
identifier "Long"
> ">"
value_arguments
( "("
) ")"
for_statement
for "for"
( "("
variable_declaration
identifier "upload"
in "in"
identifier "uploads"
) ")"
block
{ "{"
property_declaration (+24 nodes collapsed)
if_expression (+76 nodes collapsed)
line_comment "// Only uploads that passed checks get marked in progress an"...
assignment
navigation_expression
identifier "upload"
. "."
identifier "uploadStatus"
= "="
navigation_expression
identifier "UploadStatus"
. "."
identifier "UPLOAD_IN_PROGRESS"
call_expression
navigation_expression
identifier "uploadsStorageManager"
. "."
identifier "updateUpload"
value_arguments
( "("
value_argument
identifier "upload"
) ")"
call_expression
navigation_expression
identifier "uploadsToRetry"
. "."
identifier "add"
value_arguments
( "("
value_argument
navigation_expression
identifier "upload"
. "."
identifier "uploadId"
) ")"
} "}"
if_expression (+41 nodes collapsed)
return_expression
return "return"
identifier "showNotExistMessage"
} "}"
function_declaration (+250 nodes collapsed)
function_declaration (+37 nodes collapsed)
function_declaration (+58 nodes collapsed)
block_comment "/**\n * Retrieves uploads filtered by their status, optio"...
function_declaration (+171 nodes collapsed)
function_declaration (+50 nodes collapsed)
function_declaration (+124 nodes collapsed)
function_declaration (+47 nodes collapsed)
block_comment "/**\n * Dupe of [UploadFileOperation.checkConditions], ne"...
function_declaration (+199 nodes collapsed)
function_declaration (+144 nodes collapsed)
function_declaration (+249 nodes collapsed)
block_comment "/**\n * Removes any existing file in the same directory t"...
function_declaration (+158 nodes collapsed)
function_declaration (+83 nodes collapsed)
function_declaration (+66 nodes collapsed)
function_declaration (+29 nodes collapsed)
function_declaration (+46 nodes collapsed)
function_declaration (+204 nodes collapsed)
function_declaration (+55 nodes collapsed)
class_declaration (+198 nodes collapsed)
} "}"

After

source_file
block_comment "/*\n * Nextcloud - Android Client\n *\n * SPDX-FileCopyrightTex"...
package_header
package "package"
qualified_identifier
identifier "com"
. "."
identifier "nextcloud"
. "."
identifier "client"
. "."
identifier "jobs"
. "."
identifier "upload"
import
import "import"
qualified_identifier
identifier "android"
. "."
identifier "app"
. "."
identifier "Activity"
import
import "import"
qualified_identifier
identifier "android"
. "."
identifier "content"
. "."
identifier "BroadcastReceiver"
import
import "import"
qualified_identifier
identifier "android"
. "."
identifier "content"
. "."
identifier "Context"
import
import "import"
qualified_identifier
identifier "android"
. "."
identifier "content"
. "."
identifier "Intent"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "nextcloud"
. "."
identifier "client"
. "."
identifier "account"
. "."
identifier "User"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "nextcloud"
. "."
identifier "client"
. "."
identifier "account"
. "."
identifier "UserAccountManager"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "nextcloud"
. "."
identifier "client"
. "."
identifier "database"
. "."
identifier "entity"
. "."
identifier "toOCUpload"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "nextcloud"
. "."
identifier "client"
. "."
identifier "database"
. "."
identifier "entity"
. "."
identifier "toUploadEntity"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "nextcloud"
. "."
identifier "client"
. "."
identifier "device"
. "."
identifier "BatteryStatus"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "nextcloud"
. "."
identifier "client"
. "."
identifier "device"
. "."
identifier "PowerManagementService"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "nextcloud"
. "."
identifier "client"
. "."
identifier "jobs"
. "."
identifier "BackgroundJobManager"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "nextcloud"
. "."
identifier "client"
. "."
identifier "jobs"
. "."
identifier "upload"
. "."
identifier "FileUploadWorker"
. "."
identifier "Companion"
. "."
identifier "currentUploadFileOperation"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "nextcloud"
. "."
identifier "client"
. "."
identifier "notifications"
. "."
identifier "AppWideNotificationManager"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "nextcloud"
. "."
identifier "client"
. "."
identifier "network"
. "."
identifier "Connectivity"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "nextcloud"
. "."
identifier "client"
. "."
identifier "network"
. "."
identifier "ConnectivityService"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "nextcloud"
. "."
identifier "utils"
. "."
identifier "extensions"
. "."
identifier "getUploadIds"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "owncloud"
. "."
identifier "android"
. "."
identifier "MainApp"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "owncloud"
. "."
identifier "android"
. "."
identifier "R"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "owncloud"
. "."
identifier "android"
. "."
identifier "datamodel"
. "."
identifier "FileDataStorageManager"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "owncloud"
. "."
identifier "android"
. "."
identifier "datamodel"
. "."
identifier "OCFile"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "owncloud"
. "."
identifier "android"
. "."
identifier "datamodel"
. "."
identifier "UploadsStorageManager"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "owncloud"
. "."
identifier "android"
. "."
identifier "datamodel"
. "."
identifier "UploadsStorageManager"
. "."
identifier "UploadStatus"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "owncloud"
. "."
identifier "android"
. "."
identifier "db"
. "."
identifier "OCUpload"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "owncloud"
. "."
identifier "android"
. "."
identifier "db"
. "."
identifier "UploadResult"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "owncloud"
. "."
identifier "android"
. "."
identifier "files"
. "."
identifier "services"
. "."
identifier "NameCollisionPolicy"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "owncloud"
. "."
identifier "android"
. "."
identifier "lib"
. "."
identifier "common"
. "."
identifier "OwnCloudClient"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "owncloud"
. "."
identifier "android"
. "."
identifier "lib"
. "."
identifier "common"
. "."
identifier "network"
. "."
identifier "OnDatatransferProgressListener"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "owncloud"
. "."
identifier "android"
. "."
identifier "lib"
. "."
identifier "common"
. "."
identifier "operations"
. "."
identifier "RemoteOperationResult"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "owncloud"
. "."
identifier "android"
. "."
identifier "lib"
. "."
identifier "common"
. "."
identifier "utils"
. "."
identifier "Log_OC"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "owncloud"
. "."
identifier "android"
. "."
identifier "lib"
. "."
identifier "resources"
. "."
identifier "files"
. "."
identifier "ReadFileRemoteOperation"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "owncloud"
. "."
identifier "android"
. "."
identifier "lib"
. "."
identifier "resources"
. "."
identifier "files"
. "."
identifier "model"
. "."
identifier "RemoteFile"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "owncloud"
. "."
identifier "android"
. "."
identifier "operations"
. "."
identifier "RemoveFileOperation"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "owncloud"
. "."
identifier "android"
. "."
identifier "operations"
. "."
identifier "UploadFileOperation"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "owncloud"
. "."
identifier "android"
. "."
identifier "utils"
. "."
identifier "DisplayUtils"
import
import "import"
qualified_identifier
identifier "com"
. "."
identifier "owncloud"
. "."
identifier "android"
. "."
identifier "utils"
. "."
identifier "FileUtil"
import
import "import"
qualified_identifier
identifier "kotlinx"
. "."
identifier "coroutines"
. "."
identifier "CoroutineScope"
import
import "import"
qualified_identifier
identifier "kotlinx"
. "."
identifier "coroutines"
. "."
identifier "Dispatchers"
import
import "import"
qualified_identifier
identifier "kotlinx"
. "."
identifier "coroutines"
. "."
identifier "launch"
import
import "import"
qualified_identifier
identifier "java"
. "."
identifier "io"
. "."
identifier "File"
import
import "import"
qualified_identifier
identifier "java"
. "."
identifier "util"
. "."
identifier "concurrent"
. "."
identifier "Semaphore"
import
import "import"
qualified_identifier
identifier "javax"
. "."
identifier "inject"
. "."
identifier "Inject"
class_declaration
modifiers
annotation
@ "@"
constructor_invocation
user_type
identifier "Suppress"
value_arguments
( "("
value_argument
string_literal
" "\""
string_content "TooManyFunctions"
" "\""
) ")"
class "class"
identifier "FileUploadHelper"
class_body
{ "{"
property_declaration
modifiers
annotation
@ "@"
user_type
identifier "Inject"
member_modifier
lateinit "lateinit"
var "var"
variable_declaration
identifier "backgroundJobManager"
: ":"
user_type
identifier "BackgroundJobManager"
property_declaration
modifiers
annotation
@ "@"
user_type
identifier "Inject"
member_modifier
lateinit "lateinit"
var "var"
variable_declaration
identifier "accountManager"
: ":"
user_type
identifier "UserAccountManager"
property_declaration
modifiers
annotation
@ "@"
user_type
identifier "Inject"
member_modifier
lateinit "lateinit"
var "var"
variable_declaration
identifier "uploadsStorageManager"
: ":"
user_type
identifier "UploadsStorageManager"
property_declaration
modifiers
annotation
@ "@"
user_type
identifier "Inject"
member_modifier
lateinit "lateinit"
var "var"
variable_declaration
identifier "fileStorageManager"
: ":"
user_type
identifier "FileDataStorageManager"
property_declaration
modifiers
visibility_modifier
private "private"
val "val"
variable_declaration
identifier "ioScope"
= "="
call_expression
identifier "CoroutineScope"
value_arguments
( "("
value_argument
navigation_expression
identifier "Dispatchers"
. "."
identifier "IO"
) ")"
anonymous_initializer (+23 nodes collapsed)
companion_object (+168 nodes collapsed)
block_comment "/**\n * Retries all failed uploads across all user accoun"...
function_declaration (+157 nodes collapsed)
function_declaration (+91 nodes collapsed)
function_declaration
modifiers
annotation
@ "@"
constructor_invocation
user_type
identifier "Suppress"
value_arguments
( "("
value_argument
string_literal
" "\""
string_content "ComplexCondition"
" "\""
) ")"
visibility_modifier
private "private"
fun "fun"
identifier "retryUploads"
function_value_parameters (+38 nodes collapsed)
: ":"
user_type
identifier "Boolean"
function_body
block
{ "{"
property_declaration
var "var"
variable_declaration
identifier "showNotExistMessage"
= "="
identifier "false"
property_declaration
var "var"
variable_declaration
identifier "showSyncConflictNotification"
= "="
identifier "false"
property_declaration
val "val"
variable_declaration
identifier "isOnline"
= "="
call_expression
identifier "checkConnectivity"
value_arguments
( "("
value_argument
identifier "connectivityService"
) ")"
property_declaration
val "val"
variable_declaration
identifier "connectivity"
= "="
navigation_expression
identifier "connectivityService"
. "."
identifier "connectivity"
property_declaration
val "val"
variable_declaration
identifier "batteryStatus"
= "="
navigation_expression
identifier "powerManagementService"
. "."
identifier "battery"
property_declaration
val "val"
variable_declaration
identifier "uploadsToRetry"
= "="
call_expression
identifier "mutableListOf"
type_arguments
< "<"
type_projection
user_type
identifier "Long"
> ">"
value_arguments
( "("
) ")"
for_statement
for "for"
( "("
variable_declaration
identifier "upload"
in "in"
identifier "uploads"
) ")"
block
{ "{"
if_expression
if "if"
( "("
binary_expression
navigation_expression
identifier "upload"
. "."
identifier "lastResult"
== "=="
navigation_expression
identifier "UploadResult"
. "."
identifier "SYNC_CONFLICT"
) ")"
block
{ "{"
call_expression
navigation_expression
identifier "Log_OC"
. "."
identifier "d"
value_arguments
( "("
value_argument
identifier "TAG"
, ","
value_argument
string_literal
" "\""
string_content "retry upload skipped, sync conflict: "
interpolation
${ "${"
navigation_expression
identifier "upload"
. "."
identifier "remotePath"
} "}"
" "\""
) ")"
assignment
identifier "showSyncConflictNotification"
= "="
identifier "true"
identifier "continue"
} "}"
property_declaration (+24 nodes collapsed)
if_expression (+76 nodes collapsed)
line_comment "// Only uploads that passed checks get marked in progress an"...
assignment
navigation_expression
identifier "upload"
. "."
identifier "uploadStatus"
= "="
navigation_expression
identifier "UploadStatus"
. "."
identifier "UPLOAD_IN_PROGRESS"
call_expression
navigation_expression
identifier "uploadsStorageManager"
. "."
identifier "updateUpload"
value_arguments
( "("
value_argument
identifier "upload"
) ")"
call_expression
navigation_expression
identifier "uploadsToRetry"
. "."
identifier "add"
value_arguments
( "("
value_argument
navigation_expression
identifier "upload"
. "."
identifier "uploadId"
) ")"
} "}"
if_expression (+41 nodes collapsed)
if_expression
if "if"
( "("
identifier "showSyncConflictNotification"
) ")"
block
{ "{"
call_expression
navigation_expression
identifier "AppWideNotificationManager"
. "."
identifier "showSyncConflictNotification"
value_arguments
( "("
value_argument
call_expression
navigation_expression
identifier "MainApp"
. "."
identifier "getAppContext"
value_arguments
( "("
) ")"
) ")"
} "}"
return_expression
return "return"
identifier "showNotExistMessage"
} "}"
function_declaration (+250 nodes collapsed)
function_declaration (+37 nodes collapsed)
function_declaration (+58 nodes collapsed)
block_comment "/**\n * Retrieves uploads filtered by their status, optio"...
function_declaration (+171 nodes collapsed)
function_declaration (+50 nodes collapsed)
function_declaration (+124 nodes collapsed)
function_declaration (+47 nodes collapsed)
block_comment "/**\n * Dupe of [UploadFileOperation.checkConditions], ne"...
function_declaration (+199 nodes collapsed)
function_declaration (+144 nodes collapsed)
function_declaration (+249 nodes collapsed)
block_comment "/**\n * Removes any existing file in the same directory t"...
function_declaration (+158 nodes collapsed)
function_declaration (+83 nodes collapsed)
function_declaration (+66 nodes collapsed)
function_declaration (+29 nodes collapsed)
function_declaration (+46 nodes collapsed)
function_declaration (+204 nodes collapsed)
function_declaration (+55 nodes collapsed)
class_declaration (+198 nodes collapsed)
} "}"