/** * @param Ezer_Case $case * @return Ezer_PropelBusinessProcessInstance */ public function &createBusinessProcessInstance(Ezer_Case $case) { $ret = new Ezer_PropelBusinessProcessInstance(); $ret->setProcessId($this->getId()); $ret->setCaseId($case->getId()); $ret->setStepId($this->getId()); $ret->setName($this->getName()); $ret->setVariables($case->getVariables()); $ret->save(); return $ret; }
private function mapConfig(Ezer_Config $config) { $id = uniqid('case_'); $case = new Ezer_Case($id, $config->identifier); $case->priority = $config->priority; foreach ($config->variables as $variable) { $value = null; if (isset($variable['value'])) { $value = $variable['value']; } if (isset($variable['part'])) { $value = array(); $this->addVariablePart($value, $variable['part']); } if ($variable->type == Ezer_Config::ARRAY_TYPE) { $value = array(); $arr = $variable->getArrayCopy(); foreach ($arr as $index => $part) { if (is_numeric($index)) { $this->addVariablePart($value, $part); } } } $case->addVariable($variable->name, $value); } return $case; }
/** * @param Ezer_Case $case * @return Ezer_BusinessProcessInstance */ public function &createBusinessProcessInstance(Ezer_Case $case) { $ret = new Ezer_BusinessProcessInstance($case->getVariables(), $this); return $ret; }
/** * @param Ezer_Case $case * @return Ezer_BusinessProcessInstance */ public function &createBusinessProcessInstance(Ezer_Case $case) { $instance_path = $this->instance_path . '/' . uniqid('inst') . '.xml'; $ret = new Ezer_XmlBusinessProcessInstance($instance_path, $case->getVariables(), $this); return $ret; }
private function loadCase(Ezer_PropelCase $dbCase) { $case = new Ezer_Case($dbCase->getId(), $dbCase->getProcessId()); $case->setVariables($dbCase->getVariables()); return $case; }