 
         // Create temporary directory.
         do {
-            self.tmpDir = NSTemporaryDirectory() + "/algolia/" + NSUUID().UUIDString
-            try NSFileManager.defaultManager().createDirectoryAtPath(self.tmpDir!, withIntermediateDirectories: true, attributes: nil)
+            tmpDir = NSTemporaryDirectory() + "/algolia/" + NSUUID().UUIDString
+            try NSFileManager.defaultManager().createDirectoryAtPath(tmpDir, withIntermediateDirectories: true, attributes: nil)
         } catch _ {
-            NSLog("ERROR: Could not create temporary directory '%@'", self.tmpDir!)
+            NSLog("ERROR: Could not create temporary directory '%@'", tmpDir)
         }
         
         // NOTE: We use `NSOperation`s to handle dependencies between tasks.

    }
    
    // ----------------------------------------------------------------------
    // MARK: Search
    // ----------------------------------------------------------------------

    @objc public override func search(query: Query, completionHandler: CompletionHandler) -> NSOperation {

    }
    
    // ----------------------------------------------------------------------
    // MARK: - Browse
    // ----------------------------------------------------------------------
    // NOTE: Contrary to search, there is no point in transparently switching from online to offline when browsing,
    // as the results would likely be inconsistent. Anyway, the cursor is not portable across instances, so the
