public function run($data)
 {
     $this->Controller =& new Controller();
     $this->Email =& new EmailComponent(null);
     $this->Email->initialize($this->Controller, $this->defaults);
     if (array_key_exists('settings', $data)) {
         $this->Email->_set(array_filter(am($this->defaults, $data['settings'])));
         if (array_key_exists('vars', $data)) {
             foreach ($data['vars'] as $name => $var) {
                 $this->Controller->set($name, $var);
             }
         }
         return $this->Email->send();
     }
     $this->err('Queue Email task called without settings data.');
     return false;
 }