public override IReceiveEndpoint Build()
        {
            var builder = new ServiceBusSubscriptionEndpointBuilder(this);

            ApplySpecifications(builder);

            var receivePipe = CreateReceivePipe();

            var receiveEndpointContext = builder.CreateReceiveEndpointContext();

            NamespacePipeConfigurator.UseFilter(new ConfigureTopologyFilter <SubscriptionSettings>(_settings, receiveEndpointContext.BrokerTopology,
                                                                                                   _settings.RemoveSubscriptions));

            return(CreateReceiveEndpoint(builder, receivePipe, receiveEndpointContext));
        }
 protected override IClientCache CreateClientCache(Uri inputAddress, IMessagingFactoryCache messagingFactoryCache, INamespaceCache namespaceCache)
 {
     return(new ClientCache(inputAddress, new SubscriptionClientContextFactory(messagingFactoryCache, namespaceCache,
                                                                               MessagingFactoryPipeConfigurator.Build(), NamespacePipeConfigurator.Build(), _settings)));
 }