Chris@0: fit = $fit; Chris@0: // Support case-insensitive route matching by ensuring the pattern outline Chris@0: // is lowercase. Chris@0: // @see \Drupal\Core\Routing\RouteProvider::getRoutesByPath() Chris@17: $this->patternOutline = mb_strtolower($pattern_outline); Chris@0: $this->numParts = $num_parts; Chris@0: } Chris@0: Chris@0: /** Chris@0: * Returns the fit of this route. Chris@0: * Chris@0: * See RouteCompiler for a definition of how the fit is calculated. Chris@0: * Chris@0: * @return int Chris@0: * The fit of the route. Chris@0: */ Chris@0: public function getFit() { Chris@0: return $this->fit; Chris@0: } Chris@0: Chris@0: /** Chris@0: * Returns the number of parts in this route's path. Chris@0: * Chris@0: * The string "foo/bar/baz" has 3 parts, regardless of how many of them are Chris@0: * placeholders. Chris@0: * Chris@0: * @return int Chris@0: * The number of parts in the path. Chris@0: */ Chris@0: public function getNumParts() { Chris@0: return $this->numParts; Chris@0: } Chris@0: Chris@0: /** Chris@0: * Returns the pattern outline of this route. Chris@0: * Chris@0: * The pattern outline of a route is the path pattern of the route, but Chris@0: * normalized such that all placeholders are replaced with %. Chris@0: * Chris@0: * @return string Chris@0: * The normalized path pattern. Chris@0: */ Chris@0: public function getPatternOutline() { Chris@0: return $this->patternOutline; Chris@0: } Chris@0: Chris@0: /** Chris@0: * Returns the options. Chris@0: * Chris@0: * @return array Chris@0: * The options. Chris@0: */ Chris@0: public function getOptions() { Chris@0: return $this->route->getOptions(); Chris@0: } Chris@0: Chris@0: /** Chris@0: * Returns the defaults. Chris@0: * Chris@0: * @return array Chris@0: * The defaults. Chris@0: */ Chris@0: public function getDefaults() { Chris@0: return $this->route->getDefaults(); Chris@0: } Chris@0: Chris@0: /** Chris@0: * Returns the requirements. Chris@0: * Chris@0: * @return array Chris@0: * The requirements. Chris@0: */ Chris@0: public function getRequirements() { Chris@0: return $this->route->getRequirements(); Chris@0: } Chris@0: Chris@0: /** Chris@0: * {@inheritdoc} Chris@0: */ Chris@0: public function serialize() { Chris@0: // Calling the parent method is safer than trying to optimize out the extra Chris@0: // function calls. Chris@0: $data = unserialize(parent::serialize()); Chris@0: $data['fit'] = $this->fit; Chris@0: $data['patternOutline'] = $this->patternOutline; Chris@0: $data['numParts'] = $this->numParts; Chris@0: Chris@0: return serialize($data); Chris@0: } Chris@0: Chris@0: /** Chris@0: * {@inheritdoc} Chris@0: */ Chris@0: public function unserialize($serialized) { Chris@0: parent::unserialize($serialized); Chris@0: $data = unserialize($serialized); Chris@0: Chris@0: $this->fit = $data['fit']; Chris@0: $this->patternOutline = $data['patternOutline']; Chris@0: $this->numParts = $data['numParts']; Chris@0: } Chris@0: Chris@0: }