Quick Q about an odd decorator behavior..
If a decorator has a method of the same name as it's class, it seems to get executed under certain situations.
For example:
class Foo extends DataObjectDecorator {
function Foo() {
return $this->owner->name;
}
}
During build (or whenever singleton(ownerobject)) is called, it seems to execute Foo() and fail because it doesn't have an owner.
Is this expected behaviour?
Example Trace:
* Extent->Extent()
Line 1 of Object.php(455) : eval()'d code
* eval
Line 455 of Object.php
* Object->__construct()
Line 209 of DataObject.php
* DataObject->__construct(,1)
* ReflectionClass->newInstanceArgs(Array)
Line 114 of Object.php
* Object::strong_create(SiteCategory,,1)
Line 258 of Core.php
* singleton(SiteCategory)
Line 2461 of DataObject.php
* DataObject::get_one(SiteCategory,`SiteCategory`.`ID` = 1)
Line 2556 of DataObject.php
* DataObject::get_by_id(SiteCategory,1)
Line 21 of CategorySelectionPage.php
* CategorySelectionPage_Controller->init()
Line 11 of AssetRegisterPage.php
* AssetRegisterPage_Controller->init()
Line 113 of Controller.php
* Controller->handleRequest(HTTPRequest)
Line 29 of ModelAsController.php
* ModelAsController->handleRequest(HTTPRequest)
Line 44 of RootURLController.php
* RootURLController->handleRequest(HTTPRequest)
Line 277 of Director.php
* Director::handleRequest(HTTPRequest,Session)
Line 121 of Director.php
* Director::direct(/)
Line 118 of main.php