예제 #1
0
        /// <summary>
        /// Workflow Event
        /// </summary>
        /// <param name="request">Request</param>
        /// <returns>WorkflowEventResponse</returns>
        public WorkflowEventResponse WorkflowEvent(WorkflowEventRequest request)
        {
            WorkflowEventResponse response = null;

            var proxy = _proxyManager.GetProxyForWorkflow(request.WorkflowId);

            switch (request.CorrelationId)
            {
            case 1: response = proxy.WorkflowEvent1(request);
                break;

            case 2: response = proxy.WorkflowEvent2(request);
                break;

            case 3: response = proxy.WorkflowEvent3(request);
                break;

            case 4: response = proxy.WorkflowEvent4(request);
                break;

            case 5: response = proxy.WorkflowEvent5(request);
                break;

            default: throw new ArgumentException("Wrong CorrelationId must be 1-5");
            }

            var toDispose = proxy as System.ServiceModel.ClientBase <IFlowTasksOperations>;

            if (toDispose != null)
            {
                toDispose.Close();
            }

            return(response);
        }
예제 #2
0
 /// <summary>
 /// Workflow Event
 /// </summary>
 /// <param name="request">Request</param>
 /// <returns>WorkflowEventResponse</returns>
 public WorkflowEventResponse WorkflowEvent(WorkflowEventRequest request)
 {
     return(Channel.WorkflowEvent(request));
 }
예제 #3
0
 public WorkflowEventResponse WorkflowEvent5(WorkflowEventRequest request)
 {
     throw new NotImplementedException();
 }