Exemple #1
0
        /// <summary>
        /// Invokes the TestStackEx service.
        /// </summary>
        public virtual ResponseHeader TestStackEx(
            RequestHeader         requestHeader,
            uint                  testId,
            int                   iteration,
            CompositeTestType     input,
            out CompositeTestType output)
        {
            TestStackExRequest request = new TestStackExRequest();
            TestStackExResponse response = null;

            request.RequestHeader = requestHeader;
            request.TestId        = testId;
            request.Iteration     = iteration;
            request.Input         = input;

            UpdateRequestHeader(request, requestHeader == null, "TestStackEx");

            try
            {
                if (UseTransportChannel)
                {
                    IServiceResponse genericResponse = TransportChannel.SendRequest(request);

                    if (genericResponse == null)
                    {
                        throw new ServiceResultException(StatusCodes.BadUnknownResponse);
                    }

                    ValidateResponse(genericResponse.ResponseHeader);
                    response = (TestStackExResponse)genericResponse;
                }
                else
                {
                    TestStackExResponseMessage responseMessage = InnerChannel.TestStackEx(new TestStackExMessage(request));

                    if (responseMessage == null || responseMessage.TestStackExResponse == null)
                    {
                        throw new ServiceResultException(StatusCodes.BadUnknownResponse);
                    }

                    response = responseMessage.TestStackExResponse;
                    ValidateResponse(response.ResponseHeader);
                }

                output = response.Output;
            }
            finally
            {
                RequestCompleted(request, response, "TestStackEx");
            }

            return response.ResponseHeader;
        }
Exemple #2
0
        /// <summary>
        /// Begins an asynchronous invocation of the TestStackEx service.
        /// </summary>
        public IAsyncResult BeginTestStackEx(
            RequestHeader     requestHeader,
            uint              testId,
            int               iteration,
            CompositeTestType input,
            AsyncCallback     callback,
            object            asyncState)
        {
            TestStackExRequest request = new TestStackExRequest();

            request.RequestHeader = requestHeader;
            request.TestId        = testId;
            request.Iteration     = iteration;
            request.Input         = input;

            UpdateRequestHeader(request, requestHeader == null, "TestStackEx");

            if (UseTransportChannel)
            {
                return TransportChannel.BeginSendRequest(request, callback, asyncState);
            }

            return InnerChannel.BeginTestStackEx(new TestStackExMessage(request), callback, asyncState);
        }
Exemple #3
0
 /// <summary>
 /// Initializes the message with the body.
 /// </summary>
 public TestStackExMessage(TestStackExRequest TestStackExRequest)
 {
     this.TestStackExRequest = TestStackExRequest;
 }