You are here

abstract class Braintree_Instance in Commerce Braintree 7

abstract instance template for various objects

@package Braintree @subpackage Utility @copyright 2010 Braintree Payment Solutions @abstract

Hierarchy

Expanded class hierarchy of Braintree_Instance

File

braintree_php/lib/Braintree/Instance.php, line 18

View source
abstract class Braintree_Instance {

  /**
   *
   * @param array $aAttribs
   */
  public function __construct($attributes) {
    if (!empty($attributes)) {
      $this
        ->_initializeFromArray($attributes);
    }
  }

  /**
   * returns private/nonexistent instance properties
   * @access public
   * @param var $name property name
   * @return mixed contents of instance properties
   */
  public function __get($name) {
    if (array_key_exists($name, $this->_attributes)) {
      return $this->_attributes[$name];
    }
    else {
      trigger_error('Undefined property on ' . get_class($this) . ': ' . $name, E_USER_NOTICE);
      return null;
    }
  }

  /**
   * create a printable representation of the object as:
   * ClassName[property=value, property=value]
   * @return var
   */
  public function __toString() {
    $objOutput = Braintree_Util::implodeAssociativeArray($this->_attributes);
    return get_class($this) . '[' . $objOutput . ']';
  }

  /**
   * initializes instance properties from the keys/values of an array
   * @ignore
   * @access protected
   * @param <type> $aAttribs array of properties to set - single level
   * @return none
   */
  private function _initializeFromArray($attributes) {
    $this->_attributes = $attributes;
  }

}

Members

Namesort descending Modifiers Type Description Overrides
Braintree_Instance::_initializeFromArray private function initializes instance properties from the keys/values of an array @ignore @access protected
Braintree_Instance::__construct public function 2
Braintree_Instance::__get public function returns private/nonexistent instance properties @access public
Braintree_Instance::__toString public function create a printable representation of the object as: ClassName[property=value, property=value] 1