text: // ------------------------------------------------------------------------------
  // Copyright (c) Microsoft Corporation.  All Rights Reserved.  Licensed under the MIT License.  See License in the project root for license information.
  // ------------------------------------------------------------------------------
  
  package com.microsoft.graph.requests.extensions;
  import com.microsoft.graph.models.extensions.WorkbookFunctionsAreasBody;
  import com.microsoft.graph.models.extensions.WorkbookFunctionResult;
  import com.microsoft.graph.requests.extensions.IWorkbookFunctionsAreasRequest;
  import com.microsoft.graph.requests.extensions.WorkbookFunctionsAreasRequest;
  
  import com.microsoft.graph.http.BaseCollectionRequest;
  import com.microsoft.graph.http.BaseRequest;
  import com.microsoft.graph.http.HttpMethod;
  import com.microsoft.graph.concurrency.ICallback;
  import com.microsoft.graph.core.ClientException;
  import com.microsoft.graph.core.IBaseClient;
  import com.microsoft.graph.http.BaseRequest;
  import com.microsoft.graph.http.HttpMethod;
  
  // **NOTE** This file was generated by a tool and any changes will be overwritten.
  
  /**
   * The class for the Workbook Functions Areas Request.
   */
  public class WorkbookFunctionsAreasRequest extends BaseRequest implements IWorkbookFunctionsAreasRequest {
      protected final WorkbookFunctionsAreasBody body;
  
      /**
       * The request for this WorkbookFunctionsAreas
       *
       * @param requestUrl     the request URL
       * @param client         the service client
       * @param requestOptions the options for this request
       */
      public WorkbookFunctionsAreasRequest(final String requestUrl, final IBaseClient client, final java.util.List<? extends com.microsoft.graph.options.Option> requestOptions) {
          super(requestUrl, client, requestOptions, WorkbookFunctionResult.class);
          body = new WorkbookFunctionsAreasBody();
      }
  
      public void post(final ICallback<? super WorkbookFunctionResult> callback) {
          send(HttpMethod.POST, callback, body);
      }
  
      public WorkbookFunctionResult post() throws ClientException {
          return send(HttpMethod.POST, body);
      }
  
      /**
       * Sets the select clause for the request
       *
       * @param value the select clause
       * @return the updated request
       */
      public IWorkbookFunctionsAreasRequest select(final String value) {
          getQueryOptions().add(new com.microsoft.graph.options.QueryOption("$select", value));
          return (WorkbookFunctionsAreasRequest)this;
      }
  
      /**
       * Sets the top value for the request
       *
       * @param value the max number of items to return
       * @return the updated request
       */
      public IWorkbookFunctionsAreasRequest top(final int value) {
          getQueryOptions().add(new com.microsoft.graph.options.QueryOption("$top", value+""));
          return (WorkbookFunctionsAreasRequest)this;
      }
  
      /**
       * Sets the expand clause for the request
       *
       * @param value the expand clause
       * @return the updated request
       */
      public IWorkbookFunctionsAreasRequest expand(final String value) {
          getQueryOptions().add(new com.microsoft.graph.options.QueryOption("$expand", value));
          return (WorkbookFunctionsAreasRequest)this;
      }
  
      /**
       * Sets the filter clause for the request
       *
       * @param value the filter clause
       * @return the updated request
       */
      public IWorkbookFunctionsAreasRequest filter(final String value) {
          getQueryOptions().add(new com.microsoft.graph.options.QueryOption("$filter", value));
          return (WorkbookFunctionsAreasRequest)this;
      }
  
  }
  