/** * {@inheritdoc} */ public function createActivationRepository($context) { if ($this->configuration($context)->getActivationRepository()) { $repository = $this->container->make($this->configuration($context)->getActivationRepository()); } else { $repository = $this->defaults->createActivationRepository($context); } /** @var ActivationRepository $repository */ $repository->setExpires($this->configuration($context)->getActivationsExpiration()); return $repository; }
/** * @param CheckpointInterface|string $checkpoint * @param string $context * * @return ActivationCheckpoint|ThrottleCheckpoint|CheckpointInterface */ private function makeCheckpoint($checkpoint, $context) { switch ($checkpoint) { case ThrottleCheckpoint::class: return new ThrottleCheckpoint($this->repositories->createThrottleRepository($context), $this->container->make('request')->getClientIp()); case ActivationCheckpoint::class: return new ActivationCheckpoint($this->repositories->createActivationRepository($context)); default: return $this->container->make($checkpoint); } }
/** * {@inheritdoc} */ public function createActivationRepository($context) { return $this->bindAndReturn(ActivationRepository::class, $this->repositories->createActivationRepository($context)); }