/**
  * Short description of method deleteProcessExecutions
  *
  * @access public
  * @author Somsack Sipasseuth, <*****@*****.**>
  * @param  array processExecutions
  * @param  boolean finishedOnly
  * @return boolean
  */
 public function deleteProcessExecutions($processExecutions = array(), $finishedOnly = false)
 {
     $returnValue = (bool) false;
     if (is_array($processExecutions)) {
         if (empty($processExecutions)) {
             $activityExecutionClass = new core_kernel_classes_Class(CLASS_ACTIVITY_EXECUTION);
             //get all instances!
             foreach ($this->processInstancesClass->getInstances(false) as $processInstance) {
                 if ($finishedOnly) {
                     if (!$this->isFinished($processInstance)) {
                         continue;
                     }
                 }
                 $processExecutions[] = $processInstance;
             }
             $execToDelete = array();
             foreach ($processExecutions as $processExecution) {
                 $allActivityExecutions = $processExecution->getPropertyValues($this->processInstancesActivityExecutionsProp);
                 $count = count($allActivityExecutions);
                 for ($i = 0; $i < $count; $i++) {
                     $uri = $allActivityExecutions[$i];
                     if (common_Utils::isUri($uri)) {
                         $execToDelete[] = $uri;
                     }
                 }
             }
             $this->processInstancesClass->deleteInstances($processExecutions);
             $activityExecutionClass->deleteInstances($execToDelete);
         }
         foreach ($processExecutions as $processExecution) {
             if (!is_null($processExecution) && $processExecution instanceof core_kernel_classes_Resource) {
                 $returnValue = $this->deleteProcessExecution($processExecution, $finishedOnly);
             }
         }
     } else {
         throw new InvalidArgumentException('$processExecutions must be an array.');
     }
     return (bool) $returnValue;
 }