diff options
author | ewinslow <ewinslow@36083f99-b078-4883-b0ff-0f9b5a30f544> | 2010-10-31 01:00:01 +0000 |
---|---|---|
committer | ewinslow <ewinslow@36083f99-b078-4883-b0ff-0f9b5a30f544> | 2010-10-31 01:00:01 +0000 |
commit | aed5a35ed9fa851c96b6e18485188f49de127f1c (patch) | |
tree | 5a3072bcfb3f3060191d744f973c8af1103de2f3 /engine/classes | |
parent | 0c70cbd09644c3c38f3cb1a1857ff8b77607c945 (diff) | |
download | elgg-aed5a35ed9fa851c96b6e18485188f49de127f1c.tar.gz elgg-aed5a35ed9fa851c96b6e18485188f49de127f1c.tar.bz2 |
Refs #2597: Pulled __set, __get, __isset magic functions definitions into ElggData
git-svn-id: http://code.elgg.org/elgg/trunk@7163 36083f99-b078-4883-b0ff-0f9b5a30f544
Diffstat (limited to 'engine/classes')
-rw-r--r-- | engine/classes/ElggAnnotation.php | 23 | ||||
-rw-r--r-- | engine/classes/ElggData.php | 41 | ||||
-rw-r--r-- | engine/classes/ElggEntity.php | 36 | ||||
-rw-r--r-- | engine/classes/ElggMetadata.php | 23 | ||||
-rw-r--r-- | engine/classes/ElggRelationship.php | 4 |
5 files changed, 43 insertions, 84 deletions
diff --git a/engine/classes/ElggAnnotation.php b/engine/classes/ElggAnnotation.php index d99f5fc9a..da43aea23 100644 --- a/engine/classes/ElggAnnotation.php +++ b/engine/classes/ElggAnnotation.php @@ -46,29 +46,6 @@ class ElggAnnotation extends ElggExtender { } /** - * Class member get overloading - * - * @param string $name The name of the value to get - * - * @return mixed - */ - function __get($name) { - return $this->get($name); - } - - /** - * Class member set overloading - * - * @param string $name The name of the value to set - * @param mixed $value The value to set - * - * @return mixed - */ - function __set($name, $value) { - return $this->set($name, $value); - } - - /** * Save this instance * * @return int an object id diff --git a/engine/classes/ElggData.php b/engine/classes/ElggData.php index 97c33bbb5..7ab169c97 100644 --- a/engine/classes/ElggData.php +++ b/engine/classes/ElggData.php @@ -32,6 +32,47 @@ abstract class ElggData implements $this->attributes['time_created'] = ''; } + + /** + * Return an attribute or a piece of metadata. + * + * @param string $name Name + * + * @return mixed + */ + public function __get($name) { + return $this->get($name); + } + + /** + * Set an attribute or a piece of metadata. + * + * @param string $name Name + * @param mixed $value Value + * + * @return mixed + */ + public function __set($name, $value) { + return $this->set($name, $value); + } + + /** + * Test if property is set either as an attribute or metadata. + * + * @tip Use isset($entity->property) + * + * @param string $name The name of the attribute or metadata. + * + * @return bool + */ + function __isset($name) { + return $this->$name !== NULL; + } + + abstract protected function get($name); + + abstract protected function set($name, $value); + /** * Get a URL for this object * diff --git a/engine/classes/ElggEntity.php b/engine/classes/ElggEntity.php index 7532bd9dd..2128a35e9 100644 --- a/engine/classes/ElggEntity.php +++ b/engine/classes/ElggEntity.php @@ -261,42 +261,6 @@ abstract class ElggEntity extends ElggData implements } /** - * Return an attribute or a piece of metadata. - * - * @param string $name Name - * - * @return mixed - */ - function __get($name) { - return $this->get($name); - } - - /** - * Set an attribute or a piece of metadata. - * - * @param string $name Name - * @param mixed $value Value - * - * @return mixed - */ - function __set($name, $value) { - return $this->set($name, $value); - } - - /** - * Test if property is set either as an attribute or metadata. - * - * @tip Use isset($entity->property) - * - * @param string $name The name of the attribute or metadata. - * - * @return bool - */ - function __isset($name) { - return $this->$name !== NULL; - } - - /** * Unset a property from metadata or attribute. * * @warning If you use this to unset an attribute, you must save the object! diff --git a/engine/classes/ElggMetadata.php b/engine/classes/ElggMetadata.php index 24365d4d9..90cbba5bd 100644 --- a/engine/classes/ElggMetadata.php +++ b/engine/classes/ElggMetadata.php @@ -43,29 +43,6 @@ class ElggMetadata extends ElggExtender { } /** - * Class member get overloading - * - * @param string $name Name - * - * @return mixed - */ - function __get($name) { - return $this->get($name); - } - - /** - * Class member set overloading - * - * @param string $name Name - * @param mixed $value Value - * - * @return mixed - */ - function __set($name, $value) { - return $this->set($name, $value); - } - - /** * Determines whether or not the user can edit this piece of metadata * * @return true|false Depending on permissions diff --git a/engine/classes/ElggRelationship.php b/engine/classes/ElggRelationship.php index 376150f9f..413527df3 100644 --- a/engine/classes/ElggRelationship.php +++ b/engine/classes/ElggRelationship.php @@ -40,7 +40,7 @@ class ElggRelationship extends ElggData implements * * @return mixed */ - function __get($name) { + function get($name) { if (isset($this->attributes[$name])) { return $this->attributes[$name]; } @@ -56,7 +56,7 @@ class ElggRelationship extends ElggData implements * * @return mixed */ - function __set($name, $value) { + function set($name, $value) { $this->attributes[$name] = $value; return true; } |