public void Resolve(IIOCContainer container)
 {
     for (var i = 0; i < this.count; i++)
     {
         container.Resolve(this.interfaceTypes[this.random.Next(this.numberOfTypes)]);
     }
 }
        public void SetUp(int testIndex, IIOCContainer container)
        {
            this.count = this.CollectionCount(testIndex);

            this.interfaceTypes = new List <Type>();
            var i  = 0;
            var bt = TypeRandomizerHelper.BaseTypesInMSCorLib();

            foreach (var iimp in bt)
            {
                var iint = TypeRandomizerHelper.InterfaceForTypeInMSCorLib(iimp);
                if ((iint == null) || this.interfaceTypes.Contains(iint))
                {
                    continue;
                }

                this.interfaceTypes.Add(iint);
                container.RegisterType(iint, iimp);

                i++;
            }
            this.numberOfTypes = i;

            container.FinishRegistering();
        }
Пример #3
0
        private static IConferenceRoomService SetupChildContext(IIOCContainer child, string organizationId)
        {
            child.RegisterInstance <IContextService>(new CustomOrganizationContextService(organizationId,
                                                                                          child.Resolve <ITokenProvider>(), child.Resolve <ITokenService>(), child.Resolve <IDeviceRepository>(),
                                                                                          child.Resolve <IOrganizationRepository>()));
            var conferenceRoomService = child.Resolve <IConferenceRoomService>();

            return(conferenceRoomService);
        }
Пример #4
0
            public Watcher(IIOCContainer container, string organizationId, IBroadcastService broadcastService, IMeetingCacheService meetingCacheService)
            {
                _container           = container;
                _organizationId      = organizationId;
                _broadcastService    = broadcastService;
                _meetingCacheService = meetingCacheService;

                Task.Run(async() => await DoWork());  // don't wait for this to complete
            }
Пример #5
0
 public ErectDIContainer()
 {
     try
     {
         EstablishIOC establish = new EstablishIOC();
         Container = establish.EstablishContainer(new UnityDIFactory());
         establish.StandUp(Container);
     }
     catch (Exception ex)
     {
         throw new ApplicationException(ex.Message, ex);
     }
 }
Пример #6
0
        public void StandUp(IIOCContainer container) => container
        .Register <IImplementationTypeResolver, ImplementationTypeResolver>()
        .Register <IEnvelope, EnvelopeModel>()
        .Register <IEnvelopeFactory, EnvelopeFactory>()
        .Register <IChatMessageEnvelope, ChatMessageEnvelope>()
        .Register <IChatMessageEnvelopeFactory, ChatMessageEnvelopeFactory>()
        .Register <IMarshaller, Marshaller>()


        .Register <ITack, Tack>()
        .Register <IBoards, Boards>()
        .Register <ISkyWatch, SkyWatch>()
        .Register <IFileStorage, FileStorage>()
        .Register <IDataInMemoryCache <IEnvelope>, DataInMemoryCache <IEnvelope> >()
        .Register <ISQLDBConfigurationProvider, SQLDBConfigurationProvider>()
        .Register <ISQLDBConfiguration, SQLDBConfiguration>()

        ;
Пример #7
0
 public ExchangeRestChangeNotificationService(IBroadcastService broadcastService, IMeetingCacheService meetingCacheService, IIOCContainer container)
 {
     if (broadcastService == null)
     {
         throw new ArgumentNullException(nameof(broadcastService));
     }
     if (meetingCacheService == null)
     {
         throw new ArgumentNullException(nameof(meetingCacheService));
     }
     if (container == null)
     {
         throw new ArgumentNullException(nameof(container));
     }
     _broadcastService    = broadcastService;
     _meetingCacheService = meetingCacheService;
     _container           = container;
 }
Пример #8
0
        private static void TestSingleton(IIOCContainer container)
        {
            var data = new List <string> {
                "Hermine", "Edward", "Karen", "Ando"
            };

            var watch = System.Diagnostics.Stopwatch.StartNew();

            container.SetupForSingletonTest();
            for (var i = 0; i < Max; i++)
            {
                var obj = container.Resolve <IController>(new { users = data });
            }

            watch.Stop();
            var elapsedMs = watch.ElapsedMilliseconds;

            Console.WriteLine($"Container: {container.Name}, Singleton resolve time: {elapsedMs}ms");
        }
 public ExchangePushChangeNotificationService(IBroadcastService broadcastService, IMeetingCacheService meetingCacheService, IIOCContainer container, string connectionString, string topic, string subscription)
 {
     if (broadcastService == null)
     {
         throw new ArgumentNullException(nameof(broadcastService));
     }
     if (meetingCacheService == null)
     {
         throw new ArgumentNullException(nameof(meetingCacheService));
     }
     if (container == null)
     {
         throw new ArgumentNullException(nameof(container));
     }
     _broadcastService    = broadcastService;
     _meetingCacheService = meetingCacheService;
     _container           = container;
     _connectionString    = connectionString;
     _topic        = topic;
     _subscription = subscription;
 }
Пример #10
0
        private static async Task TestAsyncFunctionCall(IIOCContainer container)
        {
            var data = new List <string> {
                "Hermine", "Edward", "Karen", "Ando"
            };

            var watch = System.Diagnostics.Stopwatch.StartNew();

            //transient
            var obj = container.Resolve <IController>(new { users = data });

            for (var i = 0; i < Max / 100; i++)
            {
                //async method
                await obj.SaveUser($"Fredd{i}");
            }

            watch.Stop();
            var elapsedMs = watch.ElapsedMilliseconds;

            Console.WriteLine($"Container: {container.Name}, Async Method Call time: {elapsedMs}ms");
        }
Пример #11
0
        private static void TestFunctionCall(IIOCContainer container)
        {
            var data = new List <string> {
                "Hermine", "Edward", "Karen", "Ando"
            };

            var watch = System.Diagnostics.Stopwatch.StartNew();

            //transient
            var obj = container.Resolve <IController>(new { users = data });

            for (var i = 0; i < Max; i++)
            {
                //ordinary method
                obj.GetUserById(1);
            }

            watch.Stop();
            var elapsedMs = watch.ElapsedMilliseconds;

            Console.WriteLine($"Container: {container.Name}, Ordinary Method Call time: {elapsedMs}ms");
        }
Пример #12
0
        public void StandUp(IIOCContainer container) => container
        .Register <IModifyChatMessageService, ModifyChatMessageService>()
        .Register <IGetNextChatMessageService, GetNextChatMessageService>()
        .Register <IClientProxy, ClientProxy>()
        .Register <IServiceFarmLoadBalancer, ServiceFarmLoadBalancer>()
        .Register <IImplementationTypeResolver, ImplementationTypeResolver>()
        .Register <ITCPAvailablePortsService, TCPAvailablePortsService>()
        .Register <IEnvelope, EnvelopeModel>()
        .Register <IEnvelopeFactory, EnvelopeFactory>()
        .Register <IChatMessageEnvelope, ChatMessageEnvelope>()
        .Register <IChatMessageEnvelopeFactory, ChatMessageEnvelopeFactory>()
        .Register <IMarshaller, Marshaller>()
        .Register <ITransactionResult, TransactionResult>()
        .Register <ITransactionResultFactory, TransactionResultFactory>()


        .Register <IRoute <string>, Route <string> >()
        .Register <IRouteFactory <string>, RouteFactory <string> >()
        .Register <IMessageBus <string>, MessageBus <string> >()
        .Register <IMessageBusBank <string>, MessageBusBank <string> >()
        .Register <IRoutingTable <string>, RoutingTable <string> >()
        .Register <IRoutingService <string>, RoutingService <string> >()
        .Register <IMessageBusReaderBank <string>, MessageBusReaderBank <string> >()
        .Register <IMessageBusWriter <string>, MessageBusWriter <string> >()

        .Register <ITack, Tack>()
        .Register <IBoards, Boards>()
        .Register <ISkyWatch, SkyWatch>()
        .Register <IFileStorage, FileStorage>()
        .Register <IDataInMemoryCache <IEnvelope>, DataInMemoryCache <IEnvelope> >()
        .Register <ISQLDBConfigurationProvider, SQLDBConfigurationProvider>()
        .Register <ISQLDBConfiguration, SQLDBConfiguration>()



        ;
Пример #13
0
 public static void Initialize(IIOCContainer instance)
 {
     Instance = instance;
 }
Пример #14
0
 public ClientRoomController(IRoomMetadataRepository roomRepository, IIOCContainer container)
     : base(__log)
 {
     _roomRepository = roomRepository;
     _container      = container;
 }
Пример #15
0
 public Form1(IIOCContainer container)
     : this()
 {
     _filePathGetter = container.Resolve<IGetFilePath>();
     _packageRestoreRemover = container.Resolve<IRemoveNuGetPackageRestore>();
 }
Пример #16
0
 public MeetingCacheReloader(IIOCContainer rootContainer, OrganizationEntity org)
 {
     _rootContainer = rootContainer;
     _org           = org;
 }
Пример #17
0
 public MeetingCacheReloaderFactory(IIOCContainer rootContainer)
 {
     _rootContainer = rootContainer;
 }