예제 #1
0
        public bool Execute(MsmqUriParser parser, TimeSpan timeout)
        {
            State.Clear();

            State.Add(parser);
            State.Add("timeout", timeout);

            return(base.Execute());
        }
예제 #2
0
        public bool Execute(Guid messageId, MsmqUriParser parser, TimeSpan timeout)
        {
            State.Clear();

            State.Add("messageId", messageId);
            State.Add(parser);
            State.Add("timeout", timeout);

            return(base.Execute());
        }
예제 #3
0
        public MsmqQueue(Uri uri, IMsmqConfiguration configuration)
        {
            Guard.AgainstNull(uri, "uri");
            Guard.AgainstNull(configuration, "configuration");

            _log = Log.For(this);

            _parser = new MsmqUriParser(uri);

            _timeout = _parser.Local
                ? TimeSpan.FromMilliseconds(configuration.LocalQueueTimeoutMilliseconds)
                : TimeSpan.FromMilliseconds(configuration.RemoteQueueTimeoutMilliseconds);

            Uri = _parser.Uri;

            _messagePropertyFilter = new MessagePropertyFilter();
            _messagePropertyFilter.SetAll();

            _dequeuePipelinePool = new ReusableObjectPool <MsmqGetMessagePipeline>();
        }