     
     func suspend(url:String)
     {
-        let name:String = self.get(name: url)
+        let name:String = get(name: url)
         if let task = tasks[name]
         {
             task.suspend()
         }
+    }
+    
+    func has(task url:String)->Bool
+    {
+        let name = get(name: url)
+        return tasks[name] != nil
     }
     
     func load(url:String, completion completeHandler:LoadCompleteHandler?, progression progressHandler:LoadProgressHandler? = nil)

    
    func cancel(url:String)
    {
        let name:String = self.get(name: url)
        if let task = tasks[name]
        {
            task.cancel()

    {
        if let url = downloadTask.originalRequest?.url
        {
            let name:String = get(name: url.absoluteString)
            if let item = progress[name]
            {
                item.bytesWritten = fileOffset
