/**
  * @param string $name
  * @return string
  */
 function generate($name = 'default')
 {
     $result = null;
     for ($i = 0; $i < 10; $i++) {
         $value = $this->_generator->generate();
         if (!$this->exists($value, $name)) {
             $result = $value;
             $this->_data[$name][$result] = true;
             break;
         }
     }
     return $result;
 }
 /**
  * @param string $name
  * @return string
  */
 function generate($name = 'default')
 {
     $result = null;
     for ($i = 0; $i < self::MAX_UNIQUE_LOOPS; $i++) {
         $value = $this->_generator->generate();
         try {
             $this->_con->insert($this->getTableName(), array('name' => $name, 'value' => $value));
             $result = $value;
             break;
         } catch (\Exception $ex) {
         }
     }
     return $result;
 }