Beispiel #1
0
        public static void Configuration()
        {
            Mapper.Initialize(cfg =>
            {
                cfg.CreateMap <Models.WebModels.User, Models.DomainModels.User>();
                cfg.CreateMap <Models.DomainModels.User, Models.WebModels.User>()
                .ForMember(d => d.Links, m => m.MapFrom(s => _userResourceLinksProvider.GetLinks(s.Id)));

                cfg.CreateMap <Models.WebModels.BookInfo, Models.DomainModels.Book>();
                cfg.CreateMap <Models.DomainModels.Book, Models.WebModels.BookInfo>()
                .ForMember(d => d.Links, m => m.MapFrom(s => _bookResourceLinksProvider.GetLinks(s.Id)));

                cfg.CreateMap <Models.WebModels.BookInfo, Models.DomainModels.BookInStore>();
                cfg.CreateMap <Models.DomainModels.BookInStore, Models.WebModels.BookInfo>();

                cfg.CreateMap <Models.WebModels.BookInfoWithDetails, Models.DomainModels.BookInStore>();
                cfg.CreateMap <Models.DomainModels.BookInStore, Models.WebModels.BookInfoWithDetails>()
                .ForMember(d => d.Links, m => m.MapFrom(s => _bookResourceLinksProvider.GetLinks(s.Id)));

                cfg.CreateMap <Models.WebModels.BookInfoWithDetails, Models.DomainModels.BookDetails>();
                cfg.CreateMap <Models.DomainModels.BookDetails, Models.WebModels.BookInfoWithDetails>();
            });
        }
        public ActionResult <IEnumerable <LocationLink> > Get()
        {
            var linksList = linksProvider.GetLinks();

            var locationLinks = linksList.Select(
                link => new LocationLink
            {
                Description = link.Description,
                Name        = link.Name,
                Uri         = link.Uri
            })
                                .ToList();

            return(locationLinks);
        }
Beispiel #3
0
        public async Task Run(CancellationTokenSource cts)
        {
            var line = string.Empty;

            while (!cts.IsCancellationRequested)
            {
                line = Reader.ReadLine();
                switch (line)
                {
                case "exit":
                    cts.Cancel();
                    break;

                case "file":
                    var filename = Reader.ReadLine();
                    var flinks   = await _linksProvider.GetLinks(new FileInfo(filename));

                    foreach (var flink in flinks)
                    {
                        _linksCache.Add(flink, cts.Token);
                    }
                    break;

                case "progress":
                    await _downloadProgressProvider.ReportProgress();

                    break;

                case "cancel":
                    var key = Reader.ReadLine();
                    await _fileDownloader.CancelDownload(key);

                    break;

                case "stats":
                    await _downloadProgressProvider.ReportStatistics();

                    break;

                case "history":
                    await _downloadProgressProvider.ReportHistory();

                    break;

                case "monitor":
                    var mcommand = Reader.ReadLine();
                    switch (mcommand)
                    {
                    case "start":
                        _downloadProgressMonitor.StartMonitor();
                        break;

                    case "stop":
                        _downloadProgressMonitor.StopMonitor();
                        break;

                    default:
                        Writer.WriteLine("Unknown command. Type \"help\" for available commands.");
                        break;
                    }
                    break;

                case "help":
                    PrintHelp();
                    break;

                case "link":
                    var link = Reader.ReadLine();
                    _linksCache.Add(link, cts.Token);
                    break;

                default:
                    Writer.WriteLine("Unknown command. Type \"help\" for available commands.");
                    break;
                }
            }
        }