RouteDefParser
in package
Read onlyYes
FinalYes
Table of Contents
Constants
- ALL_KNS : array<string|int, mixed> = [self::ARGS_MAX_KN, self::ARGS_MIN_KN, self::FQ...
- AMBIGUOUS_DEF_MSG_FMT : string = 'A route definition cannot define both ' . self...
- ARGS_MAX_KN : string = 'maxArgs'
- ARGS_MIN_KN : string = 'minArgs'
- FQCN_IF_PARAMS_KN : string = 'fqcnIfParams'
- FQCN_KN : string = 'fqcn'
- PAGE_ENT_KN : string = 'entConf'
- PAGE_ENT_REPO_FQCN_KN : string = 'repo'
- PAGE_ENT_TITLE_KN : string = 'title'
- PAGE_IS_INDEXED_KN : string = 'isIndexed'
- PAGE_IS_PART_OF_HIERARCHY_KN : string = 'isPartOfHierarchy'
- PAGE_KN : string = 'page'
- PAGE_TITLE_KN : string = 'title'
- ROLES_KN : string = 'roles'
- ROUTES_KN : string = 'routes'
Properties
- $baseUrl : string
Methods
- __construct() : mixed
- parse() : RouteDef
- parseFqcn() : IRoutedController>|null
- parsePageConf() : PageConf|null
- parsePageEntConf() : PageEntConf|null
Constants
ALL_KNS
public
array<string|int, mixed>
ALL_KNS
= [self::ARGS_MAX_KN, self::ARGS_MIN_KN, self::FQCN_IF_PARAMS_KN, self::FQCN_KN, self::PAGE_ENT_KN, self::PAGE_ENT_REPO_FQCN_KN, self::PAGE_ENT_TITLE_KN, self::PAGE_IS_INDEXED_KN, self::PAGE_IS_PART_OF_HIERARCHY_KN, self::PAGE_KN, self::PAGE_TITLE_KN, self::ROLES_KN, self::ROUTES_KN]
AMBIGUOUS_DEF_MSG_FMT
public
string
AMBIGUOUS_DEF_MSG_FMT
= 'A route definition cannot define both ' . self::ROUTES_KN . ' and ' . self::ARGS_MIN_KN . ' or ' . self::ARGS_MAX_KN . '.'
ARGS_MAX_KN
public
string
ARGS_MAX_KN
= 'maxArgs'
ARGS_MIN_KN
public
string
ARGS_MIN_KN
= 'minArgs'
FQCN_IF_PARAMS_KN
public
string
FQCN_IF_PARAMS_KN
= 'fqcnIfParams'
FQCN_KN
public
string
FQCN_KN
= 'fqcn'
PAGE_ENT_KN
public
string
PAGE_ENT_KN
= 'entConf'
PAGE_ENT_REPO_FQCN_KN
public
string
PAGE_ENT_REPO_FQCN_KN
= 'repo'
PAGE_ENT_TITLE_KN
public
string
PAGE_ENT_TITLE_KN
= 'title'
PAGE_IS_INDEXED_KN
public
string
PAGE_IS_INDEXED_KN
= 'isIndexed'
PAGE_IS_PART_OF_HIERARCHY_KN
public
string
PAGE_IS_PART_OF_HIERARCHY_KN
= 'isPartOfHierarchy'
PAGE_KN
public
string
PAGE_KN
= 'page'
PAGE_TITLE_KN
public
string
PAGE_TITLE_KN
= 'title'
ROLES_KN
public
string
ROLES_KN
= 'roles'
ROUTES_KN
public
string
ROUTES_KN
= 'routes'
Properties
$baseUrl
private
string
$baseUrl
Methods
__construct()
public
__construct(string $baseUrl) : mixed
Parameters
- $baseUrl : string
-
The URL to the app's home, without trailing slash.
parse()
public
parse(AppObject<string|int, mixed> $route[, null|array<int, string> $parentRoles = null ][, bool $allowOverridingParentRoles = false ]) : RouteDef
Parameters
- $route : AppObject<string|int, mixed>
-
The JSON-decoded route as an associative array.
- $parentRoles : null|array<int, string> = null
-
The parent roles if defined, null if the current route is the root route.
- $allowOverridingParentRoles : bool = false
-
If true, a subroute can add role its parent does not have.
Return values
RouteDefparseFqcn()
private
parseFqcn(AppObject<string|int, mixed> $parsedRouteDefConf, string $key) : IRoutedController>|null
Parameters
- $parsedRouteDefConf : AppObject<string|int, mixed>
- $key : string
Return values
IRoutedController>|nullparsePageConf()
private
parsePageConf(AppObject<string|int, mixed> $routeDef) : PageConf|null
Parameters
- $routeDef : AppObject<string|int, mixed>
Return values
PageConf|nullparsePageEntConf()
private
parsePageEntConf(AppObject<string|int, mixed> $pageConf) : PageEntConf|null
Parameters
- $pageConf : AppObject<string|int, mixed>