public ConfigurationQueryBuilder(
     IPluginConfigurationStore pluginConfigurationStore,
     IPluginManager pluginManager)
 {
     this.PluginConfigurationStore = pluginConfigurationStore;
     //this.GameConfigurationStore = gameConfigurationStore;
     this.PluginManager = pluginManager;
 }
예제 #2
0
 public PluginManager(ILogProvider logProvider,
                      IContentDirectoryProvider contentDirectory,
                      IPluginConfigurationStore databaseProvider)
 {
     this.logProvider        = logProvider;
     this.contentDirectory   = contentDirectory;
     this.loadedPlugins      = new Dictionary <Type, IImmutableList <IPlugin> >();
     this.configurationStore = databaseProvider;
 }
예제 #3
0
        private bool disposedValue = false; // To detect redundant calls

        /// <summary>
        /// Initializes the default plugin manager.
        /// </summary>
        /// <param name="logProvider">The logging provider.</param>
        /// <param name="contentDirectory">The content directory provider.</param>
        /// <param name="databaseProvider">The plugin configuration store.</param>
        /// <param name="rootFs">The root file system used to create new subfilesystems.</param>
        public PluginManager(ILogProvider logProvider,
            IContentDirectoryProvider contentDirectory,
            IPluginConfigurationStore databaseProvider,
            IFileSystem rootFs)
        {
            this.logProvider = logProvider;
            this.contentDirectory = contentDirectory;
            this.loadedPlugins = new Dictionary<Type, IImmutableList<IPlugin>>();
            this.configurationStore = databaseProvider;
            this.rootFs = rootFs;
            this.Logger = this.logProvider.GetLogger("PluginManager");
            this.jsonSerializerOptions = new JsonSerializerOptions();
            this.jsonSerializerOptions.Converters.Add(new PluginPropertiesConverter());
        }
예제 #4
0
 public PluginProvision(ILogger logger,
                        IPluginProperties pluginProperties,
                        IPluginConfigurationStore configurationStore,
                        string name,
                        string author,
                        string description,
                        Version version,
                        DirectoryInfo contentDirectory,
                        DirectoryInfo commonResourceDirectory,
                        DirectoryInfo resourceDirectory)
 {
     this.Logger                  = logger;
     this.Properties              = pluginProperties;
     this.Name                    = name;
     this.Author                  = author;
     this.Description             = description;
     this.Version                 = version;
     this.ConfigurationStore      = configurationStore;
     this.ContentDirectory        = contentDirectory;
     this.ResourceDirectory       = resourceDirectory;
     this.CommonResourceDirectory = commonResourceDirectory;
 }