public List <string> LoadSourceToStore(string dbFile, string sourcePath, DlcSourceType sourceType, DlcLoadPolicy loadPolicy)
 {
     using (var db = new LiteDatabase(dbFile))
     {
         var factory         = LoadingOracle.GetDefaultLoadCoordinatorFactory();
         var loadCoordinator = factory.CreateLoadCoordinator(sourceType);
         return(loadCoordinator.LoadSourceToDatabase(sourcePath, db, loadPolicy));
     }
 }
        public ILoadCoordinator CreateLoadCoordinator(DlcSourceType sourceType)
        {
            switch (sourceType)
            {
            case DlcSourceType.Official:
                return(CreateOfficialDlcCoordinator());

            case DlcSourceType.DlcTuning:
                return(CreateDlcTuningCoordinator());

            case DlcSourceType.Purchased:
                return(CreatePurchasedDlcCoordinator());

            case DlcSourceType.Steam:
                return(CreateSteamDlcCoordinator());
            }

            throw new ApplicationException("Unsupported source type " + sourceType);
        }