public async Task <ItemsLinkContainer <ValueInfo> > Get()
        {
            var values = await GetAllValuesWithLinksAsync();

            var result = new ItemsLinkContainer <ValueInfo>()
            {
                Items = values
            };
            await linksService.AddLinksAsync(result);

            return(result);
        }
Esempio n. 2
0
        public ItemsLinkContainer <ContactViewModel> Get()
        {
            var contact = _contactAppService.GetAll().ToList();

            contact.ForEach(x => x.AddRangeLink(_contactEnricher.CreateLinks(Method.Get, x)));
            var result = new ItemsLinkContainer <ContactViewModel>()
            {
                Items = contact
            };

            result.AddRangeLink(_contactEnricher.CreateLinks(Method.GetAll));
            return(result);
        }
Esempio n. 3
0
        public ItemsLinkContainer <VolunteerViewModel> Get()
        {
            var volunteer = _volunteerAppService.GetAll().ToList();

            volunteer.ForEach(x => x.AddRangeLink(_volunteerEnricher.CreateLinks(Method.Get, x)));
            var result = new ItemsLinkContainer <VolunteerViewModel>()
            {
                Items = volunteer
            };

            result.AddRangeLink(_volunteerEnricher.CreateLinks(Method.GetAll));
            return(result);
        }
Esempio n. 4
0
        public ItemsLinkContainer <HowToHelpViewModel> Get()
        {
            var obj = _howToHelpAppService.GetAll().ToList();

            obj.ForEach(x => x.AddRangeLink(_howToHelpEnricher.CreateLinks(Method.Get, x)));
            var result = new ItemsLinkContainer <HowToHelpViewModel>()
            {
                Items = obj
            };

            result.AddRangeLink(_howToHelpEnricher.CreateLinks(Method.GetAll));
            return(result);
        }
Esempio n. 5
0
        public ItemsLinkContainer <MenuViewModel> Get()
        {
            var menus = _menuAppService.GetAll().ToList();

            menus.ForEach(x => x.AddRangeLink(_menuEnricher.CreateLinks(Method.Get, x)));
            var result = new ItemsLinkContainer <MenuViewModel>()
            {
                Items = menus
            };

            result.AddRangeLink(_menuEnricher.CreateLinks(Method.GetAll));
            return(result);
        }
        public ItemsLinkContainer <CollaboratorViewModel> Get()
        {
            var collaborators = _collaboratorPageAppService.GetAll().ToList();

            collaborators.ForEach(x => x.AddRangeLink(_collaboratorPageEnricher.CreateLinks(Method.Get, x)));
            var result = new ItemsLinkContainer <CollaboratorViewModel>()
            {
                Items = collaborators
            };

            result.AddRangeLink(_collaboratorPageEnricher.CreateLinks(Method.GetAll));
            return(result);
        }
Esempio n. 7
0
        public ItemsLinkContainer <LanguageViewModel> Get()
        {
            var languages = _languageAppService.GetAll().ToList();

            languages.ForEach(x => x.AddRangeLink(_languageEnricher.CreateLinks(Method.Get, x)));
            var result = new ItemsLinkContainer <LanguageViewModel>()
            {
                Items = languages
            };

            result.AddRangeLink(_languageEnricher.CreateLinks(Method.GetAll));
            return(result);
        }
Esempio n. 8
0
        public ItemsLinkContainer <InstitutionViewModel> Get()
        {
            var institutions = _institutionAppService.GetAll().ToList();

            institutions.ForEach(x => x.AddRangeLink(_institutionEnricher.CreateLinks(Method.Get, x)));
            var result = new ItemsLinkContainer <InstitutionViewModel>()
            {
                Items = institutions
            };

            result.AddRangeLink(_institutionEnricher.CreateLinks(Method.GetAll));
            return(result);
        }
Esempio n. 9
0
        public ItemsLinkContainer <WhoAreWeViewModel> Get()
        {
            var whoAreWe = _whoAreWeAppService.GetAll().ToList();

            whoAreWe.ForEach(x => x.AddRangeLink(_whoAreWeEnricher.CreateLinks(Method.Get, x)));
            var result = new ItemsLinkContainer <WhoAreWeViewModel>()
            {
                Items = whoAreWe
            };

            result.AddRangeLink(_whoAreWeEnricher.CreateLinks(Method.GetAll));
            return(result);
        }
Esempio n. 10
0
        [HttpGet(Name = "GetAllValuesRoute")] //this can be done via range header as well
        public async Task <ItemsLinkContainer <Customer> > Get([FromQuery] int skip = 0)
        {
            const int pageSize = 5;
            var       f        = new Fixture();
            var       cust     = f.Build <Customer>()
                                 .Without(w => w.Links)
                                 .CreateMany(56)
                                 .ToList();

            foreach (var customer in cust)
            {
                await _linkService.AddLinksAsync(customer);
            }

            var result = new ItemsLinkContainer <Customer>
            {
                Items = cust.Skip(skip).Take(pageSize).ToList()
            };

            await _linkService.AddLinksAsync(result);

            var self = result.Links["self"];

            if (skip != 0)
            {
                result.AddLink("first", new Link
                {
                    Href   = $"{self.Href}",
                    Rel    = self.Rel,
                    Method = HttpMethod.Get.ToString()
                });
            }

            if (skip + pageSize > cust.Count)
            {
                result.AddLink("next", new Link
                {
                    Href   = $"{self.Href}?skip={skip + pageSize}",
                    Rel    = self.Rel,
                    Method = HttpMethod.Get.ToString()
                });
            }

            if (skip >= pageSize * 2)
            {
                result.AddLink("previous", new Link
                {
                    Href   = $"{self.Href}?skip={skip - pageSize}",
                    Rel    = self.Rel,
                    Method = HttpMethod.Get.ToString()
                });
            }

            result.AddLink("last", new Link
            {
                Href   = $"{self.Href}?skip={cust.Count - (cust.Count % pageSize) }",
                Rel    = self.Rel,
                Method = HttpMethod.Get.ToString()
            });

            return(result);
        }