/// <summary> /// Updates the specified BookingBusiness using PATCH. /// </summary> /// <param name="bookingBusinessToUpdate">The BookingBusiness to update.</param> /// <param name="cancellationToken">The <see cref="CancellationToken"/> for the request.</param> /// <exception cref="ClientException">Thrown when an object returned in a response is used for updating an object in Microsoft Graph.</exception> /// <returns>The updated BookingBusiness.</returns> public async System.Threading.Tasks.Task <BookingBusiness> UpdateAsync(BookingBusiness bookingBusinessToUpdate, CancellationToken cancellationToken) { if (bookingBusinessToUpdate.AdditionalData != null) { if (bookingBusinessToUpdate.AdditionalData.ContainsKey(Constants.HttpPropertyNames.ResponseHeaders) || bookingBusinessToUpdate.AdditionalData.ContainsKey(Constants.HttpPropertyNames.StatusCode)) { throw new ClientException( new Error { Code = GeneratedErrorConstants.Codes.NotAllowed, Message = String.Format(GeneratedErrorConstants.Messages.ResponseObjectUsedForUpdate, bookingBusinessToUpdate.GetType().Name) }); } } if (bookingBusinessToUpdate.AdditionalData != null) { if (bookingBusinessToUpdate.AdditionalData.ContainsKey(Constants.HttpPropertyNames.ResponseHeaders) || bookingBusinessToUpdate.AdditionalData.ContainsKey(Constants.HttpPropertyNames.StatusCode)) { throw new ClientException( new Error { Code = GeneratedErrorConstants.Codes.NotAllowed, Message = String.Format(GeneratedErrorConstants.Messages.ResponseObjectUsedForUpdate, bookingBusinessToUpdate.GetType().Name) }); } } this.ContentType = "application/json"; this.Method = "PATCH"; var updatedEntity = await this.SendAsync <BookingBusiness>(bookingBusinessToUpdate, cancellationToken).ConfigureAwait(false); this.InitializeCollectionProperties(updatedEntity); return(updatedEntity); }
/// <summary> /// Creates the specified BookingBusiness using POST. /// </summary> /// <param name="bookingBusinessToCreate">The BookingBusiness to create.</param> /// <param name="cancellationToken">The <see cref="CancellationToken"/> for the request.</param> /// <returns>The created BookingBusiness.</returns> public async System.Threading.Tasks.Task <BookingBusiness> CreateAsync(BookingBusiness bookingBusinessToCreate, CancellationToken cancellationToken) { this.ContentType = "application/json"; this.Method = "POST"; var newEntity = await this.SendAsync <BookingBusiness>(bookingBusinessToCreate, cancellationToken).ConfigureAwait(false); this.InitializeCollectionProperties(newEntity); return(newEntity); }
/// <summary> /// Creates the specified BookingBusiness using POST. /// </summary> /// <param name="bookingBusinessToCreate">The BookingBusiness to create.</param> /// <returns>The created BookingBusiness.</returns> public System.Threading.Tasks.Task <BookingBusiness> CreateAsync(BookingBusiness bookingBusinessToCreate) { return(this.CreateAsync(bookingBusinessToCreate, CancellationToken.None)); }
/// <summary> /// Initializes any collection properties after deserialization, like next requests for paging. /// </summary> /// <param name="bookingBusinessToInitialize">The <see cref="BookingBusiness"/> with the collection properties to initialize.</param> private void InitializeCollectionProperties(BookingBusiness bookingBusinessToInitialize) { if (bookingBusinessToInitialize != null && bookingBusinessToInitialize.AdditionalData != null) { if (bookingBusinessToInitialize.Appointments != null && bookingBusinessToInitialize.Appointments.CurrentPage != null) { bookingBusinessToInitialize.Appointments.AdditionalData = bookingBusinessToInitialize.AdditionalData; object nextPageLink; bookingBusinessToInitialize.AdditionalData.TryGetValue("*****@*****.**", out nextPageLink); var nextPageLinkString = nextPageLink as string; if (!string.IsNullOrEmpty(nextPageLinkString)) { bookingBusinessToInitialize.Appointments.InitializeNextPageRequest( this.Client, nextPageLinkString); } } if (bookingBusinessToInitialize.CalendarView != null && bookingBusinessToInitialize.CalendarView.CurrentPage != null) { bookingBusinessToInitialize.CalendarView.AdditionalData = bookingBusinessToInitialize.AdditionalData; object nextPageLink; bookingBusinessToInitialize.AdditionalData.TryGetValue("*****@*****.**", out nextPageLink); var nextPageLinkString = nextPageLink as string; if (!string.IsNullOrEmpty(nextPageLinkString)) { bookingBusinessToInitialize.CalendarView.InitializeNextPageRequest( this.Client, nextPageLinkString); } } if (bookingBusinessToInitialize.Customers != null && bookingBusinessToInitialize.Customers.CurrentPage != null) { bookingBusinessToInitialize.Customers.AdditionalData = bookingBusinessToInitialize.AdditionalData; object nextPageLink; bookingBusinessToInitialize.AdditionalData.TryGetValue("*****@*****.**", out nextPageLink); var nextPageLinkString = nextPageLink as string; if (!string.IsNullOrEmpty(nextPageLinkString)) { bookingBusinessToInitialize.Customers.InitializeNextPageRequest( this.Client, nextPageLinkString); } } if (bookingBusinessToInitialize.Services != null && bookingBusinessToInitialize.Services.CurrentPage != null) { bookingBusinessToInitialize.Services.AdditionalData = bookingBusinessToInitialize.AdditionalData; object nextPageLink; bookingBusinessToInitialize.AdditionalData.TryGetValue("*****@*****.**", out nextPageLink); var nextPageLinkString = nextPageLink as string; if (!string.IsNullOrEmpty(nextPageLinkString)) { bookingBusinessToInitialize.Services.InitializeNextPageRequest( this.Client, nextPageLinkString); } } if (bookingBusinessToInitialize.StaffMembers != null && bookingBusinessToInitialize.StaffMembers.CurrentPage != null) { bookingBusinessToInitialize.StaffMembers.AdditionalData = bookingBusinessToInitialize.AdditionalData; object nextPageLink; bookingBusinessToInitialize.AdditionalData.TryGetValue("*****@*****.**", out nextPageLink); var nextPageLinkString = nextPageLink as string; if (!string.IsNullOrEmpty(nextPageLinkString)) { bookingBusinessToInitialize.StaffMembers.InitializeNextPageRequest( this.Client, nextPageLinkString); } } } }
/// <summary> /// Adds the specified BookingBusiness to the collection via POST. /// </summary> /// <param name="bookingBusiness">The BookingBusiness to add.</param> /// <param name="cancellationToken">The <see cref="CancellationToken"/> for the request.</param> /// <returns>The created BookingBusiness.</returns> public System.Threading.Tasks.Task <BookingBusiness> AddAsync(BookingBusiness bookingBusiness, CancellationToken cancellationToken) { this.ContentType = "application/json"; this.Method = "POST"; return(this.SendAsync <BookingBusiness>(bookingBusiness, cancellationToken)); }
/// <summary> /// Adds the specified BookingBusiness to the collection via POST. /// </summary> /// <param name="bookingBusiness">The BookingBusiness to add.</param> /// <returns>The created BookingBusiness.</returns> public System.Threading.Tasks.Task <BookingBusiness> AddAsync(BookingBusiness bookingBusiness) { return(this.AddAsync(bookingBusiness, CancellationToken.None)); }