Пример #1
0
        public static void Init(IShinyStartup startup = null, IShinyModule platformModule = null)
        => InitPlatform(startup, services =>
        {
            services.TryAddSingleton <IEnvironment, EnvironmentImpl>();
            services.TryAddSingleton <IConnectivity, ConnectivityImpl>();
            services.TryAddSingleton <IPowerManager, PowerManagerImpl>();
            services.TryAddSingleton <IFileSystem, FileSystemImpl>();
            services.TryAddSingleton <ISettings, SettingsImpl>();
            services.TryAddSingleton <UwpContext>();

            services.TryAddSingleton <IJobManager, JobManager>();
            services.TryAddSingleton <IBackgroundTaskProcessor, JobBackgroundTaskProcessor>();

            if (platformModule != null)
            {
                services.RegisterModule(platformModule);
            }

            Dehydrate(STARTUP_KEY, startup);
            Dehydrate(MODULE_KEY, platformModule);
        });
Пример #2
0
 /// <summary>
 /// Register a module (like a category) of services
 /// </summary>
 /// <param name="services"></param>
 /// <param name="module"></param>
 public static void RegisterModule(this IServiceCollection services, IShinyModule module)
 {
     module.Register(services);
     services.RegisterPostBuildAction(module.OnContainerReady);
 }
Пример #3
0
 public InternalShinyStartup(IShinyModule module)
 => this.module = module;