Exemple #1
0
        public RequestToCancel createRequestForMessage(BMessage msg, BAsyncResultIF <BMessage> asyncResult)
        {
            ERequestDirection requestDirection = ERequestDirection.FORWARD;
            int timeout = this.timeoutMillisClient;

            // Reverse HTTP request (long-poll)?
            bool isReverse = (msg.header.flags & BMessageHeader.FLAG_RESPONSE) != 0;

            if (isReverse)
            {
                requestDirection = ERequestDirection.REVERSE;
                timeout          = System.Threading.Timeout.Infinite; // timeout controlled by server, 10min by default.
            }

            RequestToCancel r = new RequestToCancel(this,
                                                    requestDirection,
                                                    msg.header.messageId,
                                                    msg.buf,
                                                    null,
                                                    0L,
                                                    0L,
                                                    timeoutMillisClient,
                                                    timeout,
                                                    asyncResult);

            addRequest(r);
            return(r);
        }
Exemple #2
0
 public RequestToCancel(HWireClient wire,
                        ERequestDirection requestDirection,
                        long messageId,
                        ByteBuffer buf,
                        BContentStream stream,
                        long streamId,
                        long cancelMessageId,
                        int timeoutMillisClient,
                        int timeoutMillisRequest,
                        BAsyncResultIF <BMessage> asyncResult)
 {
     this.wire             = wire;
     this.requestDirection = requestDirection;
     this.messageId        = messageId;
     this.streamId         = streamId;
     this.buf                  = buf;
     this.stream               = stream;
     this.cancelMessageId      = cancelMessageId;
     this.timeoutMillisClient  = timeoutMillisClient;
     this.timeoutMillisRequest = timeoutMillisRequest;
     this.asyncResult          = asyncResult;
     this.id = Interlocked.Increment(ref requestCounter);
 }