Example #1
0
 /// <summary>
 /// Starts kernel. Initializes container and site of kernel.
 /// </summary>
 /// <param name="hostSite">The parent site this kernel should attach to.</param>
 public static void Run(ISite hostSite)
 {
     KernelServiceContainer serviceContainer = new KernelServiceContainer(hostSite);
     KernelContainer container = new KernelContainer(serviceContainer);
     KernelSite site = new KernelSite(serviceContainer, container);
     Kernel.site = site;
 }
Example #2
0
        private void Window_Loaded(object sender, RoutedEventArgs e)
        {
            //string token = settings.Token;
            //if (string.IsNullOrEmpty(token))
            //{
            //    token = acquireToken.GetToken();
            //    settings.Token = token;
            //}

            void boot()
            {
                // ----- App-Init
                KernelContainer kernelContainer = new KernelContainer();
                IKernel         kernel          = kernelContainer.Kernel;

                //Register CoCo.Core
                //Add Bootstrapper
                kernel.Register <IBootstrapper, Bootstrapper>(RegisterScope.Unique);

                //Register components
                new KernelInitializer().Initialize(kernel);

                //Activate components
                IBootstrapper bootstrapper = kernel.Get <IBootstrapper>();

                bootstrapper.ActivatingAll();
                bootstrapper.ActivatedAll();
                bootstrapper.RegisterAllMappings(kernel);

                this.bot = kernel.Get <IBot>();

                bot.Connected       += Bot_Connected;
                bot.MessageReceived += this.Bot_MessageReceived;

                bot.Connect("tarosmolos");
            };
            Task.Factory.StartNew(() => boot());

            ////using (IClient client = new Client())
            //{
            //    client.Connect("irc.chat.twitch.tv", 6697);
            //    client.Login("tarosmolos", token);
            //    //Channel channel = client.GetChannel("raupling");
            //}
        }
        public void Initialize(IContainerRegistry container, IContainerProvider provider)
        {
            var kernelContainer = new KernelContainer(container, provider);

            kernelContainer.Kernel.Register <ISqlLiteConnectionProvider, SqLiteFileConfiguration>(RegisterScope.Unique);

            //data
            kernelContainer.Kernel.RegisterComponent <SourceManagementComponentActivator>();


            //logic
            kernelContainer.Kernel.RegisterComponent <EntryManagementComponentActivator>();
            kernelContainer.Kernel.RegisterComponent <ItemManagementComponentActivator>();
            kernelContainer.Kernel.RegisterComponent <SourceManagementComponentActivator>();
            kernelContainer.Kernel.RegisterComponent <BillManagementComponentActivator>();
            kernelContainer.Kernel.RegisterComponent <ItemHistoryManagementComponentActivator>();

            kernelContainer.Kernel.RegisterComponent <ItemHistoryWorkflowComponentActivator>();
        }
Example #4
0
        internal IKernelContainer Load()
        {
            // Initialisation
            var         kernelContainer = new KernelContainer();
            ICoCoKernel kernel          = kernelContainer.Kernel;

            // Register CoCo.Core
            // Add Bootstrapper
            kernel.Register <IBootstrapper, Bootstrapper>(RegisterScope.Unique);
            // Add EventBroker
            kernel.Register <IEventBroker, EventBroker>(RegisterScope.Unique);
            // Add Configuration
            kernel.Register <IConfigurationRepository, DatabaseConfigurationRepository>();
            kernel.Register <IConfigurator, Configurator>(RegisterScope.Unique);
            kernel.Register <IConfigurationObjectProvider, ConfigurationObjectProvider>();

            //Register components
            new KernelInitializer().Initialize(kernel);

            var currentDirectory = Directory.GetCurrentDirectory();
            var configurator     = kernel.Get <IConfigurator>();

            configurator.Set("DataStoring", "RootPath", currentDirectory);

            //Activate components
            var bootstrapper = kernel.Get <IBootstrapper>();

            bootstrapper.ActivatingAll();
            bootstrapper.ActivatedAll();
            bootstrapper.RegisterAllMappings(kernel);

            var eventBroker = kernel.Get <IEventBroker>();

            eventBroker.SetResolverCallback(t => kernel.Get(t));
            bootstrapper.AddAllMessageSubscriptions(eventBroker);

            return(kernelContainer);
        }
Example #5
0
        static void Main(string[] args)
        {
            // ----- App-Init
            var kernelContainer = new KernelContainer();
            var kernel          = kernelContainer.Kernel;

            //Register CoCo.Core
            //Add Bootstrapper
            kernel.Register <IBootstrapper, Bootstrapper>(RegisterScope.Unique);
            //Add EventBroker
            kernel.Register <IEventBroker, EventBroker>(RegisterScope.Unique);
            //Add Configuration
            kernel.Register <IConfigurationRepository, DatabaseConfigurationRepository>();
            kernel.Register <IConfigurator, Configurator>(RegisterScope.Unique);
            kernel.Register <IConfigObjectProvider, ConfigObjectProvider>();

            //Register components
            new KernelInitializer().Initialize(kernel);

            var currentDirectory = Directory.GetCurrentDirectory();
            var configurator     = kernel.Get <IConfigurator>();

            configurator.Set("Persons", "AgeThreshold", 18);
            configurator.Set("DataStoring", "RootPath", currentDirectory);

            //Activate components
            var bootstrapper = kernel.Get <IBootstrapper>();

            bootstrapper.ActivatingAll();
            bootstrapper.ActivatedAll();
            bootstrapper.RegisterAllMappings(kernel);

            var eventBroker = kernel.Get <IEventBroker>();

            eventBroker.SetResolverCallback(t => kernel.Get(t));
            bootstrapper.AddAllMessageSubscriptions(eventBroker);

            // ----- Program
            var manager = kernel.Get <IPersonManager>();

            var adults   = manager.GetAllAdults().ToList();
            var children = manager.GetAllChildren().ToList();

            var fuchsi = new Person
            {
                Name = "Fuchsi",
                Age  = 17
            };

            manager.Add(fuchsi);

            fuchsi.Age = 10;
            manager.Update(fuchsi);

            manager.Remove(fuchsi);

            Console.WriteLine($"### Erwachsene ({adults.Count}) ###");
            foreach (var adult in adults)
            {
                Console.WriteLine(adult.Name);
            }

            Console.WriteLine($"### Kinder ({children.Count}) ###");
            foreach (var child in children)
            {
                Console.WriteLine(child.Name);
            }

            bootstrapper.DeactivatingAll();
            bootstrapper.DeactivatedAll();
        }
Example #6
0
 public void Process(LoadLayoutArgs args)
 {
     KernelContainer.Inject(this);
     this.DoProcess(args);
 }
Example #7
0
 public override void Process(GetChromeDataArgs args)
 {
     KernelContainer.Inject(this);
     this.DoGetChromeData(args);
 }
 public void Process(RenderFieldArgs args)
 {
     KernelContainer.Inject(this);
     this.DoRenderField(args);
 }
 public override void Process(HttpRequestArgs args)
 {
     KernelContainer.Inject(this);
     this.DoProcessRequest(args);
 }
 public new void Process(GetPlaceholderRenderingsArgs args)
 {
     KernelContainer.Inject(this);
     this.DoGetAllowedRenderingsa(args);
 }
 public void Process(GetRenderingDatasourceArgs args)
 {
     KernelContainer.Inject(this);
     this.DoGetRenderingDatasource(args);
 }
 /// <summary>
 /// Asks the kernel to inject this instance.
 /// </summary>
 protected virtual void RequestActivation()
 {
     KernelContainer.Inject(this);
 }
 public void Process(GetContentEditorFieldsArgs args)
 {
     KernelContainer.Inject(this);
     this.DoProcess(args);
 }