Ejemplo n.º 1
0
        /// <summary>
        /// Registers the avalonia services.
        /// </summary>
        /// <param name="container">The container.</param>
        private void RegisterAvaloniaServices(Container container)
        {
            var viewFetcher  = new AvaloniaActivationForViewFetcher();
            var dataTemplate = new AutoDataTemplateBindingHook();

            Locator.CurrentMutable.RegisterConstant(viewFetcher, typeof(IActivationForViewFetcher));
            Locator.CurrentMutable.RegisterConstant(dataTemplate, typeof(IPropertyBindingHook));
            container.RegisterInstance <IActivationForViewFetcher>(viewFetcher);
            container.RegisterInstance <IPropertyBindingHook>(dataTemplate);
            Avalonia.Logging.Logger.Sink = new AvaloniaLogger();
        }
Ejemplo n.º 2
0
        public static void RegisterTypes(SimpleInjector.Container container, string database)
        {
            container.Register <DialogEngine>();
            container.RegisterInstance <IServiceProvider>(container);

            container.RegisterSingleton <IApiAiAppServiceFactory, ApiAiAppServiceFactory>();
            container.RegisterSingleton <IHttpClientFactory, HttpClientFactory>();
            container.RegisterSingleton <ISolicitud, SolicitudManager>();
            container.RegisterSingleton <IIntencion, IntencionManager>();
            container.RegisterSingleton <ISesion, SesionManager>();

            container.RegisterSingleton <IChatLog, ChatLogManager>();
            container.RegisterSingleton <ICurso, CursoManager>();
            container.RegisterSingleton <IActividad, ActividadManager>();

            if (database.Equals("ORACLE"))
            {
                container.Register <ISesionData, Upecito.Data.Oracle.Implementacion.SesionData>();
                container.Register <ISolicitudData, Upecito.Data.Oracle.Implementacion.SolicitudData>();
                container.Register <IIntencionData, Upecito.Data.Oracle.Implementacion.IntencionData>();
            }

            if (database.Equals("MSSQLSERVER"))
            {
                container.Register <ISesionData, Upecito.Data.MSSQLSERVER.Implementacion.SesionData>();
                container.Register <ISolicitudData, Upecito.Data.MSSQLSERVER.Implementacion.SolicitudData>();
                container.Register <IIntencionData, Upecito.Data.MSSQLSERVER.Implementacion.IntencionData>();
                container.Register <IChatLogData, Upecito.Data.MSSQLSERVER.Implementacion.ChatLogData>();
                container.Register <ICursoData, Upecito.Data.MSSQLSERVER.Implementacion.CursoData>();
                container.Register <IActividadData, Upecito.Data.MSSQLSERVER.Implementacion.ActividadData>();
            }
        }
Ejemplo n.º 3
0
        public static ICommandProcessor Create(TypiconDBContext dbContext)
        {
            var container = new SimpleInjector.Container();

            container.Register <ITypiconSerializer, TypiconSerializer>();

            container.RegisterTypiconCommandClasses();

            container.RegisterInstance(dbContext);

            var processor = container.GetInstance <ICommandProcessor>();

            return(processor);
        }
        public static IQueryProcessor Create(TypiconDBContext dbContext)
        {
            var container = new SimpleInjector.Container();

            container.Register <ITypiconSerializer, TypiconSerializer>();
            container.RegisterSingleton <IJobRepository>(() => new JobRepository());

            container.Register(typeof(IQueryHandler <,>), typeof(QueryProcessor).Assembly, typeof(TypiconEntityModel).Assembly);
            container.Register <IQueryProcessor, QueryProcessor>();

            container.RegisterInstance(dbContext);

            var processor = container.GetInstance <IQueryProcessor>();

            return(processor);
        }
Ejemplo n.º 5
0
        public static ICommandProcessor CreateJobProcessor(TypiconDBContext dbContext, JobRepository jobRepository)
        {
            var container = new SimpleInjector.Container();

            container.Register <ITypiconSerializer, TypiconSerializer>();

            container.Register(typeof(ICommandHandler <>), typeof(MajorDataCalculator).Assembly);
            container.Register <IRuleHandlerSettingsFactory, RuleHandlerSettingsFactory>();
            container.Register <IScheduleDayNameComposer, ScheduleDayNameComposer>();
            container.Register <IRuleSerializerRoot, RuleSerializerRoot>();
            //container.Register<IOutputForms, OutputForms>();
            container.Register <IOutputDayFactory, OutputDayFactory>();

            container.Register <IScheduleDataCalculator, MajorDataCalculator>();
            container.RegisterDecorator(
                typeof(IScheduleDataCalculator),
                typeof(TransparentDataCalculator));

            container.RegisterDecorator(
                typeof(IScheduleDataCalculator),
                typeof(AsAdditionDataCalculator));

            container.RegisterDecorator(
                typeof(IScheduleDataCalculator),
                typeof(ExplicitDataCalculator));


            container.Register(typeof(IQueryHandler <,>), typeof(QueryProcessor).Assembly, typeof(TypiconEntityModel).Assembly);
            container.Register <IQueryProcessor, DataQueryProcessor>();

            container.RegisterSingleton(typeof(IJobRepository), jobRepository);

            container.RegisterTypiconCommandClasses();

            container.RegisterInstance(dbContext);

            var processor = container.GetInstance <ICommandProcessor>();

            return(processor);
        }
Ejemplo n.º 6
0
        static Program()
        {
            var storageEnv    = Environment.ExpandEnvironmentVariables($"%{StorageEnv}%");
            var globalContext = new GlobalContext
            {
                StoragePath = storageEnv,
                SymlinkPath = Path.Combine(storageEnv, "current"),
                Is64Bit     = Environment.Is64BitOperatingSystem
            };

            globalContext.ActiveVersionTrackerFilePath = Path.Combine(globalContext.StoragePath, "last-used");

            Container = new Container();
            Container.RegisterInstance(globalContext);
            Container.RegisterSingleton <NodeJsWebApi>();
            Container.RegisterSingleton <NodeJs>();
            Container.RegisterSingleton <AvailCommand>();
            Container.RegisterSingleton <ListCommand>();
            Container.RegisterSingleton <InstallCommand>();
            Container.RegisterSingleton <UninstallCommand>();
            Container.RegisterSingleton <UseCommand>();
            Container.Verify();
        }
Ejemplo n.º 7
0
        private App()
        {
            if (!Debugger.IsAttached)
            {
                AppDomain.CurrentDomain.UnhandledException += CurrentDomain_UnhandledException;
            }

            _mutex = new Mutex(false, $"h3x4d3c1m4l BrightLight - {Environment.UserName}", out bool createdNew);
            if (!createdNew)
            {
                // app already running
                MessageBox.Show("BrightLight is already running!", "BrightLight - Already running", MessageBoxButton.OK, MessageBoxImage.Information);
                Environment.Exit(0);
            }

            InitializeComponent();
            AppBuilder.Configure <AvaloniaApp>().UseWin32().UseDirect2D1().SetupWithoutStarting();

            var test = new SearchWindow(new MainViewModel(new RunUsingWpfDispatcherHelper(Dispatcher)));

            Container = new Container();
            Container.RegisterInstance(Dispatcher);
            Container.RegisterSingleton <IRunOnUiThreadHelper, RunUsingWpfDispatcherHelper>();
            Container.RegisterSingleton <MainViewModel>();
            Container.RegisterSingleton <SettingsViewModel>();
            Container.RegisterSingleton <SearchWindow>();
            Container.RegisterSingleton <SettingsWindow>();
            Container.RegisterSingleton <TaskbarIcon>();
            Container.RegisterSingleton(() => Settings.LoadOrDefault());
            Container.Verify();

            _showHotKey = new HotKey(Key.Space, KeyModifier.Ctrl | KeyModifier.Shift, key =>
            {
                Container.GetInstance <MainViewModel>().Reset();
                Container.GetInstance <SearchWindow>().Show();
            });
        }