public async Task <ServerResources> GetServerResources() { var trimmedUrl = CalenderUrl.Trim(); var url = new Uri(trimmedUrl.EndsWith("/") ? trimmedUrl : trimmedUrl + "/"); var webDavClient = _prototypeModel.CreateWebDavClient(); var calDavDataAccess = new CalDavDataAccess(url, webDavClient); var foundResources = await calDavDataAccess.GetUserResourcesIncludingCalendarProxies(false); var cardDavDataAccess = new CardDavDataAccess(url, webDavClient, string.Empty, contentType => true); var foundAddressBooks = await cardDavDataAccess.GetUserAddressBooksNoThrow(true); var service = await GoogleHttpClientFactory.LoginToGoogleTasksService(EmailAddress, SynchronizerFactory.CreateProxy(_prototypeModel.CreateProxyOptions())); var taskLists = await service.Tasklists.List().ExecuteAsync(); var taskListsData = taskLists?.Items.Select(i => new TaskListData(i.Id, i.Title, AccessPrivileges.All)).ToArray() ?? new TaskListData[] { }; return(new ServerResources(foundResources.CalendarResources, foundAddressBooks, taskListsData)); }
public async Task <ServerResources> GetServerResources() { var trimmedUrl = CalenderUrl.Trim(); var url = new Uri(trimmedUrl.EndsWith("/") ? trimmedUrl : trimmedUrl + "/"); var webDavClient = _prototypeModel.CreateWebDavClient(); var calDavDataAccess = new CalDavDataAccess(url, webDavClient); var foundResources = await calDavDataAccess.GetUserResourcesNoThrow(false); var foundAddressBooks = new[] { new AddressBookData(new Uri("googleApi://defaultAddressBook"), "Default AddressBook") }; var service = await GoogleHttpClientFactory.LoginToGoogleTasksService(EmailAddress, SynchronizerFactory.CreateProxy(_prototypeModel.CreateProxyOptions())); var taskLists = await service.Tasklists.List().ExecuteAsync(); var taskListsData = taskLists?.Items.Select(i => new TaskListData(i.Id, i.Title)).ToArray() ?? new TaskListData[] { }; return(new ServerResources(foundResources.CalendarResources, foundAddressBooks, taskListsData)); }