/**
  * Handle the command.
  * @param object $command
  * @return void
  */
 public function handle($command)
 {
     $user = $this->model->login($command->email, $command->password);
     $this->dispatchEventsFor($user);
     $this->repository->login($command);
     return $user;
 }
 /**
  * Handle the command.
  *
  * @param object $command
  * @return void
  */
 public function handle($command)
 {
     $activation_code = Shorten::generateHash(40);
     $user = $this->model->register($command->username, $command->email, $command->password, $activation_code);
     $this->repository->save($user);
     $this->dispatchEventsFor($user);
     return $user;
 }