/** * Validate a given rule against a route and request. * * @param \Illuminate\Routing\Route $route * @param \Illuminate\Http\Request $request * @return bool */ public function matches(Route $route, Request $request) { if ($route->httpOnly()) { return !$request->secure(); } elseif ($route->secure()) { return $request->secure(); } return true; }
public function isAlternate(LaravelRoute $route) { if (!$route instanceof Route) { return false; } // Validate methods if ($this->methods() != $route->methods()) { return false; } // Validate scheme if ($this->httpOnly() !== $route->httpOnly()) { return false; } // Validate base uri if ($this->getBaseUri() !== $route->getBaseUri()) { return false; } if ($this->getUri() === $route->getUri()) { return false; } return true; }
/** * Get the scheme for the given route. * * @param \Illuminate\Routing\Route $route * @return string */ protected function getRouteScheme($route) { if ($route->httpOnly()) { return $this->getScheme(false); } elseif ($route->httpsOnly()) { return $this->getScheme(true); } return $this->getScheme(null); }