예제 #1
0
파일: Program.cs 프로젝트: spapaseit/qoam
        public static JournalTocsFetchMode? GetFetchMode(JournalsImportSource source, IList<string> args)
        {
            if(source != JournalsImportSource.JournalTOCs || args.Count < 2)
                return null;

            return (JournalTocsFetchMode) Enum.Parse(typeof(JournalTocsFetchMode), args[1], true);
        }
예제 #2
0
        public static JournalTocsFetchMode?GetFetchMode(JournalsImportSource source, IList <string> args)
        {
            if (source != JournalsImportSource.JournalTOCs || args.Count < 2)
            {
                return(null);
            }

            return((JournalTocsFetchMode)Enum.Parse(typeof(JournalTocsFetchMode), args[1], true));
        }
예제 #3
0
        private static void ImportJournals(JournalsImportSource importSource, JournalsImportMode importMode)
        {
            Logger.Info("Import source: {0}", importSource);
            Logger.Info("Import mode: {0}", importMode);
            Logger.Info("Importing journals...");

            var importResult = container.Resolve <JournalsImport>().ImportJournals(GetJournalsToImport(importSource), importMode);

            Logger.Info("Imported {0} journals total", importResult.NumberOfImportedJournals);
            Logger.Info("mported {0} new journals", importResult.NumberOfNewJournals);
        }
예제 #4
0
        private static void ImportJournals(JournalsImportSource importSource, JournalsImportMode importMode)
        {
            Logger.Info("Import source: {0}", importSource);
            Logger.Info("Import mode: {0}", importMode);
            Logger.Info("Importing journals...");

            var importResult = container.Resolve<JournalsImport>().ImportJournals(GetJournalsToImport(importSource), importMode);

            Logger.Info("Imported {0} journals total", importResult.NumberOfImportedJournals);
            Logger.Info("mported {0} new journals", importResult.NumberOfNewJournals);
        }
예제 #5
0
        public void GetImportModeWithEmptyArgsReturnsInsertOnlyJournalsImportModeForDoajAndUlrichs(JournalsImportSource source)
        {
            // Arrange
            var args = new List<string>();

            // Act
            var journalsImportMode = Program.GetImportMode(source, args);

            // Assert
            Assert.Equal(JournalsImportMode.InsertOnly, journalsImportMode);
        }
예제 #6
0
 private static IList<Journal> GetJournalsToImport(JournalsImportSource importSource)
 {
     switch (importSource)
     {
         case JournalsImportSource.DOAJ:
             return container.Resolve<DoajImport>().GetJournals();
         case JournalsImportSource.Ulrichs:
             return container.Resolve<UlrichsImport>().GetJournals(UlrichsImport.UlrichsJournalType.OpenAccess);
         default:
             throw new ArgumentOutOfRangeException("importSource");
     }
 }
예제 #7
0
파일: Program.cs 프로젝트: spapaseit/qoam
        public static JournalsImportMode GetImportMode(JournalsImportSource source, IList<string> args)
        {
            if (source == JournalsImportSource.JournalTOCs)
                return JournalsImportMode.InsertAndUpdate;

            if (args.Count < 2)
            {
                return JournalsImportMode.InsertOnly;
            }

            return (JournalsImportMode)Enum.Parse(typeof(JournalsImportMode), args[1], true);
        }
예제 #8
0
        private static void ImportJournals(JournalsImportSource importSource, JournalsImportMode importMode, JournalTocsFetchMode?action, ISet <JournalUpdateProperty> journalUpdateProperties)
        {
            Logger.Info("Import source: {0}", importSource);
            Logger.Info("Import mode: {0}", importMode);
            Logger.Info("Importing journals...");

            var journalsImport = Container.Resolve <JournalsImport>();
            var importResult   = journalsImport.ImportJournals(GetJournalsToImport(importSource, action), importMode, journalUpdateProperties);

            Logger.Info("Imported {0} journals total", importResult.NumberOfImportedJournals);
            Logger.Info("Imported {0} new journals", importResult.NumberOfNewJournals);
        }
예제 #9
0
        private IList <Journal> GetJournalsFromSource(JournalsImportSource importSource)
        {
            switch (importSource)
            {
            case JournalsImportSource.DOAJ:
                return(this.doajImport.GetJournals());

            case JournalsImportSource.Ulrichs:
                return(this.ulrichsImport.GetJournals(UlrichsImport.UlrichsJournalType.All));

            default:
                throw new ArgumentOutOfRangeException("importSource");
            }
        }
예제 #10
0
        private static IList <Journal> GetJournalsToImport(JournalsImportSource importSource)
        {
            switch (importSource)
            {
            case JournalsImportSource.DOAJ:
                return(container.Resolve <DoajImport>().GetJournals());

            case JournalsImportSource.Ulrichs:
                return(container.Resolve <UlrichsImport>().GetJournals(UlrichsImport.UlrichsJournalType.OpenAccess));

            default:
                throw new ArgumentOutOfRangeException("importSource");
            }
        }
예제 #11
0
        public static JournalsImportMode GetImportMode(JournalsImportSource source, IList <string> args)
        {
            if (source == JournalsImportSource.JournalTOCs)
            {
                return(JournalsImportMode.InsertAndUpdate);
            }

            if (args.Count < 2)
            {
                return(JournalsImportMode.InsertOnly);
            }

            return((JournalsImportMode)Enum.Parse(typeof(JournalsImportMode), args[1], true));
        }
예제 #12
0
        IList <Journal> GetJournalsFromSource(JournalsImportSource importSource, JournalTocsFetchMode action = JournalTocsFetchMode.Update)
        {
            switch (importSource)
            {
            case JournalsImportSource.DOAJ:
                return(doajImport.GetJournals());

            case JournalsImportSource.Ulrichs:
                return(ulrichsImport.GetJournals(UlrichsImport.UlrichsJournalType.All));

            case JournalsImportSource.JournalTOCs:
                return(_journalsTocImport.DownloadJournals(action));

            default:
                throw new ArgumentOutOfRangeException(nameof(importSource));
            }
        }
예제 #13
0
        private static IList <Journal> GetJournalsToImport(JournalsImportSource importSource, JournalTocsFetchMode?action = JournalTocsFetchMode.Update)
        {
            switch (importSource)
            {
            case JournalsImportSource.DOAJ:
                return(Container.Resolve <DoajImport>().GetJournals());

            case JournalsImportSource.Ulrichs:
                return(Container.Resolve <UlrichsImport>().GetJournals(UlrichsImport.UlrichsJournalType.OpenAccess));

            case JournalsImportSource.JournalTOCs:
                return(Container.Resolve <JournalTocsImport>().DownloadJournals(action.GetValueOrDefault(JournalTocsFetchMode.Update)));

            default:
                throw new ArgumentOutOfRangeException(nameof(importSource));
            }
        }
예제 #14
0
 private IList<Journal> GetJournalsFromSource(JournalsImportSource importSource)
 {
     switch (importSource)
     {
         case JournalsImportSource.DOAJ:
             return this.doajImport.GetJournals();
         case JournalsImportSource.Ulrichs:
             return this.ulrichsImport.GetJournals(UlrichsImport.UlrichsJournalType.All);
         default:
             throw new ArgumentOutOfRangeException("importSource");
     }
 }
예제 #15
0
 IList<Journal> GetJournalsFromSource(JournalsImportSource importSource, JournalTocsFetchMode action = JournalTocsFetchMode.Update)
 {
     switch (importSource)
     {
         case JournalsImportSource.DOAJ:
             return doajImport.GetJournals();
         case JournalsImportSource.Ulrichs:
             return ulrichsImport.GetJournals(UlrichsImport.UlrichsJournalType.All);
             case JournalsImportSource.JournalTOCs:
             return _journalsTocImport.DownloadJournals(action);
         default:
             throw new ArgumentOutOfRangeException(nameof(importSource));
     }
 }
예제 #16
0
        public void GetImportModeWithEmptyArgsReturnsInsertOnlyJournalsImportModeForDoajAndUlrichs(JournalsImportSource source)
        {
            // Arrange
            var args = new List <string>();

            // Act
            var journalsImportMode = Program.GetImportMode(source, args);

            // Assert
            Assert.Equal(JournalsImportMode.InsertOnly, journalsImportMode);
        }