abstract class PresenterComponent extends Container implements ISignalReceiver, IStatePersistent, ArrayAccess

PresenterComponent is the base class for all Presenter components.

Components are persistent objects located on a presenter. They have ability to own other child components, and interact with user. Components have properties for storing their status, and responds to user command.

Properties

protected array $params
Presenter read-only $presenter
string read-only $uniqueId

Methods

Presenter|null
getPresenter($need = TRUE)

Returns the presenter where this component belongs to.

string
getUniqueId()

Returns a fully-qualified name that uniquely identifies the component within the presenter hierarchy.

void
attached($presenter)

This method will be called when the component (or component's parent) becomes attached to a monitored object. Do not call this method yourself.

void
validateParent(IContainer $parent)

No description

bool
tryCall($method, array $params)

Calls public method if exists.

void
checkRequirements($element)

Checks for requirements such as authorization.

getReflection()

Access to reflection.

void
loadState(array $params)

Loads state informations.

void
saveState(array $params, $reflection = NULL)

Saves state informations for next request.

mixed
getParameter($name = NULL, $default = NULL)

Returns component param.

array
getParameters()

Returns component parameters.

string
getParameterId($name)

Returns a fully-qualified name that uniquely identifies the parameter.

getParam($name = NULL, $default = NULL) deprecated

No description

static array
getPersistentParams()

Returns array of classes persistent parameters. They have public visibility and are non-static.

void
signalReceived($signal)

Calls signal handler method.

static string
formatSignalMethod($signal)

Formats signal handler method name -> case sensitivity doesn't matter.

string
link($destination, $args = array())

Generates URL to presenter, action or signal.

lazyLink($destination, $args = array())

Returns destination as Link object.

bool
isLinkCurrent($destination = NULL, $args = array())

Determines whether it links to the current page.

void
redirect($code, $destination = NULL, $args = array())

Redirect to another presenter, action or signal.

void
offsetSet($name, $component)

Adds the component to the container.

IComponent
offsetGet($name)

Returns component specified by name. Throws exception if component doesn't exist.

bool
offsetExists($name)

Does component specified by name exists?

void
offsetUnset($name)

Removes component from the container.

Details

at line 36
Presenter|null getPresenter($need = TRUE)

Returns the presenter where this component belongs to.

Parameters

$need

Return Value

Presenter|null

at line 47
string getUniqueId()

Returns a fully-qualified name that uniquely identifies the component within the presenter hierarchy.

Return Value

string

at line 59
protected void attached($presenter)

This method will be called when the component (or component's parent) becomes attached to a monitored object. Do not call this method yourself.

Parameters

$presenter

Return Value

void

at line 70
protected void validateParent(IContainer $parent)

No description

Parameters

IContainer $parent

Return Value

void

at line 83
protected bool tryCall($method, array $params)

Calls public method if exists.

Parameters

$method
array $params

Return Value

bool

does method exist?

at line 102
void checkRequirements($element)

Checks for requirements such as authorization.

Parameters

$element

Return Value

void

at line 111
static PresenterComponentReflection getReflection()

Access to reflection.

at line 125
void loadState(array $params)

Loads state informations.

Parameters

array $params

Return Value

void

at line 149
void saveState(array $params, $reflection = NULL)

Saves state informations for next request.

Parameters

array $params
$reflection

Return Value

void

at line 185
mixed getParameter($name = NULL, $default = NULL)

Returns component param.

Parameters

$name
$default

Return Value

mixed

at line 204
array getParameters()

Returns component parameters.

Return Value

array

at line 215
string getParameterId($name)

Returns a fully-qualified name that uniquely identifies the parameter.

Parameters

$name

Return Value

string

at line 223
getParam($name = NULL, $default = NULL) deprecated

deprecated

No description

Parameters

$name
$default

at line 235
static array getPersistentParams()

Returns array of classes persistent parameters. They have public visibility and are non-static.

This default implementation detects persistent parameters by annotation @persistent.

Return Value

array

at line 257
void signalReceived($signal)

Calls signal handler method.

Parameters

$signal

Return Value

void

Exceptions

BadSignalException

at line 271
static string formatSignalMethod($signal)

Formats signal handler method name -> case sensitivity doesn't matter.

Parameters

$signal

Return Value

string

Generates URL to presenter, action or signal.

Parameters

$destination
$args

Return Value

string

Exceptions

InvalidLinkException

Returns destination as Link object.

Parameters

$destination
$args

Return Value

Link

at line 317
bool isLinkCurrent($destination = NULL, $args = array())

Determines whether it links to the current page.

Parameters

$destination
$args

Return Value

bool

Exceptions

InvalidLinkException

at line 334
void redirect($code, $destination = NULL, $args = array())

Redirect to another presenter, action or signal.

Parameters

$code
$destination
$args

Return Value

void

Exceptions

AbortException

at line 360
void offsetSet($name, $component)

Adds the component to the container.

Parameters

$name
$component

Return Value

void

at line 372
IComponent offsetGet($name)

Returns component specified by name. Throws exception if component doesn't exist.

Parameters

$name

Return Value

IComponent

Exceptions

InvalidArgumentException

at line 383
bool offsetExists($name)

Does component specified by name exists?

Parameters

$name

Return Value

bool

at line 394
void offsetUnset($name)

Removes component from the container.

Parameters

$name

Return Value

void