Ejemplo n.º 1
0
        private bool CheckUpdaters()
        {
            List <string> notLoadedUpdaters = new List <string>();

            for (int i = 0; i < package.DataUpdaters.Count; i++)
            {
                IPlugin_DataUpdater dataUpdater = package.DataUpdaters[i].DataUpdater;
                if (dataUpdater == null)
                {
                    notLoadedUpdaters.Add(package.DataUpdaters[i].Name);
                }
            }
            if (notLoadedUpdaters.Count == 0)
            {
                return(true);
            }
            String msg = "";

            for (int i = 0; i < notLoadedUpdaters.Count; i++)
            {
                if (i != 0)
                {
                    msg += ";";
                }
                msg += notLoadedUpdaters[i];
            }
            MessageBox.Show("以下更新器未正确装载:" + msg);
            return(false);
        }
Ejemplo n.º 2
0
        public FormPrepareHistoryData(IPlugin_DataUpdater dataPreparer)
        {
            this.dataPreparer = dataPreparer;
            InitializeComponent();

            List <PreparerArgument> arguments = dataPreparer.GetAllArguments();

            tableLayoutPanel1.RowCount = arguments.Count;

            for (int i = 0; i < arguments.Count; i++)
            {
                PreparerArgument arg = arguments[i];
                Label            lb  = new Label();
                lb.Text = arg.Name;
                TextBox tb = new TextBox();
                tb.Text     = arg.Value;
                tb.ReadOnly = true;

                tableLayoutPanel1.Controls.Add(lb);
                tableLayoutPanel1.SetRow(lb, i);
                tableLayoutPanel1.SetColumn(lb, 0);
                tableLayoutPanel1.Controls.Add(tb);
                tableLayoutPanel1.SetRow(tb, i);
                tableLayoutPanel1.SetColumn(tb, 1);
            }

            this.Height = arguments.Count * 40 + 70;
        }
Ejemplo n.º 3
0
 public SingleUpdateHelper(IPlugin_DataUpdater dataUpdater, ProgressBar progress)
 {
     this.dataUpdater                 = dataUpdater;
     this.progressBar1                = progress;
     this.executor                    = new UpdateExecutor(dataUpdater.PluginHelper);
     this.executor.AfterFinished     += Executor_AfterFinished;
     this.executor.AfterStepFinished += Executor_AfterStepFinished;
     this.executor.AfterStepBegin    += Executor_AfterStepBegin;
 }
Ejemplo n.º 4
0
        private IPlugin_DataUpdater GetDataUpdater(DataUpdaterConfigInfo updaterInfo)
        {
            if (updaterInfo.pluginName != null && updaterInfo.pluginName != "")
            {
                IPluginMgr pluginMgr  = PluginMgrFactory.DefaultPluginMgr;
                PluginInfo pluginInfo = pluginMgr.GetPlugin(updaterInfo.PluginName);
                if (pluginInfo != null)
                {
                    IPlugin_DataUpdater dataUpdater = pluginMgr.GetPluginObject <IPlugin_DataUpdater>(pluginInfo);
                    foreach (string key in dic_Arguments.Keys)
                    {
                        dataUpdater.SetValue(key, dic_Arguments[key]);
                    }
                    return(dataUpdater);
                }
                LogHelper.Warn(GetType(), "数据更新配置:‘" + updaterInfo.name + "’配置的更新插件" + updaterInfo.pluginName + "找不到对应插件");
            }

            string clsName = updaterInfo.ClassName;

            if (clsName != null && clsName != "")
            {
                Type type = Type.GetType(clsName);
                if (type == null)
                {
                    LogHelper.Warn(GetType(), "");
                }
                IPlugin_DataUpdater dataUpdater = (IPlugin_DataUpdater)Activator.CreateInstance(type);
                foreach (string key in dic_Arguments.Keys)
                {
                    dataUpdater.SetValue(key, dic_Arguments[key]);
                }
                return(dataUpdater);
            }
            LogHelper.Warn(GetType(), "数据更新配置:‘" + updaterInfo.name + "’没有配置任何更新类");
            return(null);
        }
Ejemplo n.º 5
0
        private void DoUpdate(IPlugin_DataUpdater updater)
        {
            UpdateExecutor executor = new UpdateExecutor(updater.PluginHelper);

            executor.Update();
        }