Skip to content

Commit

Permalink
1.2.6 Fixed resource collection problems by uncommenting the call to …
Browse files Browse the repository at this point in the history
…handleBurstAssets :D
  • Loading branch information
sbohmann committed Apr 11, 2020
1 parent fa25fb0 commit 0cc8b45
Show file tree
Hide file tree
Showing 5 changed files with 16 additions and 11 deletions.
2 changes: 1 addition & 1 deletion assets/AssetCollector.swift
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,7 @@ class AssetCollector {
fetchResult.enumerateObjects { (asset, count, boolPointer) in
let beforeHandleRawAsset = DispatchTime.now()
self.handleRawAsset(asset, knownAssetsForName)
self.handleBurstAssets(asset, knownAssetsForName)
// self.handleBurstAssets(asset, knownAssetsForName)
let afterHandleRawAsset = DispatchTime.now()
let delta = afterHandleRawAsset.uptimeNanoseconds - beforeHandleRawAsset.uptimeNanoseconds
timeHandlingRawAssets += Int64(delta)
Expand Down
2 changes: 2 additions & 0 deletions photobackup.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -576,6 +576,7 @@
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 6;
INFOPLIST_FILE = photobackup/Info.plist;
IPHONEOS_DEPLOYMENT_TARGET = 10.2;
LD_RUNPATH_SEARCH_PATHS = (
Expand All @@ -594,6 +595,7 @@
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 6;
INFOPLIST_FILE = photobackup/Info.plist;
IPHONEOS_DEPLOYMENT_TARGET = 10.2;
LD_RUNPATH_SEARCH_PATHS = (
Expand Down
19 changes: 11 additions & 8 deletions photobackup/Core.swift
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@ class Core {
}
}

func upload(resources: [Resource], numberOfResources: Int) {
func upload(resources: [Resource], numberOfResources: Int, numberOfResourcesSuccesfullyUploaded: Int) {
guard let resource = resources.first else {
return
}
Expand All @@ -104,7 +104,7 @@ class Core {

guard let rawResource = rawResourceOption else {
NSLog("Found no asset resources of name %@ for asset %@", resource.fileName, resource.localAssetId)
self.startNextUpload(resources: resources, numberOfResources: numberOfResources)
self.startNextUpload(resources: resources, numberOfResources: numberOfResources, numberOfResourcesSuccesfullyUploaded: numberOfResourcesSuccesfullyUploaded)
return
}

Expand All @@ -121,7 +121,7 @@ class Core {

guard let inputStream = boundInputStream, let outputStream = boundOutputStream else {
NSLog("%@ unable to create streams")
self.startNextUpload(resources: resources, numberOfResources: numberOfResources)
self.startNextUpload(resources: resources, numberOfResources: numberOfResources, numberOfResourcesSuccesfullyUploaded: numberOfResourcesSuccesfullyUploaded)
return
}

Expand All @@ -140,8 +140,10 @@ class Core {
self.reportCompletion(data, response, error)
if let error = error {
self.statusHandler("Error uploading resource \(resource.fileName): \(error)", nil)
self.startNextUpload(resources: resources, numberOfResources: numberOfResources, numberOfResourcesSuccesfullyUploaded: numberOfResourcesSuccesfullyUploaded)
} else {
self.startNextUpload(resources: resources, numberOfResources: numberOfResources, numberOfResourcesSuccesfullyUploaded: numberOfResourcesSuccesfullyUploaded + 1)
}
self.startNextUpload(resources: resources, numberOfResources: numberOfResources)
})
if let size = resource.fileSize {
NSLog("size: %d", size)
Expand Down Expand Up @@ -196,15 +198,16 @@ class Core {
}
}

private func startNextUpload(resources: [Resource], numberOfResources: Int) {
private func startNextUpload(resources: [Resource], numberOfResources: Int, numberOfResourcesSuccesfullyUploaded: Int) {
let rest = [Resource](resources[1...])
if !rest.isEmpty {
DispatchQueue.main.async {
self.upload(resources: rest, numberOfResources: numberOfResources)
self.upload(resources: rest, numberOfResources: numberOfResources, numberOfResourcesSuccesfullyUploaded: numberOfResourcesSuccesfullyUploaded)
}
} else {
// TODO report number of errors!!!
} else if (numberOfResourcesSuccesfullyUploaded == numberOfResources) {
self.statusHandler("Finished uploading resources.", 1.0)
} else {
self.statusHandler("Failed to upload \(numberOfResources - numberOfResourcesSuccesfullyUploaded) out of \(numberOfResources) resources.", 1.0)
}
}

Expand Down
2 changes: 1 addition & 1 deletion photobackup/Info.plist
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
<key>CFBundleShortVersionString</key>
<string>1.2</string>
<key>CFBundleVersion</key>
<string>3</string>
<string>$(CURRENT_PROJECT_VERSION)</string>
<key>LSRequiresIPhoneOS</key>
<true/>
<key>NSPhotoLibraryUsageDescription</key>
Expand Down
2 changes: 1 addition & 1 deletion photobackup/MainViewController.swift
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ class MainViewController: UIViewController {
.resources
.filter({ resource in missingAssetChecksums.contains(Checksum(value: resource.checksum)) }))
}
self.core.upload(resources: filteredResources, numberOfResources: filteredResources.count)
self.core.upload(resources: filteredResources, numberOfResources: filteredResources.count, numberOfResourcesSuccesfullyUploaded: 0)
}
}

Expand Down

0 comments on commit 0cc8b45

Please sign in to comment.