public IHttpActionResult Get(int dayno) { var topics = _dataService.SessionRepository.GetSessionsByDay(dayno) .SelectMany(s => _dataService.SessionTopicRepository.GetTopicsBySession(s.Id)) .Select(st => st.TopicId).Distinct().Select(s => _dataService.TopicRepository.Get(s)); return(TopicsLinkHelper.GetResponse(topics, Request)); }
public IHttpActionResult GetTopicsBySession(int id) { var topics = _dataService.SessionTopicRepository.GetTopicsBySession(id) .Select(st => st.TopicId) .Distinct() .Select(t => _dataService.TopicRepository.Get(t)); return(TopicsLinkHelper.GetResponse(topics, Request)); }
public IHttpActionResult GetTopicsBySpeaker(int id) { var topics = _dataService.SessionRepository.GetAll() .Where(s => s.SpeakerId == id) .SelectMany(s => _dataService.SessionTopicRepository.GetTopicsBySession(s.Id)) .Select(st => st.TopicId) .Distinct() .Select(t => _dataService.TopicRepository.Get(t)); return(TopicsLinkHelper.GetResponse(topics, Request)); }
public IHttpActionResult GetTopicsBySession(int id) { if (!_dataService.SessionRepository.Exists(id)) { return(new Tools.NotFoundResult("Session not found")); } var topics = _dataService.SessionTopicRepository.GetTopicsBySession(id) .Select(st => st.TopicId) .Distinct() .Select(t => _dataService.TopicRepository.Get(t)); return(TopicsLinkHelper.GetResponse(topics, Request)); }
public IHttpActionResult Get() { var home = new HomeDocument(); home.AddResource(TopicsLinkHelper.CreateLink(Request).WithHints()); home.AddResource(DaysLinkHelper.CreateLink(Request).WithHints()); home.AddResource(SessionsLinkHelper.CreateLink(Request).WithHints()); home.AddResource(SpeakersLinkHelper.CreateLink(Request).WithHints()); return(new OkResult(Request) .WithCaching(new CacheControlHeaderValue() { MaxAge = new TimeSpan(0, 0, 60) }) .WithContent(new HomeContent(home))); }
private Collection CreateCollection(TimeSpan duration) { var daysCollection = new Collection(); for (int i = 1; i < duration.TotalDays; i++) { var item = new Item(); item.Data.Add(new Data { Name = "Day", Value = i.ToString() }); item.Links.Add(SessionsLinkHelper.CreateLink(Request, dayno: i).ToCJLink()); item.Links.Add(SpeakersLinkHelper.CreateLink(Request, dayno: i).ToCJLink()); item.Links.Add(TopicsLinkHelper.CreateLink(Request, dayno: i).ToCJLink()); daysCollection.Items.Add(item); } return(daysCollection); }
public IHttpActionResult Get() { //var explorer = new ApiExplorer(Configuration); //var descriptions = explorer.ApiDescriptions; //return new OkResult(Request).WithContent(new StringContent(String.Join("\n",descriptions.Select(d=> d.ID).ToArray()))); var home = new HomeDocument(); home.AddResource(TopicsLinkHelper.CreateLink(Request).WithHints()); home.AddResource(DaysLinkHelper.CreateLink(Request).WithHints()); home.AddResource(SessionsLinkHelper.CreateLink(Request).WithHints()); home.AddResource(SpeakersLinkHelper.CreateLink(Request).WithHints()); return(new OkResult(Request) .WithCaching(new CacheControlHeaderValue() { MaxAge = new TimeSpan(0, 0, 60) }) .WithContent(new HomeContent(home))); }
public IHttpActionResult Get() { var topics = _dataService.TopicRepository.GetAll(); return(TopicsLinkHelper.GetResponse(topics, Request)); }