/**
  * Walk through the cloned process and replace the item runner placeholders
  *
  * @param core_kernel_classes_Resource $processDefinition            
  */
 protected function process(core_kernel_classes_Resource $processDefinition)
 {
     $report = new common_report_Report(common_report_Report::TYPE_SUCCESS);
     $activities = wfEngine_models_classes_ProcessDefinitionService::singleton()->getAllActivities($processDefinition);
     foreach ($activities as $activity) {
         $services = wfEngine_models_classes_ActivityService::singleton()->getInteractiveServices($activity);
         foreach ($services as $service) {
             $serviceDefinition = $service->getUniquePropertyValue(new core_kernel_classes_Property(PROPERTY_CALLOFSERVICES_SERVICEDEFINITION));
             if ($serviceDefinition->getUri() == INSTANCE_ITEMCONTAINER_SERVICE) {
                 $item = taoWfTest_models_classes_WfTestService::singleton()->getItemByService($service);
                 if (is_null($item)) {
                     $report->add($this->fail(__('No valid item found for service "%s"', $service->getLabel())));
                 } else {
                     $itemReport = $this->subCompile($item);
                     if ($itemReport->getType() == common_report_Report::TYPE_SUCCESS) {
                         $serviceCall = $itemReport->getData();
                         $storedServiceCall = $serviceCall->toOntology();
                         // remove old service
                         wfEngine_models_classes_InteractiveServiceService::singleton()->deleteInteractiveService($service);
                         $activity->removePropertyValue(new core_kernel_classes_Property(PROPERTY_ACTIVITIES_INTERACTIVESERVICES), $service);
                         // add new service
                         $activity->setPropertyValue(new core_kernel_classes_Property(PROPERTY_ACTIVITIES_INTERACTIVESERVICES), $storedServiceCall);
                     }
                     $report->add($itemReport);
                     if ($itemReport->getType() != common_report_Report::TYPE_SUCCESS) {
                         $report->setType($itemReport->getType());
                     }
                 }
             }
         }
     }
     return $report;
 }
 public function getItems(core_kernel_classes_Resource $test)
 {
     return taoWfTest_models_classes_WfTestService::singleton()->getTestItems($test);
 }
 /**
  * constructor: initialize the service and the default data
  */
 public function __construct()
 {
     parent::__construct();
     //the service is initialized by default
     $this->service = taoWfTest_models_classes_WfTestService::singleton();
 }