예제 #1
0
 /// <summary>
 /// Notifies the Response callback object that submission completed
 /// </summary>
 /// <param name="status">Status of submission</param>
 public void SubmitComplete(TpBatchStatus status)
 {
     if (status.status >= 0)
     {
         _requestSuccess = true;
     }
     else
     {
         _requestSuccess = false;
         _evt.Set();
     }
 }
예제 #2
0
        override public bool EndSubmitMessages(
            IAsyncResult ar)
        {
            if (false == _initialized)
            {
                throw new InvalidOperationException("BizTalkMessaging is not initialized.");
            }

            EpmAsyncResult tpAr     = (EpmAsyncResult)ar;
            TpBatchStatus  tpStatus = tpAr.BatchCallback.GetStatus();

            if (0 <= tpStatus.status)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
예제 #3
0
        /// <summary>
        /// Process the results of batch submission
        /// </summary>
        /// <param name="status">Overall status for the batch</param>
        /// <param name="opCount">Count of batch operations</param>
        /// <param name="operationStatus">Status for each operation on the batch</param>
        /// <param name="callbackCookie">Callback cookie</param>
        public void BatchComplete(int status, short opCount, BTBatchOperationStatus[] operationStatus, object callbackCookie)
        {
            try
            {
                _batchStatus = new TpBatchStatus(status, opCount, operationStatus, callbackCookie);

                _isCompleted = true;
                _evt.Set();

                // If client registered for a call back...
                if (null != _asyncCallBack)
                {
                    _asyncCallBack(_ar);
                }
            }
            finally
            {
                if (null != _responseCallback)
                {
                    _responseCallback.SubmitComplete(_batchStatus);
                }
            }
        }