shallow dir content search

This commit is contained in:
Chris Li 2016-08-05 11:30:24 -04:00
parent 398b24e4c6
commit 7e704a0ea2
4 changed files with 10 additions and 11 deletions

View File

@ -49,7 +49,7 @@
</dict>
</array>
<key>CFBundleVersion</key>
<string>1.7.716</string>
<string>1.7.719</string>
<key>ITSAppUsesNonExemptEncryption</key>
<false/>
<key>LSRequiresIPhoneOS</key>

View File

@ -21,7 +21,7 @@
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>1.7.812</string>
<string>1.7.816</string>
<key>NSExtension</key>
<dict>
<key>NSExtensionMainStoryboard</key>

View File

@ -62,6 +62,12 @@ extension NSFileManager {
let url = try? NSFileManager.defaultManager().URLForDirectory(.LibraryDirectory, inDomain: .UserDomainMask, appropriateForURL: nil, create: false)
return url!
}
class func getContents(dir dir: NSURL) -> [NSURL] {
let options: NSDirectoryEnumerationOptions = [.SkipsHiddenFiles, .SkipsPackageDescendants, .SkipsSubdirectoryDescendants]
let urls = try? NSFileManager.defaultManager().contentsOfDirectoryAtURL(NSFileManager.docDirURL, includingPropertiesForKeys: nil, options: options)
return urls ?? [NSURL]()
}
}

View File

@ -111,15 +111,8 @@ class ScanLocalBookOperation: Operation {
// MARK: - Helper
private class func getContentsOfDocDir() -> [NSURL] {
let keys = [NSURLIsDirectoryKey]
let options: NSDirectoryEnumerationOptions = [.SkipsHiddenFiles, .SkipsPackageDescendants, .SkipsHiddenFiles]
let urls = try? NSFileManager.defaultManager().contentsOfDirectoryAtURL(NSFileManager.docDirURL, includingPropertiesForKeys: keys, options: options)
return urls ?? [NSURL]()
}
private class func getCurrentZimFileURLsInDocDir() -> Set<NSURL> {
var urls = getContentsOfDocDir()
var urls = NSFileManager.getContents(dir: NSFileManager.docDirURL)
let keys = [NSURLIsDirectoryKey]
urls = urls.filter { (url) -> Bool in
guard let values = try? url.resourceValuesForKeys(keys),
@ -131,7 +124,7 @@ class ScanLocalBookOperation: Operation {
}
private class func getCurrentIndexFolderURLsInDocDir() -> Set<NSURL> {
var urls = getContentsOfDocDir()
var urls = NSFileManager.getContents(dir: NSFileManager.docDirURL)
let keys = [NSURLIsDirectoryKey]
urls = urls.filter { (url) -> Bool in
guard let values = try? url.resourceValuesForKeys(keys),