according to the strategy code subscription queue is the main On 1/21/09, Mike Nichols <[email protected]> wrote: > > This line: > + internal static void InitializeSubQueues(Uri endpoint, bool > transactional) > + { > + var siblingQueues = new[] {"#errors", "#discarded", > "#timeout"}; > + foreach(var sibling in siblingQueues) > + { > + new Uri(endpoint.ToString() + > sibling).CreateQueue > (transactional,QueueAccessMode.Peek).Close(); > + } > + } > + > > Is missing the #subscriptions subqueue. There are five total queues > created for a specific endpoint, though I believe right now flatqueue > strategy doesn't participate in timeout handling...that may be fixed > now. > > > On Jan 20, 4:00 pm, chrisortman <[email protected]> wrote: >> As of right now it is not. >> I also posted it as a zip file in this >> threadhttp://groups.google.com/group/rhino-tools-dev/browse_frm/thread/5b03... >> >> If you have trouble applying you can download a copy of my repo from >> herehttp://github.com/chrisortman/rhino-tools/tree/master >> >> On Jan 20, 3:33 pm, lars kolsaker <[email protected]> wrote: >> >> > Is this patch added to the trunk ? >> >> > On Jan 19, 8:06 pm, Ayende Rahien <[email protected]> wrote: >> >> > > Please zip it here. >> > > Mike, can you review that? >> >> > > On Mon, Jan 19, 2009 at 2:02 PM, chrisortman <[email protected]> >> > > wrote: >> >> > > > Here's a patch for that >> >> > > > From 5dc1b09401ae6e9c5cd719025c57121dd293aa34 Mon Sep 17 00:00:00 >> > > > 2001 >> > > > From: Chris Ortman <[email protected]> >> > > > Date: Mon, 19 Jan 2009 13:00:33 -0600 >> > > > Subject: [PATCH] Allows the FlatQueueStrategy to create its >> > > > subqueues >> > > > on demand. >> >> > > > --- >> > > > .../MsmqFlatQueueTestBase.cs | 67 +++++++++ >> > > > +---------- >> > > > ...rializableMessageWillBeForwardedToErrorQueue.cs | 1 + >> > > > .../Impl/RhinoServiceBusFacility.cs | 8 +++ >> > > > .../Rhino.ServiceBus/Msmq/FlatQueueStrategy.cs | 17 ++++- >> > > > .../Rhino.ServiceBus/Msmq/IInitializeSubQueues.cs | 33 >> > > > ++++++++++ >> > > > .../Rhino.ServiceBus/Msmq/IQueueStrategy.cs | 1 + >> > > > .../Rhino.ServiceBus/Msmq/MsmqExtensions.cs | 8 ++- >> > > > .../Rhino.ServiceBus/Msmq/MsmqTransport.cs | 14 ++++ >> > > > .../Rhino.ServiceBus/Msmq/MsmqUtil.cs | 4 +- >> > > > .../Rhino.ServiceBus/Msmq/SubQueueStrategy.cs | 5 ++ >> > > > .../Rhino.ServiceBus/Rhino.ServiceBus.csproj | 1 + >> > > > 11 files changed, 119 insertions(+), 40 deletions(-) >> > > > create mode 100644 rhino-service.bus/Rhino.ServiceBus/Msmq/ >> > > > IInitializeSubQueues.cs >> >> > > > diff --git a/rhino-service.bus/Rhino.ServiceBus.Tests/ >> > > > MsmqFlatQueueTestBase.cs b/rhino-service.bus/Rhino.ServiceBus.Tests/ >> > > > MsmqFlatQueueTestBase.cs >> > > > index a08b167..0f0f89a 100644 >> > > > --- a/rhino-service.bus/Rhino.ServiceBus.Tests/ >> > > > MsmqFlatQueueTestBase.cs >> > > > +++ b/rhino-service.bus/Rhino.ServiceBus.Tests/ >> > > > MsmqFlatQueueTestBase.cs >> > > > @@ -64,46 +64,47 @@ namespace Rhino.ServiceBus.Tests >> > > > if (MessageQueue.Exists(transactionalTestQueuePath) == >> > > > false) >> > > > MessageQueue.Create(transactionalTestQueuePath, >> > > > true); >> >> > > > - if (MessageQueue.Exists(testQueuePath + >> > > > errorsPathSuffix) >> > > > == false) >> > > > - MessageQueue.Create(testQueuePath + >> > > > errorsPathSuffix); >> > > > - >> > > > - if (MessageQueue.Exists(testQueuePath2 + >> > > > errorsPathSuffix) == false) >> > > > - MessageQueue.Create(testQueuePath2 + >> > > > errorsPathSuffix); >> > > > - >> > > > - if (MessageQueue.Exists(transactionalTestQueuePath + >> > > > errorsPathSuffix) == false) >> > > > - MessageQueue.Create(transactionalTestQueuePath + >> > > > errorsPathSuffix, true); >> > > > - >> > > > - if (MessageQueue.Exists(testQueuePath + >> > > > discardedPathSuffix) == false) >> > > > - MessageQueue.Create(testQueuePath + >> > > > discardedPathSuffix); >> >> > > > queue = new MessageQueue(testQueuePath); >> > > > queue.Purge(); >> >> > > > - using (var errQueue = new MessageQueue(testQueuePath + >> > > > errorsPathSuffix)) >> > > > - { >> > > > - errQueue.Purge(); >> > > > - } >> > > > - >> > > > - using (var discardedQueue = new MessageQueue >> > > > (testQueuePath + discardedPathSuffix)) >> > > > - { >> > > > - discardedQueue.Purge(); >> > > > - } >> > > > - >> > > > - testQueue2 = new MessageQueue(testQueuePath2); >> > > > + >> > > > if(MessageQueue.Exists(testQueuePath+ errorsPathSuffix)) >> > > > + { >> > > > + using (var >> > > > errQueue >> > > > = new MessageQueue(testQueuePath + >> > > > errorsPathSuffix)) >> > > > + { >> > > > + >> > > > errQueue.Purge(); >> > > > + } >> > > > + } >> > > > + >> > > > + >> > > > if(MessageQueue.Exists(testQueuePath+discardedPathSuffix)) >> > > > + { >> > > > + using (var >> > > > discardedQueue = >> > > > new MessageQueue(testQueuePath + >> > > > discardedPathSuffix)) >> > > > + { >> > > > + >> > > > discardedQueue.Purge(); >> > > > + } >> > > > + } >> > > > + >> > > > + testQueue2 = new MessageQueue(testQueuePath2); >> > > > testQueue2.Purge(); >> >> > > > - using (var errQueue2 = new MessageQueue(testQueuePath2 >> > > > + >> > > > errorsPathSuffix)) >> > > > - { >> > > > - errQueue2.Purge(); >> > > > - } >> > > > + >> > > > if(MessageQueue.Exists(testQueuePath2+errorsPathSuffix)) >> > > > + { >> > > > + using (var errQueue2 >> > > > = new >> > > > MessageQueue(testQueuePath2 + >> > > > errorsPathSuffix)) >> > > > + { >> > > > + >> > > > errQueue2.Purge(); >> > > > + } >> > > > + } >> >> > > > - transactionalQueue = new MessageQueue >> > > > (transactionalTestQueuePath); >> > > > + transactionalQueue = new MessageQueue >> > > > (transactionalTestQueuePath); >> > > > transactionalQueue.Purge(); >> >> > > > - using (var errQueue3 = new MessageQueue >> > > > (transactionalTestQueuePath + errorsPathSuffix)) >> > > > - { >> > > > - errQueue3.Purge(); >> > > > - } >> > > > + if (MessageQueue.Exists(transactionalTestQueuePath + >> > > > errorsPathSuffix)) >> > > > + { >> > > > + using (var errQueue3 = new MessageQueue >> > > > (transactionalTestQueuePath + errorsPathSuffix)) >> > > > + { >> > > > + errQueue3.Purge(); >> > > > + } >> > > > + } >> >> > > > subscriptions = new MessageQueue(subbscriptionQueuePath) >> > > > { >> > > > @@ -122,7 +123,7 @@ namespace Rhino.ServiceBus.Tests >> > > > new XmlMessageSerializer( >> > > > new DefaultReflection(), >> > > > new DefaultKernel()), TestQueueUri, 1, >> > > > - DefaultMessageActions(TestQueueUri)); >> > > > + DefaultMessageActions(TestQueueUri)) >> > > > { SubQueueInitializer = new FlatQueueSubQueueInitializer()}; >> > > > transport.Start(); >> > > > } >> > > > return transport; >> > > > @@ -150,7 +151,7 @@ namespace Rhino.ServiceBus.Tests >> > > > if (transactionalTransport == null) >> > > > { >> > > > transactionalTransport = new MsmqTransport(new >> > > > XmlMessageSerializer(new DefaultReflection(), new DefaultKernel()), >> > > > - >> > > > TransactionalTestQueueUri, 1, DefaultMessageActions >> > > > (TransactionalTestQueueUri)); >> > > > + >> > > > TransactionalTestQueueUri, 1, DefaultMessageActions >> > > > (TransactionalTestQueueUri) ){ SubQueueInitializer = new >> > > > FlatQueueSubQueueInitializer()}; >> > > > transactionalTransport.Start(); >> > > > } >> > > > return transactionalTransport; >> > > > diff --git a/rhino-service.bus/Rhino.ServiceBus.Tests/ >> > > > UnserializableMessageWillBeForwardedToErrorQueue.cs b/rhino- >> > > > service.bus/Rhino.ServiceBus.Tests/ >> > > > UnserializableMessageWillBeForwardedToErrorQueue.cs >> > > > index 60110b7..04db6a9 100644 >> > > > --- a/rhino-service.bus/Rhino.ServiceBus.Tests/ >> > > > UnserializableMessageWillBeForwardedToErrorQueue.cs >> > > > +++ b/rhino-service.bus/Rhino.ServiceBus.Tests/ >> > > > UnserializableMessageWillBeForwardedToErrorQueue.cs >> > > > @@ -36,6 +36,7 @@ namespace Rhino.ServiceBus.Tests >> > > > Assert.True(wasCalled); >> > > > } >> > > > } >> > > > + >> > > > public class >> > > > UnserializableMessageWillBeForwardedToFlattenedErrorQueue : >> > > > MsmqFlatQueueTestBase >> > > > { >> > > > [Fact] >> > > > diff --git a/rhino-service.bus/Rhino.ServiceBus/Impl/ >> > > > RhinoServiceBusFacility.cs >> > > > b/rhino-service.bus/Rhino.ServiceBus/Impl/ >> > > > RhinoServiceBusFacility.cs >> > > > index 30a791a..b39ba30 100644 >> > > > --- a/rhino-service.bus/Rhino.ServiceBus/Impl/ >> > > > RhinoServiceBusFacility.cs >> > > > +++ b/rhino-service.bus/Rhino.ServiceBus/Impl/ >> >> ... >> >> read more ยป > > >
--~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Rhino Tools Dev" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/rhino-tools-dev?hl=en -~----------~----~----~----~------~----~------~--~---
