/**
  * meto que busca uma instancia de \Security\Entity\Usuario atraves de um login e senha
  * @param \Security\Entity\Usuario $usuario
  * @param $login
  * @param $senha
  * @return bool|\Security\Entity\Usuario
  */
 public function findByLoginAndSenha(\Security\Entity\Usuario $usuario, $login, $senha)
 {
     /**
      * @var $userLogin \Security\Entity\Usuario
      */
     $userLogin = $this->createQueryBuilder('u')->where('u.login = :a1')->setParameter('a1', $login)->getQuery()->getOneOrNullResult();
     if (!empty($userLogin)) {
         $usuario->setSalt($userLogin->getSalt());
         if ($usuario->encryptPassword($senha) == $userLogin->getSenha()) {
             return $userLogin;
         }
     }
     return false;
 }
 /**
  * {@inheritDoc}
  */
 public function setSalt($salt)
 {
     $this->__initializer__ && $this->__initializer__->__invoke($this, 'setSalt', array($salt));
     return parent::setSalt($salt);
 }