Example #1
0
 /**
  * Close specified activity.
  * 
  * @param CBPActivity $activity - Activity object.
  * @param mixed $arEventParameters - Optional parameters.
  */
 public function CloseActivity(CBPActivity $activity, $arEventParameters = array())
 {
     switch ($activity->executionStatus) {
         case CBPActivityExecutionStatus::Executing:
             $activity->MarkCompleted($arEventParameters);
             return;
         case CBPActivityExecutionStatus::Canceling:
             $activity->MarkCanceled($arEventParameters);
             return;
         case CBPActivityExecutionStatus::Closed:
             return;
         case CBPActivityExecutionStatus::Faulting:
             $activity->MarkFaulted($arEventParameters);
             return;
     }
     throw new Exception("InvalidClosingState");
 }