 
 // MARK: TaskQueue
 
+public let SessionTaskDidResumeNotification = "com.github.kean.nuke.sessionTaskDidResume"
+public let SessionTaskDidCancelNotification = "com.github.kean.nuke.sessionTaskDidCancel"
+public let SessionTaskDidCompleteNotification = "com.github.kean.nuke.sessionTaskDidComplete"
+
 /// Limits number of concurrent tasks, prevents trashing of NSURLSession
 final class TaskQueue {
     var maxExecutingTaskCount = 8

        } else if executingTasks.contains(task) {
            executingTasks.remove(task)
            task.cancel()
            setNeedsExecute()
        }
    }

            pendingTasks.removeObjectAtIndex(0)
            executingTasks.insert(task)
            task.resume()
            NSNotificationCenter.defaultCenter().postNotificationName(SessionTaskDidResumeNotification, object: task)
            setNeedsExecute()
        }
    }
