public async Task CreateSheets(ICollection <string> names) { var urlBuilder = URLBuilder.BatchUpdate(ID); var value = AddSheetRequestBodyAdapter.GetAddSheetRequestBody(names); var responseHandler = new Action <string>(str => { var jObject = JObject.Parse(str); var replies = jObject["replies"]; var repliesArray = replies.Select(t => t); foreach (var addSheet in repliesArray) { var properties = addSheet["addSheet"]["properties"]; var id = properties["sheetId"]; var title = properties["title"]; var googleSheet = new Sheet(id.Value <int>(), title.Value <string>()); Sheets.Add(googleSheet); } Debug.Log(nameof(CreateSheets) + string.Join("\n", names.ToArray())); }); await RequestExecutor.SendRequestAsync(urlBuilder, value, responseHandler); }
public async Task <List <PassInfo> > CallAPI(string accessCode) { // how to call rest API //https://stackoverflow.com/questions/22627296/how-to-call-rest-api-from-a-console-application/22627481 //https://docs.microsoft.com/en-us/aspnet/web-api/overview/advanced/calling-a-web-api-from-a-net-client // best method //https://blog.jayway.com/2012/03/13/httpclient-makes-get-and-post-very-simple/ try { // calls url builder utility which builds the URL to send via http client var url = URLBuilder.BuildURL(accessCode); HttpClient client = new HttpClient(); var response = await client.GetAsync(url); response.EnsureSuccessStatusCode(); string content = await response.Content.ReadAsStringAsync(); //Console.WriteLine(content); // this works!!! List <PassInfo> pass = JsonConvert.DeserializeObject <List <PassInfo> >(content); // how to order model object in-place (which is more efficient since you don't have to // create a whole new object): https://stackoverflow.com/questions/3309188/how-to-sort-a-listt-by-a-property-in-the-object pass.Sort((x, y) => x.MountainPassId.CompareTo(y.MountainPassId)); return(pass); } // catch block catch (HttpRequestException ex) { throw new HttpRequestException(ex.ToString()); } }
public async Task Submit() { LoginChoice = Visibility.Visible; RegisterChoice = Visibility.Collapsed; using (var client = new HttpClient()) { AuthenticationDto content = createAuthencticationDto(); var json = Newtonsoft.Json.JsonConvert.SerializeObject(content); client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); URLBuilder url = new URLBuilder("/api/User/"); var request = new HttpRequestMessage() { RequestUri = new Uri(url.URL), Method = HttpMethod.Post, Content = new StringContent(json, Encoding.UTF8, "application/json") }; var response = await client.SendAsync(request); if (!response.IsSuccessStatusCode) { ErrorString = (string)Application.Current.FindResource("RegistrationError"); return; } var contents = await response.Content.ReadAsStringAsync(); AuthenticationDto result = JsonConvert.DeserializeObject <AuthenticationDto>(contents); User.UserId = result.UserId; } }
public async Task LoadSpreadsheets() { Spreadsheets.Clear(); var urlBuilder = URLBuilder.GetSpreadsheets().AddOrderBy("createdTime"). AddRequest("mimeType = 'application/vnd.google-apps.spreadsheet' and 'me' in owners and trashed = false"); Utils.HttpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", GoogleDataStorage.Instance.AccessToken); using (var response = await Utils.HttpClient.GetAsync(urlBuilder.GetURL())) { var content = await response.Content.ReadAsStringAsync(); var jContainer = JsonConvert.DeserializeObject(content) as JContainer; foreach (var jToken in jContainer) { var jProperty = jToken as JProperty; if (jProperty.Name == "files") { foreach (var file in jProperty.Values()) { var fileInfo = file as JObject; Spreadsheets.Add(new Spreadsheet(fileInfo["id"].ToString(), fileInfo["name"].ToString())); } } } } }
private async Task ReadGoogleSheets() { var urlBuilder = URLBuilder.GetSheetsValues(ID). AddApiKey(GoogleDataStorage.Instance.ApiKey). AddRanges(Sheets.Select(item => item.Name)). AddValueRenderOption("FORMULA"); using (var response = await Utils.HttpClient.GetAsync(urlBuilder.GetURL())) { var content = await response.Content.ReadAsStringAsync(); var jObject = JObject.Parse(content); var valueRanges = jObject["valueRanges"].Select(t => t); for (int i = 0; i < valueRanges.Count(); i++) { var range = valueRanges.ElementAt(i); if (range["values"] == null) { continue; } var valuesToken = range["values"].Select(t => t); Sheets.ElementAt(i).Parse(valuesToken); } } }
public async Task SubmitCommand() { using (var client = new HttpClient()) { AuthenticationDto content = createAuthencticationDto(); var json = Newtonsoft.Json.JsonConvert.SerializeObject(content); client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); URLBuilder url = new URLBuilder("/api/User/"); var request = new HttpRequestMessage() { RequestUri = new Uri(url.URL), Method = HttpMethod.Put, Content = new StringContent(json, Encoding.UTF8, "application/json") }; request.Headers.Add("Authorization", "Basic " + Convert.ToBase64String(System.Text.ASCIIEncoding.ASCII.GetBytes(string.Format("{0}:{1}", User.UserId.ToString(), _realSecure.ToString())))); var response = await client.SendAsync(request); if (!response.IsSuccessStatusCode) { ErrorString = (string)System.Windows.Application.Current.FindResource("RegistrationError"); return; } else { ErrorString = (string)System.Windows.Application.Current.FindResource("SuccessfullAccountUpdate"); } var contents = await response.Content.ReadAsStringAsync(); AuthenticationDto result = JsonConvert.DeserializeObject <AuthenticationDto>(contents); } }
public async Task RefreshAccessToken() { if (_lastCheck != null && (DateTime.Now - _lastCheck.Value).Seconds < REMAINING_TIME_TO_REFRESH_ACCESS_TOKEN) { Debug.Log("Access token is valid"); return; } var urlBuilder = URLBuilder.UpdateAccessToken(). AddClientId(_clientId). AddClientSecret(_clientSecret). AddRefreshToken(_refreshToken). AddGrantType("refresh_token"); using (var response = await Utils.HttpClient.PostAsync(urlBuilder.GetURL(), null)) { var content = await response.Content.ReadAsStringAsync(); var jObjectResponse = JObject.Parse(content); _accessToken = (string)jObjectResponse["access_token"]; _lastCheck = DateTime.Now; Debug.Log("Update access token: " + _lastCheck); } }
public async Task Load() { using (var client = new HttpClient()) { URLBuilder url = new URLBuilder(_filter, controler); url.URL += "&ShowMyOffers=true"; var request = new HttpRequestMessage() { RequestUri = new Uri(url.URL), Method = HttpMethod.Get }; request.Headers.Add("Authorization", "Basic " + Convert.ToBase64String(System.Text.ASCIIEncoding.ASCII.GetBytes(string.Format("{0}:{1}", _authenticationUser.UserId.ToString(), _authenticationUser.Password)))); var response = await client.SendAsync(request); var contents = await response.Content.ReadAsStringAsync(); List <ProductDto> result = JsonConvert.DeserializeObject <List <ProductDto> >(contents); Products.Clear(); foreach (ProductDto p in result) { ProductWrapper product = p.createProduct(); Products.Add(product); } } }
public async Task Update() { if (SelectedProduct != null) { using (var client = new HttpClient()) { client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); ProductDto content = createProductDto(_selectedProduct); var json = Newtonsoft.Json.JsonConvert.SerializeObject(content); URLBuilder url = new URLBuilder(controler); var request = new HttpRequestMessage() { RequestUri = new Uri(url.URL), Method = HttpMethod.Put, Content = new StringContent(json, Encoding.UTF8, "application/json") }; request.Headers.Add("Authorization", "Basic " + Convert.ToBase64String(System.Text.ASCIIEncoding.ASCII.GetBytes(string.Format("{0}:{1}", _authenticationUser.UserId.ToString(), _authenticationUser.Password)))); var response = await client.SendAsync(request); if (!response.IsSuccessStatusCode) { ErrorString = (string)Application.Current.FindResource("UpdateProductError"); return; } if (SelectedProduct.Stock == 0) { Products.Remove(SelectedProduct); } } ErrorString = null; } }
public async Task LoadGoogleSheets() { Sheets.Clear(); var urlBuilder = URLBuilder.GetSheets(ID) .AddApiKey(GoogleDataStorage.Instance.ApiKey) .AddFields("sheets(properties(sheetId,title))"); using (var response = await Utils.HttpClient.GetAsync(urlBuilder.GetURL())) { var content = await response.Content.ReadAsStringAsync(); var jContainer = JsonConvert.DeserializeObject(content) as JContainer; var sheetInfo = from sheet in jContainer["sheets"].Children()["properties"] select new { title = sheet["title"], id = sheet["sheetId"] }; foreach (var sheet in sheetInfo) { Sheets.Add(new Sheet(Convert.ToInt32(sheet.id.ToString()), sheet.title.ToString())); } } await ReadGoogleSheets(); }
public async Task <Expenses> DeleteExpense(Expenses expense) { var url = URLBuilder.GetURL(Controllers.FINANCE, EndPoint.FINANCE_EXPENSES_DELETE); return(await requestProvider.DeleteAsync(url, expense, new Dictionary <string, string> { ["id"] = expense.Id.ToString() })); }
public async Task <Employees> DeleteEmployee(Employees employees) { var url = URLBuilder.GetURL(Controllers.MAINTENANCE, EndPoint.MAINTENANCE_EMPLOYEE_DELETE); return(await requestProvider.DeleteAsync(url, employees, new Dictionary <string, string> { ["id"] = employees.Id.ToString() })); }
public async Task <ReagentBillEntries> DeleteReagentEntry(ReagentBillEntries reagentEntry) { var url = URLBuilder.GetURL(Controllers.REAGENT, EndPoint.REAGENT_ENTRY_DELETE); return(await requestProvider.DeleteAsync(url, reagentEntry, new Dictionary <string, string> { ["id"] = reagentEntry.Id.ToString() })); }
public async Task <PatientBillPayment> DeletePatientBillPayment(PatientBillPayment patientBillPayment) { var url = URLBuilder.GetURL(Controllers.FINANCE, EndPoint.FINANCE_PATIENT_BILL_PAYMENT_DELETE); return(await requestProvider.DeleteAsync(url, patientBillPayment, new Dictionary <string, string> { ["id"] = patientBillPayment.Id.ToString() })); }
public async Task <SignaturePrototypes> DeleteSignature(SignaturePrototypes signature) { var url = URLBuilder.GetURL(Controllers.MAINTENANCE, EndPoint.MAINTENANCE_SIGNATURE_DELETE); return(await requestProvider.DeleteAsync(url, signature, new Dictionary <string, string> { ["id"] = signature.Id.ToString() })); }
public async Task <HdlRegistration> DeleteRateList(HdlRegistration hdlRegistration) { var url = URLBuilder.GetURL(Controllers.MAINTENANCE, EndPoint.MAINTENANCE_RATE_LIST_DELETE); return(await requestProvider.DeleteAsync(url, hdlRegistration, new Dictionary <string, string> { ["id"] = hdlRegistration.Id.ToString() })); }
public async Task <Inventories> DeleteInventory(Inventories inventory) { var url = URLBuilder.GetURL(Controllers.MAINTENANCE, EndPoint.MAINTENANCE_INVENTORY_DELETE); return(await requestProvider.DeleteAsync(url, inventory, new Dictionary <string, string> { ["id"] = inventory.Id.ToString() })); }
public async Task <FieldOptions> DeleteFieldOption(FieldOptions fieldOption) { var url = URLBuilder.GetURL(Controllers.MAINTENANCE, EndPoint.MAINTENANCE_FIELD_OPTIONS_DELETE); return(await requestProvider.DeleteAsync(url, fieldOption, new Dictionary <string, string> { ["id"] = fieldOption.Id.ToString() })); }
public async Task <TestReagentRelation> DeleteTestReagentRelation(TestReagentRelation testReagentRelation) { var url = URLBuilder.GetURL(Controllers.REAGENT, EndPoint.TEST_REAGENT_RELATIONS_DELETE); return(await requestProvider.DeleteAsync(url, testReagentRelation, new Dictionary <string, string> { ["id"] = testReagentRelation.Id.ToString() })); }
public async Task <HdlBill> DeleteHdlBill(HdlBill bill) { var url = URLBuilder.GetURL(Controllers.FINANCE, EndPoint.FINANCE_HDL_BILL_DELETE); return(await requestProvider.DeleteAsync(url, bill, new Dictionary <string, string> { ["id"] = bill.Id.ToString() })); }
public async Task <Abbrevations> DeleteAbbrevation(Abbrevations abbrevation) { var url = URLBuilder.GetURL(Controllers.MAINTENANCE, EndPoint.MAINTENANCE_ABBREVATION_DELETE); return(await requestProvider.DeleteAsync(url, abbrevation, new Dictionary <string, string> { ["id"] = abbrevation.Id.ToString() })); }
public async Task <OtherIncome> DeleteOtherIncome(OtherIncome otherIncome) { var url = URLBuilder.GetURL(Controllers.FINANCE, EndPoint.FINANCE_OTHER_INCOME_DELETE); return(await requestProvider.DeleteAsync(url, otherIncome, new Dictionary <string, string> { ["id"] = otherIncome.Id.ToString() })); }
public async Task <UsersDto> DeleteUser(UsersDto userDto) { var url = URLBuilder.GetURL(Controllers.USER, EndPoint.USER_DELETE); return(await requestProvider.DeleteAsync(url, userDto, new Dictionary <string, string> { ["id"] = userDto.Id.ToString() })); }
public async Task <Salary> DeleteSalary(Salary salary) { var url = URLBuilder.GetURL(Controllers.MAINTENANCE, EndPoint.MAINTENANCE_SALARY_DELETE); return(await requestProvider.DeleteAsync(url, salary, new Dictionary <string, string> { ["id"] = salary.Id.ToString() })); }
public async Task <Dealers> DeleteDealer(Dealers dealer) { var url = URLBuilder.GetURL(Controllers.REAGENT, EndPoint.DEALER_DELETE); return(await requestProvider.DeleteAsync(url, dealer, new Dictionary <string, string> { ["id"] = dealer.Id.ToString() })); }
public async Task <PatientDto> DeletePatient(PatientDto patient) { var url = URLBuilder.GetURL(Controllers.PATIENT, EndPoint.PATIENT_DELETE); return(await requestProvider.DeleteAsync(url, patient, new Dictionary <string, string> { ["id"] = patient.Patient.Id.ToString() })); }
public async Task <HdlRegistration> DeleteDhlRegistration(HdlRegistration registration) { var url = URLBuilder.GetURL(Controllers.MAINTENANCE, EndPoint.MAINTENANCE_DHL_REGISTRATION_DELETE); return(await requestProvider.DeleteAsync(url, registration, new Dictionary <string, string> { ["id"] = registration.Id.ToString() })); }
public async Task <Formulas> DeleteForumula(Formulas formula) { var url = URLBuilder.GetURL(Controllers.TEST, EndPoint.TEST_FORMULA_DELETE); return(await requestProvider.DeleteAsync(url, formula, new Dictionary <string, string> { ["id"] = formula.Id.ToString() })); }
public async Task <TestTitleDto> DeleteTestTitle(TestTitleDto responseModel) { var url = URLBuilder.GetURL(Controllers.TEST, EndPoint.TEST_TITLE_DELETE); return(await requestProvider.DeleteAsync(url, responseModel, new Dictionary <string, string> { ["id"] = responseModel.Id.ToString() })); }
public async Task <ActionResult <UserDto> > Register(RegisterDto registerDto) { if (await UserExists(registerDto.Username)) { return(BadRequest("Username already taken!")); } var user = _mapper.Map <AppUser>(registerDto); user.UserName = registerDto.Username.ToLower(); user.Email = registerDto.Email; var result = await _userManager.CreateAsync(user, registerDto.Password); if (!result.Succeeded) { return(BadRequest(result.Errors)); } var roleResult = await _userManager.AddToRoleAsync(user, "Operator"); if (!roleResult.Succeeded) { return(BadRequest(roleResult.Errors)); } var token = await _userManager.GenerateEmailConfirmationTokenAsync(user); string urlPath = ""; var env = Environment.GetEnvironmentVariable("ASPNETCORE_ENVIRONMENT"); if (env.ToLower() == "development") { urlPath = _config["returnPaths:ConfirmEmail"]; } else { urlPath = Environment.GetEnvironmentVariable("ReturnPaths:ConfirmEmail"); } var confirmationLink = URLBuilder.BuildUrl(urlPath, token, user.Id.ToString()); var message = new Message(new string[] { user.Email }, "Confirmation Email Link", URLBuilder.BuildContext(URLBuilder.MessageType.ConfirmEmail, confirmationLink, user.UserName), null); await _emailSender.SendEmailAsync(message); return(new UserDto { Username = user.UserName, Token = await _tokenService.CreateToken(user), LastName = user.LastName, FirstName = user.FirstName, Created = user.Created }); }