public void CheckStatus(ApiCommandArgument arg) { AuthenticationService.Authenticate(arg.SecurityToken); if (!AuthenticationService.IsAuthenticated()) { return; } if (!AuthorizationService.IsAllowedToExecuteCommand(arg.InstanceId, WorkflowCommandType.CheckStatus)) { return; } FireCommandWithWaiting(arg, delegate(ApiCommandArgument arg1) { using (var sync = GetWorkflowSync(arg1)) { WorkflowInitService.RaiseCheckStatus(arg1.InstanceId); sync.WaitHandle.WaitOne(4000); } }); }