/**
  * Method to create a new object.
  *
  * @access public
  * @param  string Reference name for the object
  * @return action Returns this object.
  */
 public function create($name)
 {
     $this->_arrChildren = array();
     return parent::create($name);
 }
 /**
  * Method to update the parameters in the database, and re-initialize the object.
  *
  * @access  public   
  * @author  Jonathan Abrahams
  * @return  condition Returns this condition object, and retrieves the parameters from the database.
  * @version V0.1
  */
 function update()
 {
     // Package condition properties.
     $conditionType = array();
     $conditionType['classname'] = $this->_conditionTypeClassName;
     $conditionType['modulename'] = $this->_conditionTypeModuleName;
     // Update the parameters
     parent::update('id', $this->_id, $conditionType);
     return $this;
 }
 /**
  * Method to delete the object and all its children objects - modified to take into account no cascading deletes.
  * Explicitly calls deletes to the bridging tables reliant on the condition table
  *
  * @access public    
  * @author Serge Meunier
  * @param  string     Delete object by name( optional )
  * @return true|false Return true if successfull, otherwise false.
  */
 function delete($name = NULL)
 {
     // Delete by name
     $delObject = $name ? $this->create($name) : $this;
     $this->_objRuleCondition->delete($delObject->_id, 'conditionId');
     return parent::delete('id', $delObject->_id);
 }