protected override void BeforeStart(OpenedQueue queue) { try { queueStrategy.InitializeQueue(Endpoint, QueueType.LoadBalancer); } catch (Exception e) { throw new TransportException( "Could not open queue for load balancer: " + Endpoint + Environment.NewLine + "Queue path: " + MsmqUtil.GetQueuePath(Endpoint), e); } try { ReadUrisFromSubQueue(KnownWorkers, SubQueue.Workers); } catch (Exception e) { throw new InvalidOperationException("Could not read workers subqueue", e); } try { ReadUrisFromSubQueue(KnownEndpoints, SubQueue.Endpoints); } catch (Exception e) { throw new InvalidOperationException("Could not read endpoints subqueue", e); } RemoveAllReadyToWorkMessages(); }
protected void CreateQueues(QueueType mainQueueType, Endpoint mainQueueEndpoint, string user) { // will create the queues if they are not already there var queues = queueStrategy.InitializeQueue(mainQueueEndpoint, mainQueueType); foreach (var queue in queues) { GrantPermissions(queue, user); } }
public void BusStarting(IServiceBus bus) { try { queueStrategy.InitializeQueue(bus.Endpoint, QueueType.Standard); } catch (Exception e) { throw new TransportException( "Could not open queue: " + bus.Endpoint + Environment.NewLine + "Queue path: " + FileUtil.GetQueuePath(bus.Endpoint), e); } }
public void Execute(string user) { // will create the queues if they are not already there var queues = queueStrategy.InitializeQueue(readyForWorkListener.Endpoint, QueueType.Raw); foreach (var queue in queues) { queue.SetPermissions(user, MessageQueueAccessRights.DeleteMessage | MessageQueueAccessRights.DeleteJournalMessage | MessageQueueAccessRights.GenericRead | MessageQueueAccessRights.GenericWrite | MessageQueueAccessRights.GetQueuePermissions | MessageQueueAccessRights.PeekMessage | MessageQueueAccessRights.ReceiveJournalMessage | MessageQueueAccessRights.ReceiveMessage | MessageQueueAccessRights.WriteMessage, AccessControlEntryType.Allow); } }