X-Git-Url: https://git.mdrn.pl/wl-app.git/blobdiff_plain/53b27422d140022594fc241cca91c3183be57bca..48b2fe9f7c2dc3d9aeaaa6dbfb27c7da4f3235ff:/iOS/Pods/MZDownloadManager/MZDownloadManager/Classes/MZUtility.swift diff --git a/iOS/Pods/MZDownloadManager/MZDownloadManager/Classes/MZUtility.swift b/iOS/Pods/MZDownloadManager/MZDownloadManager/Classes/MZUtility.swift new file mode 100644 index 0000000..000e67a --- /dev/null +++ b/iOS/Pods/MZDownloadManager/MZDownloadManager/Classes/MZUtility.swift @@ -0,0 +1,113 @@ +// +// MZUtility.swift +// MZDownloadManager +// +// Created by Muhammad Zeeshan on 22/10/2014. +// Copyright (c) 2014 ideamakerz. All rights reserved. +// + +import UIKit + +open class MZUtility: NSObject { + + @objc open static let DownloadCompletedNotif: String = { + return "com.MZDownloadManager.DownloadCompletedNotif" + }() + + @objc open static let baseFilePath: String = { + return (NSHomeDirectory() as NSString).appendingPathComponent("Documents") as String + }() + + @objc open class func getUniqueFileNameWithPath(_ filePath : NSString) -> NSString { + let fullFileName : NSString = filePath.lastPathComponent as NSString + let fileName : NSString = fullFileName.deletingPathExtension as NSString + let fileExtension : NSString = fullFileName.pathExtension as NSString + var suggestedFileName : NSString = fileName + + var isUnique : Bool = false + var fileNumber : Int = 0 + + let fileManger : FileManager = FileManager.default + + repeat { + var fileDocDirectoryPath : NSString? + + if fileExtension.length > 0 { + fileDocDirectoryPath = "\(filePath.deletingLastPathComponent)/\(suggestedFileName).\(fileExtension)" as NSString? + } else { + fileDocDirectoryPath = "\(filePath.deletingLastPathComponent)/\(suggestedFileName)" as NSString? + } + + let isFileAlreadyExists : Bool = fileManger.fileExists(atPath: fileDocDirectoryPath! as String) + + if isFileAlreadyExists { + fileNumber += 1 + suggestedFileName = "\(fileName)(\(fileNumber))" as NSString + } else { + isUnique = true + if fileExtension.length > 0 { + suggestedFileName = "\(suggestedFileName).\(fileExtension)" as NSString + } + } + + } while isUnique == false + + return suggestedFileName + } + + @objc open class func calculateFileSizeInUnit(_ contentLength : Int64) -> Float { + let dataLength : Float64 = Float64(contentLength) + if dataLength >= (1024.0*1024.0*1024.0) { + return Float(dataLength/(1024.0*1024.0*1024.0)) + } else if dataLength >= 1024.0*1024.0 { + return Float(dataLength/(1024.0*1024.0)) + } else if dataLength >= 1024.0 { + return Float(dataLength/1024.0) + } else { + return Float(dataLength) + } + } + + @objc open class func calculateUnit(_ contentLength : Int64) -> NSString { + if(contentLength >= (1024*1024*1024)) { + return "GB" + } else if contentLength >= (1024*1024) { + return "MB" + } else if contentLength >= 1024 { + return "KB" + } else { + return "Bytes" + } + } + + @objc open class func addSkipBackupAttributeToItemAtURL(_ docDirectoryPath : NSString) -> Bool { + let url : URL = URL(fileURLWithPath: docDirectoryPath as String) + let fileManager = FileManager.default + if fileManager.fileExists(atPath: url.path) { + + do { + try (url as NSURL).setResourceValue(NSNumber(value: true as Bool), forKey: URLResourceKey.isExcludedFromBackupKey) + return true + } catch let error as NSError { + print("Error excluding \(url.lastPathComponent) from backup \(error)") + return false + } + + } else { + return false + } + } + + @objc open class func getFreeDiskspace() -> NSNumber? { + let documentDirectoryPath = NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true) + let systemAttributes: AnyObject? + do { + systemAttributes = try FileManager.default.attributesOfFileSystem(forPath: documentDirectoryPath.last!) as AnyObject? + let freeSize = systemAttributes?[FileAttributeKey.systemFreeSize] as? NSNumber + return freeSize + } catch let error as NSError { + print("Error Obtaining System Memory Info: Domain = \(error.domain), Code = \(error.code)") + return nil; + } + } +}