private IXDBroadcaster CreateNetworkBroadcaster() { var settings = AmazonAccountSettings.GetInstance(); var amazonSnsFacade = new AmazonSnsFacade(settings); var respository = new TopicRepository(settings, amazonSnsFacade); var publishService = new PublisherService(amazonSnsFacade); return new XDAmazonBroadcaster(serializer, publishService, respository); }
private IXDListener CreateNetworkListener(IIdentityProvider provider) { var settings = AmazonAccountSettings.GetInstance(); var amazonSnsFacade = new AmazonSnsFacade(settings); var amazonSqsFacade = new AmazonSqsFacade(settings); var queuePoller = new QueuePoller(amazonSqsFacade); var resourceCounter = new ResourceCounter(); var respository = new TopicRepository(AmazonAccountSettings.GetInstance(), amazonSnsFacade); var subscriberRepository = new SubscriberRepository(settings, amazonSqsFacade); var subscriptionService = new SubscriptionService( resourceCounter, amazonSnsFacade, amazonSqsFacade, subscriberRepository, queuePoller); return new XDAmazonListener(provider, serializer, respository, subscriberRepository, subscriptionService); }