public void Test() { var errorQueue = new MsmqQueue <Object>(new QueueName("PSB.App1.Error")); var queue = new MsmqQueue <Object>(new QueueName("PSB.App1.Input")); queue.Send(new SimpleMessage3() { Id = Guid.NewGuid(), Text = "lyapsya2!" }); var waitHandle = new AutoResetEvent(false); queue.MoveToErrorQueue(errorQueue) .StopAfter(1) .Subscribe(obj => { Console.WriteLine("Message received"); }, () => waitHandle.Set()); queue.Start(); Console.WriteLine("After subscribe"); waitHandle.WaitOne(5000); Thread.Sleep(3000); }
private void CloseQueue() { if (this.msmqQueue != null) { this.msmqQueue.Dispose(); } this.msmqQueue = null; }
void CloseQueue() { if (null != this.msmqQueue) { this.msmqQueue.Dispose(); } this.msmqQueue = null; }
protected override void TestSetUp() { base.TestSetUp(); inboxQueue = new MsmqQueue(new Uri("msmq://./sit_inbox"), true); outboxQueue = new MsmqQueue(new Uri("msmq://./sit_outbox"), true); inboxQueue.Create(); outboxQueue.Create(); }
public static IObservable <T> MoveToErrorQueue <T>(this MsmqQueue <T> observable, MsmqQueue <T> errorQueue) { return(Observable.Create <T>(ob => { return observable.Subscribe( i => ob.OnNext(i), x => {}, () => ob.OnCompleted()); })); }
private void OpenQueue() { try { this.msmqQueue = new MsmqQueue(this.factory.AddressTranslator.UriToFormatName(this.RemoteAddress.Uri), 2); } catch (MsmqException exception) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(exception.Normalized); } if (this.factory.ExactlyOnce) { this.transactionMode = MsmqTransactionMode.CurrentOrSingle; } else { this.transactionMode = MsmqTransactionMode.None; } }