Server
Server
Base Controller class.
All controller classes extend this class. Normally this class would only be extended by the controller classes provided by Hazaar MVC, as how a controller actually behaves and the functionality it provides is actually defined by the controller itself. This controller does nothing, but will still initialise and run, but will output nothing.
- Full name:
\Hazaar\Xml\Rpc\Server
- Parent class:
\Hazaar\Controller
- This class is an Abstract class
Properties
request
protected \Hazaar\Application\Request $request
registered_methods
protected array<string,(object|string)[]> $registered_methods
Methods
__toString
Convert the controller object into a string.
public __toString(): mixed
initialize
Controller initialisation method.
public initialize(\Hazaar\Application\Request $request): ?\Hazaar\Controller\Response
This should be called by all extending controllers and is simply responsible for storing the calling request.
Parameters:
Parameter | Type | Description |
---|---|---|
$request | \Hazaar\Application\Request | the application request object |
run
public run(?\Hazaar\Application\Route $route = null): \Hazaar\Controller\Response\XML
Parameters:
Parameter | Type | Description |
---|---|---|
$route | ?\Hazaar\Application\Route |
registerMethod
public registerMethod(object $object, string $method): void
Parameters:
Parameter | Type | Description |
---|---|---|
$object | object | |
$method | string |
Inherited methods
__construct
Base controller constructor.
public __construct(string $name = null): mixed
Parameters:
Parameter | Type | Description |
---|---|---|
$name | string | The name of the controller. This is the name used when generating URLs. |
__toString
Convert the controller object into a string.
public __toString(): string
__get
Get the specified helper object.
public __get(string $helper): ?\Hazaar\Controller\Helper
Parameters:
Parameter | Type | Description |
---|---|---|
$helper | string | the name of the helper |
initialize
Controller initialisation method.
public initialize(\Hazaar\Application\Request $request): ?\Hazaar\Controller\Response
This should be called by all extending controllers and is simply responsible for storing the calling request.
Parameters:
Parameter | Type | Description |
---|---|---|
$request | \Hazaar\Application\Request | the application request object |
run
public run(?\Hazaar\Application\Route $route = null): \Hazaar\Controller\Response
Parameters:
Parameter | Type | Description |
---|---|---|
$route | ?\Hazaar\Application\Route |
runAction
public runAction(string $actionName, array $actionArgs = []): false|\Hazaar\Controller\Response
Parameters:
Parameter | Type | Description |
---|---|---|
$actionName | string | |
$actionArgs | array |
shutdown
final public shutdown(\Hazaar\Controller\Response $response): void
- This method is final.
Parameters:
Parameter | Type | Description |
---|---|---|
$response | \Hazaar\Controller\Response |
getName
Get the name of the controller.
public getName(): string
setStatus
Set the default return status code.
public setStatus(?int $code = null): void
Parameters:
Parameter | Type | Description |
---|---|---|
$code | ?int |
getStatus
Get the status code of the controller.
public getStatus(): int
getBasePath
Get the base path of the controller.
public getBasePath(): string
setBasePath
Set the base path for the controller.
public setBasePath(string $path): void
Parameters:
Parameter | Type | Description |
---|---|---|
$path | string |
redirect
Generate a redirect response to redirect the browser.
public redirect(string $location, bool $saveURI = false): \Hazaar\Controller\Response\HTTP\Redirect
It's quite common to redirect the user to an alternative URL. This may be to forward the request to another website, forward them to an authentication page or even just remove processed request parameters from the URL to neaten the URL up.
Parameters:
Parameter | Type | Description |
---|---|---|
$location | string | The URI you want to redirect to |
$saveURI | bool | Optionally save the URI so we can redirect back. See: Hazaar\Application::redirectBack() |
redirectBack
Redirect back to a URI saved during redirection.
public redirectBack(?string $altURL = null): false|\Hazaar\Controller\Response\HTTP\Redirect
This mechanism is used with the $saveURI parameter of Hazaar\Application::redirect()
so save the current URI into the session so that once we're done processing the request somewhere else we can come back to where we were. This is useful for when a user requests a page but isn't authenticated, we can redirect them to a login page and then that page can call this Hazaar\Application::redirectBack()
method to redirect the user back to the page they were originally looking for.
Parameters:
Parameter | Type | Description |
---|---|---|
$altURL | ?string |
getURL
Generate a URL relative to the controller.
public getURL(): \Hazaar\Application\URL
This is the controller relative method for generating URLs in your application. URLs generated from here are relative to the controller. For URLs that are relative to the current application see Hazaar\Application::url()
.
Parameters are dynamic and depend on what you are trying to generate.
For examples see: Generating URLs
addHelper
Add a helper to the controller.
public addHelper((\Hazaar\Controller\Helper|string)[]|\Hazaar\Controller\Helper|string $helper, array $args = [], string $alias = null): bool
Parameters:
Parameter | Type | Description |
---|---|---|
$helper | (\Hazaar\Controller\Helper|string)[]|\Hazaar\Controller\Helper|string | The helper to add to the controller. This can be a helper object, a helper class name or an array of helpers. |
$args | array | an array of arguments to pass to the helper constructor |
$alias | string | The alias to use for the helper. If not provided, the helper name will be used. |
hasHelper
Checks if a helper exists.
public hasHelper(string $helper): bool
Parameters:
Parameter | Type | Description |
---|---|---|
$helper | string | the name of the helper to check |
cacheAction
public cacheAction(string $actionName, int $timeout = 60, bool $private = false): bool
Parameters:
Parameter | Type | Description |
---|---|---|
$actionName | string | |
$timeout | int | |
$private | bool |
findHelper
Find a helper class by name.
private findHelper(string $name): ?string
This method searches for view helper classes based on the given name. The search order is important because it allows apps to override built-in helpers.
Parameters:
Parameter | Type | Description |
---|---|---|
$name | string | the name of the helper class to find |
getCacheKey
Get the cache key for the current action.
private getCacheKey(string $controller, string $action, array $actionArgs = null, null|string& $cacheName = null): false|string
Parameters:
Parameter | Type | Description |
---|---|---|
$controller | string | the controller name |
$action | string | the action name |
$actionArgs | array | the action arguments |
$cacheName | null|string | the cache name |
cacheResponse
private cacheResponse(\Hazaar\Application\Route $route, \Hazaar\Controller\Response $response): bool
Parameters:
Parameter | Type | Description |
---|---|---|
$route | \Hazaar\Application\Route | |
$response | \Hazaar\Controller\Response |
getCachedResponse
private getCachedResponse(\Hazaar\Application\Route $route): ?\Hazaar\Controller\Response
Parameters:
Parameter | Type | Description |
---|---|---|
$route | \Hazaar\Application\Route |
Automatically generated on 2024-11-14