public MigrateManager(ImportPlan plan)
        {
            Plan           = plan;
            SourceDatabase = new PanelDatabase();
            LoadVariations();

            Api = new ApiClient(plan.Destination.ApiKey,
                                plan.Destination.ApiHost,
                                plan.Destination.ApiPort,
                                plan.Destination.UseHttps,
                                generatePassword: plan.MiscGeneratePassword);
        }
        public void LoadInstalledPanel(PanelTypes panelType, PanelDatabase sourceDatabase)
        {
            var variation = variationList.Where(m => m.Item1 == panelType && m.Item2 == sourceDatabase.Provider).FirstOrDefault();

            if (variation != null)
            {
                PanelType    = variation.Item1;
                CurrentPanel = variation.Item4;

                PanelData = variation.Item3;
                PanelData.LoadConnectionString(sourceDatabase.ConnectionString());
            }
            else
            {
                throw new Exception(String.Format("Panel not supported: {0} - {1}", panelType, sourceDatabase.Provider));
            }
        }
 public MigrateManager()
 {
     Plan           = new ImportPlan();
     SourceDatabase = new PanelDatabase();
     LoadVariations();
 }