70% OFF : CLICK HERE TO BUY IT TODAY FOR ONLY $44.70 OR GET IT FREE VIA TRIALPAY  

PHP Demo Application - Source Code

/Framework/Model/DataObjects/Parameters/Collections/DataItems.php

<?php
/**
* Script Contents: Apeel_Framework_Model_DataObjects_Parameters_Collections_DataItems Class
* which extends Apeel_Framework_Model_DataObjects_Parameters_Collections_Abstract
* @package Apeel_Framework_Model_DataObjects
*/

/**
* Collection of Apeel_Framework_Model_DataObjects_Parameters_DataItem parameter 
* objects with functionality to add, clear and update parameters.  

* Parameter items can be added by both the constructor and the addParameter(...)
* method.  Existing parameters can be updated through updateParameter(...) and 
* can be cleared through the base class clear() method.  
*  
* @package      Apeel_Framework_Model_DataObjects 
* @version      1.1.0
* @author       John W. King (email: contact@apeelframework.net)
* @copyright    City Business Logic Limited 2001-2011
* @license      Dual MIT / GNU Lesser General Public License Version 3
*/
class Apeel_Framework_Model_DataObjects_Parameters_Collections_DataItems extends Apeel_Framework_Model_DataObjects_Parameters_Collections_Abstract {

    
/**
    * Constructor can optionally automatically add first parameter by 
    * specifying it's values. 
    * 
    * @param string $parameterName
    * @param string $type (valid values: 's', 'i', 'b', 'l', '')
    * @param mixed $value
    * @return void
    */
    
public function __construct($parameterName NULL$_parameterType NULL$value NULL) {
        if ((
$parameterName) && ($_parameterType)) {
            
$this->addParameter($parameterName$_parameterType$value);
        }
    }
    
    
    
/**
    * Add a new Parameter to the collection by specifying it's values.  
    * 
    * A new instance of Apeel_Framework_Model_DataObjects_Parameters_DataItem
    * is created, it's properties are set and added to the collection.  
    * 
    * An index value is appended to each $parameterName to ensure it is unique.
    * 
    * @param string $parameterName
    * @param string $type (valid values: 's', 'i', 'b', 'l', '')
    * @param mixed $value
    * @return string
    */
    
public function addParameter($parameterName$_parameterType$value) {
        
$parameter = new Apeel_Framework_Model_DataObjects_Parameters_DataItem();
        
$parameter->parameterName str_replace('.''_'$parameterName) . $this->getCount();
        
$parameter->_parameterType $_parameterType;
        
$parameter->value $value;
        
$this->add($parameter);
        
        return 
$parameter->parameterName;
    }
    
    
/**
    * Updates the value of an existing, parameter object.  
    * 
    * If it does not exist in the collection, an exception is thrown.  
    * 
    * @param string $parameterName
    * @param mixed $value
    * @return void
    */
    
public function updateParameter($parameterName$value) {
        
$found false;
        if (
$this->items) {
            foreach(
$this->items as $parameter) {
                if (
$parameter->parameterName == $parameterName) {
                    
$parameter->value $value;
                    
$found true;
                    break; 
                }
            }
        }
        if (!
$found) {
            throw new 
Exception('Unable to modify non-existant parameter [' $parameterName ']');
        }
    }
}

?>

PHP Demo Source Code Index