Answers the value of the specified attribute from the parent(s) of the extended object.

@param string $name

@return mixed
164660
public function getFieldFromParent($name)
    {
        $value = null;
        
        if ($this->owner->hasMethod('getParent')) {
            
            $parent = $this->owner->getParent();
            
            while ($parent && !$value) {
                $value  = $parent->{$name};
                $parent = $parent->hasMethod('getParent') ? $parent->getParent() : null;
            }
            
        }
        
        return $value;
    }
529238
public function getAttribute($name)
    {
        return array_key_exists($name, $this->data['data']) ? $this->data['data'][$name] : null;
    }
374029
public function &getAttributeByName($name)
    {
        if (!isset( $this->attributes[$name] )) {
            throw new \RuntimeException( 'An attribute by the name of \'' . $name . '\' could not be located on the \'' . $this->getName() . '\' entity.' );
        }

        return $this->attributes[$name];
    }
881598
protected function iget ($name)
	{
		
		// If the attribute doesn't exists
		
		if (!$this->attributeExists ($name))
		{
			throw new Exception (get_called_class () . '->' . $name . ' attribute does not exist!');
		}
		
		// If no attribute value is set
		
		if (!$this->attributeHasValue ($name))
		{
			
			// If there is a default set to value
			
			if (array_key_exists ('default', static::$attributes[$name]))
			{
				$this->iset ($name, static::$attributes[$name]['default'], FALSE);
			}
			
			// Else there is no value and no default
			
			else
			{
				throw new Exception (get_called_class () . '->' . $name . ' attribute isn\'t set and has no default value!');
			}
			
		}
		
		// Return value
		
		return $this->attributeValues[$name];
			
	}
22119
public static function get($name)
    {
        $class = get_called_class();
    
        if (!isset(self::$instance[$class])) {
            self::$instance[$class] = new static();
        }
        
        return self::$instance[$class]->getExtensions()->get($name);
    }
381836
public function getValue($name)
    {
        switch ($name) {
            case 'isDirty':
                return $this->_isDirty;

            case 'isPhantom':
                return $this->_isPhantom;

            case 'wasPhantom':
                return $this->_wasPhantom;

            case 'isValid':
                return $this->_isValid;

            case 'isNew':
                return $this->_isNew;

            case 'isUpdated':
                return $this->_isUpdated;

            case 'validationErrors':
                return array_filter($this->_validationErrors);

            case 'data':
                return $this->getData();

            case 'originalValues':
                return $this->_originalValues;

            default:
            {
                // handle field
                if (static::fieldExists($name)) {
                    return $this->_getFieldValue($name);
                }
                // handle relationship
                elseif (static::isRelational()) {
                    if (static::_relationshipExists($name)) {
                        return $this->_getRelationshipValue($name);
                    }
                }
                // default Handle to ID if not caught by fieldExists
                elseif ($name == static::$handleField) {
                    return $this->ID;
                }
            }
        }
        // undefined
        return null;
    }
420362
public function getAttribute($name)
    {
        $attributes = $this->getAttributes();

        if (isset($attributes[$name])) {
            return $attributes[$name];
        }

        return null;
    }
1252303
public function getProperty($name)
    {
        //Handle computed properties
        if(!parent::offsetExists($name) && $this->hasProperty($name))
        {
            $getter  = 'getProperty'.StringInflector::camelize($name);
            $methods = $this->getMethods();

            if(isset($methods[$getter])) {
                parent::offsetSet($name, $this->$getter());
            }
        }

        return parent::offsetGet($name);
    }
318666
public function getDirtyAttribute($name)
    {
        $result = null;

        if ($this->dirtyAttributeExists($name)) {
            $result = $this->dirtyAttributes[$name];
        }

        return $result;
    }
280560
public function __isset($name)
    {
        return 'parent' == $name ||
               'children' == $name ||
               in_array(strtolower($name), array_keys($this->properties));
    }
1313619
public function getAttribute( $name ) {
        if( key_exists( $name, $this->attrs ) ) {
            return $this->attrs[$name];
        } else {
            return null;
        }
    }
668616
protected function getModelValueAttribute($name)
    {
        if (is_object($this->model))
        {
            return object_get($this->model, $this->transformKey($name));
        }
        elseif (is_array($this->model))
        {
            return array_get($this->model, $this->transformKey($name));
        }
    }
578571
public function attribute($name)
    {
        $exists = isset($this->attributes[$name]);

        return $exists ? $this->attributes[$name] : null;
    }
435505
public function getValueAttribute($name, $value = null)
    {
        if (is_null($name)) {
            return $value;
        }

        if (! is_null($value)) {
            return $value;
        }
    }
419533
public function getAttribute($name)
    {
        if (!array_key_exists($name, $this->attributes)) {
            throw new LogicException(sprintf('Attribute "%s" does not exist for Node "%s".', $name, get_class($this)));
        }

        return $this->attributes[$name];
    }
35222
public function getExtension($name)
    {
        if ($this->parent) {
            return $this->parent->getExtension($name);
        }

        return $this->callables[$name];
    }
873639
public function getAttribute($name) {

	    $key = strtolower($name);

	    if('value' === $key) {
	        return $this->getValue();
        }
        if('name' === $key) {
            return $this->getName();
        }


	    if(array_key_exists($key, $this->attributes)) {

	        return $this->attributes[strtolower($name)];

        }

	    return null;

    }