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

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, $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 35
Presenter|null getPresenter($need = TRUE)

Returns the presenter where this component belongs to.

Parameters

$need

Return Value

Presenter|null

at line 46
string getUniqueId()

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

Return Value

string

at line 58
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 69
protected void validateParent(IContainer $parent)

No description

Parameters

IContainer $parent

Return Value

void

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

Calls public method if exists.

Parameters

$method
array $params

Return Value

bool

does method exist?

at line 101
void checkRequirements($element)

Checks for requirements such as authorization.

Parameters

$element

Return Value

void

at line 110
static PresenterComponentReflection getReflection()

Access to reflection.

at line 124
void loadState(array $params)

Loads state informations.

Parameters

array $params

Return Value

void

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

Saves state informations for next request.

Parameters

array $params
$reflection

Return Value

void

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

Returns component param.

Parameters

$name
$default

Return Value

mixed

at line 203
array getParameters()

Returns component parameters.

Return Value

array

at line 214
string getParameterId($name)

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

Parameters

$name

Return Value

string

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

deprecated

No description

Parameters

$name
$default

at line 234
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 256
void signalReceived($signal)

Calls signal handler method.

Parameters

$signal

Return Value

void

Exceptions

BadSignalException

at line 270
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 316
bool isLinkCurrent($destination = NULL, $args = array())

Determines whether it links to the current page.

Parameters

$destination
$args

Return Value

bool

Exceptions

InvalidLinkException

at line 333
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 358
void offsetSet($name, $component)

Adds the component to the container.

Parameters

$name
$component

Return Value

void

at line 370
IComponent offsetGet($name)

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

Parameters

$name

Return Value

IComponent

Exceptions

InvalidArgumentException

at line 381
bool offsetExists($name)

Does component specified by name exists?

Parameters

$name

Return Value

bool

at line 392
void offsetUnset($name)

Removes component from the container.

Parameters

$name

Return Value

void