Extension
abstract class Extension (View source)
Add extension that can be added to an object with Object::add_extension().
For DataObject} extensions, use {@link DataExtension. Each extension instance has an "owner" instance, accessible through getOwner(). Every object instance gets its own set of extension instances, meaning you can set parameters specific to the "owner instance" in new Extension instances.
Properties
protected | SS_Object | $owner | The object this extension is applied to. |
|
protected | DataObject | $ownerBaseClass | The base class that this extension was applied to; $this->owner must be one of these |
|
public | $class |
Methods
Called when this extension is added to a particular class
Helper method to strip eval'ed arguments from a string thats passed to DataObject::$extensions or Object::add_extension().
Details
__construct()
No description
static
add_to_class(string $class, string $extensionClass, mixed $args = null)
Called when this extension is added to a particular class
setOwner(SS_Object $owner, string $ownerBaseClass = null)
Set the owner of this extension.
clearOwner()
No description
SS_Object
getOwner()
Returns the owner of this extension.
static string
get_classname_without_arguments(string $extensionStr)
Helper method to strip eval'ed arguments from a string thats passed to DataObject::$extensions or Object::add_extension().