defaultLanguage; if ($path[0] !== '/') { throw new \InvalidArgumentException('The path needs to start with a slash.'); } if ($alias[0] !== '/') { throw new \InvalidArgumentException('The alias needs to start with a slash.'); } $this->aliases[$path][$language] = $alias; $this->systemPaths[$alias][$language] = $path; } /** * {@inheritdoc} */ public function getPathByAlias($alias, $langcode = NULL) { $langcode = $langcode ?: $this->defaultLanguage; return $this->systemPaths[$alias][$langcode]; } /** * {@inheritdoc} * @param $path * @param null $langcode * @return */ public function getAliasByPath($path, $langcode = NULL) { if ($path[0] !== '/') { throw new \InvalidArgumentException(sprintf('Source path %s has to start with a slash.', $path)); } $langcode = $langcode ?: $this->defaultLanguage; $this->lookedUp[$path] = 1; return $this->aliases[$path][$langcode]; } /** * {@inheritdoc} */ public function cacheClear($source = NULL) { // Not needed. } }