示例#1
0
        public void AddPlugins(PluginPackage pluginPackage)
        {
            var plugin = new DTOs.AddPluginDTO
            {
                Name        = pluginPackage.Configuration.Name,
                DisplayName = pluginPackage.Configuration.DisplayName,
                PluginId    = Guid.NewGuid(),
                UniqueKey   = pluginPackage.Configuration.UniqueKey,
                Version     = pluginPackage.Configuration.Version
            };

            _unitOfWork.PluginRepository.AddPlugin(plugin);
            _unitOfWork.Commit();

            var versions = pluginPackage.GetAllMigrations(_connectionString);

            foreach (var version in versions)
            {
                version.MigrationUp(plugin.PluginId);
            }
        }
示例#2
0
        private void InitializePlugin(PluginPackage pluginPackage)
        {
            DTOs.AddPluginDTO plugin = new DTOs.AddPluginDTO
            {
                Name        = pluginPackage.Configuration.Name,
                DisplayName = pluginPackage.Configuration.DisplayName,
                UniqueKey   = pluginPackage.Configuration.UniqueKey,
                Version     = pluginPackage.Configuration.Version
            };

            _unitOfWork.PluginRepository.AddPlugin(plugin);
            _unitOfWork.Commit();

            List <IMigration> versions = pluginPackage.GetAllMigrations(_connectionString);

            foreach (IMigration version in versions)
            {
                version.MigrateUp(plugin.PluginId);
            }

            pluginPackage.SetupFolder();
        }