Пример #1
0
 public void ConfigureServices(IOpenModServiceConfigurationContext openModStartupContext, IServiceCollection serviceCollection)
 {
     serviceCollection.Configure <PermissionCheckerOptions>(options =>
     {
         options.AddPermissionCheckProvider <ConsolePermissionProvider>();
     });
 }
Пример #2
0
        public void ConfigureServices(IOpenModServiceConfigurationContext openModStartupContext, IServiceCollection serviceCollection)
        {
            serviceCollection.Configure <PermissionCheckerOptions>(options =>
            {
                options.AddPermissionCheckProvider <DefaultPermissionCheckProvider>();
                options.AddPermissionCheckProvider <ConsolePermissionProvider>();
                options.AddPermissionSource <DefaultPermissionStore>();
            });

            serviceCollection.Configure <CommandStoreOptions>(options =>
            {
                var logger = openModStartupContext.LoggerFactory.CreateLogger <OpenModComponentCommandSource>();
                options.AddCommandSource(new OpenModComponentCommandSource(logger, openModStartupContext.Runtime, GetType().Assembly));
            });

            serviceCollection.Configure <UserManagerOptions>(options =>
            {
                options.AddUserProvider <OfflineUserProvider>();
            });

            serviceCollection.Configure <CommandParameterResolverOptions>(options =>
            {
                options.AddCommandParameterResolveProvider <TypeDescriptorCommandParameterResolveProvider>();
                options.AddCommandParameterResolveProvider <UserCommandParameterResolveProvider>();
                options.AddCommandParameterResolveProvider <TimeSpanCommandParameterResolveProvider>();
            });

            serviceCollection.AddTransient <IStringLocalizerFactory, ConfigurationBasedStringLocalizerFactory>();
            serviceCollection.AddTransient(typeof(IPluginAccessor <>), typeof(PluginAccessor <>));
            serviceCollection.AddSingleton <IAutoCompleteHandler, CommandAutoCompleteHandler>();
        }
Пример #3
0
        public void ConfigureServices(IOpenModServiceConfigurationContext openModStartupContext,
                                      IServiceCollection serviceCollection)
        {
            serviceCollection.AddEconomyStub();

            serviceCollection.Configure <KitDatabaseOptions>(x =>
            {
                x.AddProvider <DataStoreKitDatabase>();
                x.AddProvider <MySqlKitDatabase>();
            });
        }
Пример #4
0
        public void ConfigureServices(IOpenModServiceConfigurationContext openModStartupContext, IServiceCollection serviceCollection)
        {
            // serviceCollection.Configure<CommandStoreOptions>(options =>
            // {
            //     options.AddCommandSource<RustCommandSource>();
            // });

            // serviceCollection.Configure<UserManagerOptions>(options =>
            // {
            //     options.AddUserProvider<RustUserProvider>();
            // });

            // serviceCollection.AddSingleton<RustCommandHandler>();
        }
Пример #5
0
 public OpenModStartup(IOpenModServiceConfigurationContext openModStartupContext)
 {
     Context = openModStartupContext;
     m_NuGetPackageManager = ((OpenModStartupContext)openModStartupContext).NuGetPackageManager;
     m_Logger               = openModStartupContext.LoggerFactory.CreateLogger <OpenModStartup>();
     m_Runtime              = openModStartupContext.Runtime;
     m_Assemblies           = new HashSet <Assembly>(new AssemblyEqualityComparer());
     m_ServiceRegistrations = new List <ServiceRegistration>();
     m_RegisteredAssemblies = new HashSet <AssemblyName>();
     m_PluginAssemblyStore  =
         new PluginAssemblyStore(openModStartupContext.LoggerFactory.CreateLogger <PluginAssemblyStore>(),
                                 m_NuGetPackageManager);
     m_PluginAssembliesSources = new List <IPluginAssembliesSource>();
 }
Пример #6
0
        public void ConfigureServices(IOpenModServiceConfigurationContext openModStartupContext, IServiceCollection serviceCollection)
        {
            // bug: UnityEngine service configurator doesn't get called
            serviceCollection.AddSingleton <IHostLifetime, UnityHostLifetime>();

            serviceCollection.Configure <PermissionCheckerOptions>(options =>
            {
                options.AddPermissionCheckProvider <UnturnedAdminPermissionCheckProvider>();
            });

            serviceCollection.Configure <CommandStoreOptions>(options =>
            {
                options.AddCommandSource <UnturnedCommandSource>();
            });

            serviceCollection.Configure <UserManagerOptions>(options =>
            {
                options.AddUserProvider <UnturnedUserProvider>();
            });

            serviceCollection.AddSingleton <UnturnedCommandHandler>();
        }
Пример #7
0
        public void ConfigureServices(IOpenModServiceConfigurationContext openModStartupContext, IServiceCollection serviceCollection)
        {
            serviceCollection.Configure <PermissionCheckerOptions>(options =>
            {
                options.AddPermissionCheckProvider <UnturnedAdminPermissionCheckProvider>();
            });

            serviceCollection.Configure <CommandStoreOptions>(options =>
            {
                options.AddCommandSource <UnturnedCommandSource>();
            });

            serviceCollection.Configure <UserManagerOptions>(options =>
            {
                options.AddUserProvider <UnturnedUserProvider>();
            });

            serviceCollection.Configure <CommandParameterResolverOptions>(options =>
            {
                options.AddCommandParameterResolveProvider <UnturnedPlayerCommandParameterResolveProvider>();
            });

            if (RocketModIntegration.IsRocketModInstalled())
            {
                // todo: check direction for permission link from config

                serviceCollection.Configure <PermissionCheckerOptions>(options =>
                {
                    options.AddPermissionSource <RocketPermissionStore>();
                });

                serviceCollection.AddTransient <IPermissionRoleStore, RocketPermissionRoleStore>();
            }

            serviceCollection.AddSingleton <UnturnedCommandHandler>();
        }
Пример #8
0
        public void ConfigureServices(IOpenModServiceConfigurationContext openModStartupContext, IServiceCollection serviceCollection)
        {
            serviceCollection.Configure <PermissionCheckerOptions>(options =>
            {
                options.AddPermissionCheckProvider <UnturnedAdminPermissionCheckProvider>();
            });

            serviceCollection.Configure <CommandStoreOptions>(options =>
            {
                options.AddCommandSource <UnturnedCommandSource>();
            });

            serviceCollection.Configure <UserManagerOptions>(options =>
            {
                options.AddUserProvider <UnturnedUserProvider>();
            });

            serviceCollection.Configure <CommandParameterResolverOptions>(options =>
            {
                options.AddCommandParameterResolveProvider <UnturnedPlayerCommandParameterResolveProvider>();
            });

            serviceCollection.AddSingleton <UnturnedCommandHandler>();
        }
Пример #9
0
 public void ConfigureServices(IOpenModServiceConfigurationContext openModStartupContext, IServiceCollection serviceCollection)
 {
     // bug: this method doesn't get called
     serviceCollection.AddSingleton <IHostLifetime, UnityHostLifetime>();
 }
 public void ConfigureServices(IOpenModServiceConfigurationContext openModStartupContext, IServiceCollection serviceCollection)
 {
     serviceCollection.AddTransient <ILoggerFactory, LoggerFactoryProxy>();
     // serviceCollection.AddTransient(typeof(ILogger<>), typeof(LoggerProxy<>));
 }
Пример #11
0
        public void ConfigureServices(IOpenModServiceConfigurationContext openModStartupContext, IServiceCollection serviceCollection)
        {
            var unturnedConfiguration = new OpenModUnturnedConfiguration(openModStartupContext.Runtime.WorkingDirectory);

            serviceCollection.AddSingleton <IOpenModUnturnedConfiguration>(unturnedConfiguration);
            serviceCollection.AddSingleton <IGameHostInformation, UnturnedHostInformation>();

            serviceCollection.Configure <PermissionCheckerOptions>(options =>
            {
                options.AddPermissionCheckProvider <UnturnedAdminPermissionCheckProvider>();
            });

            serviceCollection.Configure <CommandStoreOptions>(options =>
            {
                options.AddCommandSource <UnturnedCommandSource>();
                var logger = openModStartupContext.LoggerFactory.CreateLogger <OpenModComponentCommandSource>();
                var host   = openModStartupContext.Runtime.LifetimeScope.Resolve <IOpenModHost>();
                options.AddCommandSource(new OpenModComponentCommandSource(logger, host, typeof(OpenModUnturnedHost).Assembly));
            });

            serviceCollection.Configure <UserManagerOptions>(options =>
            {
                options.AddUserProvider <UnturnedUserProvider>();
            });

            serviceCollection.Configure <CommandParameterResolverOptions>(options =>
            {
                options.AddCommandParameterResolveProvider <UnturnedPlayerCommandParameterResolveProvider>();
                options.AddCommandParameterResolveProvider <UnturnedLocationCommandParameterResolveProvider>();
                options.AddCommandParameterResolveProvider <CSteamIDCommandParameterResolveProvider>();
            });

            if (RocketModIntegration.IsRocketModInstalled())
            {
                serviceCollection.AddSingleton <IRocketModComponent, RocketModComponent>();

                var permissionSystem = unturnedConfiguration.Configuration
                                       .GetSection("rocketmodIntegration:permissionSystem")
                                       .Get <string>();

                if (permissionSystem.Equals("RocketMod", StringComparison.OrdinalIgnoreCase))
                {
                    serviceCollection.Configure <PermissionCheckerOptions>(options =>
                    {
                        options.AddPermissionSource <RocketPermissionStore>();
                        options.AddPermissionCheckProvider <RocketCooldownPermissionCheckProvider>();
                    });

                    serviceCollection.AddTransient <IPermissionRoleStore, RocketPermissionRoleStore>();
                }

                var economySystem = unturnedConfiguration.Configuration
                                    .GetSection("rocketmodIntegration:economySystem")
                                    .Get <string>();

                if (economySystem.Equals("RocketMod_Uconomy", StringComparison.OrdinalIgnoreCase))
                {
                    if (UconomyIntegration.IsUconomyInstalled())
                    {
                        serviceCollection.AddSingleton <IEconomyProvider, UconomyEconomyProvider>();
                    }
                    else
                    {
                        var logger = openModStartupContext.LoggerFactory.CreateLogger <RocketModIntegration>();
                        logger.LogWarning("Economy system was set to RocketMod_Uconomy but Uconomy is not installed. Defaulting to Separate");
                    }
                }
            }

            serviceCollection.AddSingleton <UnturnedCommandHandler>();
        }
Пример #12
0
 public void ConfigureServices(IOpenModServiceConfigurationContext openModStartupContext, IServiceCollection serviceCollection)
 {
     // todo
 }
Пример #13
0
 public void ConfigureServices(IOpenModServiceConfigurationContext openModStartupContext, IServiceCollection serviceCollection)
 {
     serviceCollection.AddSingleton <IHostLifetime, UnityHostLifetime>();
 }