public ServiceQueueResponseBase(NetMessagingBinding binding) : base(binding, ResponseAddress) { //Grab the creds the host was using IServiceBusProperties properties = OperationContext.Current.Host as IServiceBusProperties; Debug.Assert(properties != null); Tuple <Uri, string> tuple = ServiceBusHelper.ParseUri(ResponseAddress.Uri); this.SetServiceBusCredentials(properties.Credential.TokenProvider); ServiceBusHelper.VerifyQueue(tuple.Item1, tuple.Item2, properties.Credential.TokenProvider, RequiresSession); }
protected override void OnOpening() { this.AddGenericResolver(); IServiceBusProperties properties = this as IServiceBusProperties; foreach (ServiceEndpoint endpoint in Description.Endpoints) { Tuple <Uri, string> tuple = ServiceBusHelper.ParseUri(endpoint.Address.Uri); ServiceBusHelper.VerifyQueue(tuple.Item1, tuple.Item2, properties.Credential.TokenProvider, RequiresSession); } base.OnOpening(); }
void PurgeQueues() { IServiceBusProperties properties = this as IServiceBusProperties; foreach (Uri queueAddress in properties.Addresses) { try { Uri baseAddress = ServiceBusHelper.ParseUri(queueAddress).Item1; string queueName = ServiceBusHelper.ParseUri(queueAddress).Item2; ServiceBusHelper.PurgeQueue(baseAddress, queueName, properties.Credential.TokenProvider); } catch {} } }
protected override T CreateChannel() { Debug.Assert(Endpoint.Binding is NetMessagingBinding); bool requiresSession; if (SessionId == null) { requiresSession = false; } else { requiresSession = true; } IServiceBusProperties properties = this as IServiceBusProperties; Tuple <Uri, string> tuple = ServiceBusHelper.ParseUri(Endpoint.Address.Uri); ServiceBusHelper.VerifyQueue(tuple.Item1, tuple.Item2, properties.Credential.TokenProvider, requiresSession); this.AddGenericResolver(); return(base.CreateChannel()); }