예제 #1
0
        public RabbitProducer(TestProducersProvider producersProvider)
        {
            _producersProvider = producersProvider;
            Messages           = new ConcurrentQueue <RabbitMessage>();
            ProducersAlive     = new ConcurrentDictionary <int, DateTime>();
            _fMessageBuilder   = new FMessageBuilder(1);
            _isRunning         = false;
            ManagementClient   = new ManagementClient($"http://{RabbitIp}", "guest", "guest");

            //var x = ManagementClient.GetExchangesAsync().Result;

            //var rabbitUsers = ManagementClient.GetUsersAsync().Result;
            //User testUser;
            //if (rabbitUsers.Any(a => a.Name.Equals("testuser")))
            //{
            //    testUser = ManagementClient.GetUserAsync("testuser").Result;
            //}
            //else
            //{
            //    testUser = ManagementClient.CreateUserAsync(new UserInfo("testuser", "testpass")).Result;
            //}

            //var virtualHosts = ManagementClient.GetVhostsAsync().Result;
            //Vhost virtualHost;
            //if (virtualHosts.Any(a => a.Name.Equals(VirtualHostName)))
            //{
            //    virtualHost = ManagementClient.GetVhostAsync(VirtualHostName).Result;
            //}
            //else
            //{
            //    virtualHost = ManagementClient.CreateVhostAsync(VirtualHostName).Result;
            //    ManagementClient.CreatePermissionAsync(new PermissionInfo(testUser, virtualHost)).RunSynchronously();
            //    ManagementClient.CreatePermissionAsync(new PermissionInfo(ManagementClient.GetUserAsync("guest").Result, virtualHost)).RunSynchronously();
            //}
        }
        public void Init()
        {
            _variantMarketDescriptionMemoryCache   = new MemoryCache("variantMarketDescriptionCache");
            _variantDescriptionMemoryCache         = new MemoryCache("variantDescriptionCache");
            _invariantMarketDescriptionMemoryCache = new MemoryCache("invariantMarketDescriptionCache");

            _cacheManager      = new CacheManager();
            _dataRouterManager = new TestDataRouterManager(_cacheManager);
            _producersProvider = new TestProducersProvider();

            _mappingValidatorFactory = new MappingValidatorFactory();

            _timer = new TestTimer(true);
            _variantMarketDescriptionCache   = new VariantMarketDescriptionCache(_variantMarketDescriptionMemoryCache, _dataRouterManager, _mappingValidatorFactory, _cacheManager);
            _variantDescriptionListCache     = new VariantDescriptionListCache(_variantDescriptionMemoryCache, _dataRouterManager, _mappingValidatorFactory, _timer, TestData.Cultures, _cacheManager);
            _invariantMarketDescriptionCache = new InvariantMarketDescriptionCache(_invariantMarketDescriptionMemoryCache, _dataRouterManager, _mappingValidatorFactory, _timer, TestData.Cultures, _cacheManager);

            _marketCacheProvider = new MarketCacheProvider(_invariantMarketDescriptionCache, _variantMarketDescriptionCache, _variantDescriptionListCache);
        }