pathParameters, $this->requestAdapter); } /** * Provides operations to call the my method. */ public function my(): MyRequestBuilder { return new MyRequestBuilder($this->pathParameters, $this->requestAdapter); } /** * Provides operations to manage the collection of privilegedRoleAssignmentRequest entities. * @param string $privilegedRoleAssignmentRequestId The unique identifier of privilegedRoleAssignmentRequest * @return PrivilegedRoleAssignmentRequestItemRequestBuilder */ public function byPrivilegedRoleAssignmentRequestId(string $privilegedRoleAssignmentRequestId): PrivilegedRoleAssignmentRequestItemRequestBuilder { $urlTplParams = $this->pathParameters; $urlTplParams['privilegedRoleAssignmentRequest%2Did'] = $privilegedRoleAssignmentRequestId; return new PrivilegedRoleAssignmentRequestItemRequestBuilder($urlTplParams, $this->requestAdapter); } /** * Instantiates a new PrivilegedRoleAssignmentRequestsRequestBuilder and sets the default values. * @param array|string $pathParametersOrRawUrl Path parameters for the request or a String representing the raw URL. * @param RequestAdapter $requestAdapter The request adapter to use to execute the requests. */ public function __construct($pathParametersOrRawUrl, RequestAdapter $requestAdapter) { parent::__construct($requestAdapter, [], '{+baseurl}/privilegedRoleAssignmentRequests{?%24count,%24expand,%24filter,%24orderby,%24search,%24select,%24skip,%24top}'); if (is_array($pathParametersOrRawUrl)) { $this->pathParameters = $pathParametersOrRawUrl; } else { $this->pathParameters = ['request-raw-url' => $pathParametersOrRawUrl]; } } /** * Get entities from privilegedRoleAssignmentRequests * @param PrivilegedRoleAssignmentRequestsRequestBuilderGetRequestConfiguration|null $requestConfiguration Configuration for the request such as headers, query parameters, and middleware options. * @return Promise * @throws Exception */ public function get(?PrivilegedRoleAssignmentRequestsRequestBuilderGetRequestConfiguration $requestConfiguration = null): Promise { $requestInfo = $this->toGetRequestInformation($requestConfiguration); $errorMappings = [ 'XXX' => [ODataError::class, 'createFromDiscriminatorValue'], ]; return $this->requestAdapter->sendAsync($requestInfo, [PrivilegedRoleAssignmentRequestCollectionResponse::class, 'createFromDiscriminatorValue'], $errorMappings); } /** * Add new entity to privilegedRoleAssignmentRequests * @param PrivilegedRoleAssignmentRequest $body The request body * @param PrivilegedRoleAssignmentRequestsRequestBuilderPostRequestConfiguration|null $requestConfiguration Configuration for the request such as headers, query parameters, and middleware options. * @return Promise * @throws Exception */ public function post(PrivilegedRoleAssignmentRequest $body, ?PrivilegedRoleAssignmentRequestsRequestBuilderPostRequestConfiguration $requestConfiguration = null): Promise { $requestInfo = $this->toPostRequestInformation($body, $requestConfiguration); $errorMappings = [ 'XXX' => [ODataError::class, 'createFromDiscriminatorValue'], ]; return $this->requestAdapter->sendAsync($requestInfo, [PrivilegedRoleAssignmentRequest::class, 'createFromDiscriminatorValue'], $errorMappings); } /** * Get entities from privilegedRoleAssignmentRequests * @param PrivilegedRoleAssignmentRequestsRequestBuilderGetRequestConfiguration|null $requestConfiguration Configuration for the request such as headers, query parameters, and middleware options. * @return RequestInformation */ public function toGetRequestInformation(?PrivilegedRoleAssignmentRequestsRequestBuilderGetRequestConfiguration $requestConfiguration = null): RequestInformation { $requestInfo = new RequestInformation(); $requestInfo->urlTemplate = $this->urlTemplate; $requestInfo->pathParameters = $this->pathParameters; $requestInfo->httpMethod = HttpMethod::GET; if ($requestConfiguration !== null) { $requestInfo->addHeaders($requestConfiguration->headers); if ($requestConfiguration->queryParameters !== null) { $requestInfo->setQueryParameters($requestConfiguration->queryParameters); } $requestInfo->addRequestOptions(...$requestConfiguration->options); } $requestInfo->tryAddHeader('Accept', "application/json"); return $requestInfo; } /** * Add new entity to privilegedRoleAssignmentRequests * @param PrivilegedRoleAssignmentRequest $body The request body * @param PrivilegedRoleAssignmentRequestsRequestBuilderPostRequestConfiguration|null $requestConfiguration Configuration for the request such as headers, query parameters, and middleware options. * @return RequestInformation */ public function toPostRequestInformation(PrivilegedRoleAssignmentRequest $body, ?PrivilegedRoleAssignmentRequestsRequestBuilderPostRequestConfiguration $requestConfiguration = null): RequestInformation { $requestInfo = new RequestInformation(); $requestInfo->urlTemplate = $this->urlTemplate; $requestInfo->pathParameters = $this->pathParameters; $requestInfo->httpMethod = HttpMethod::POST; if ($requestConfiguration !== null) { $requestInfo->addHeaders($requestConfiguration->headers); $requestInfo->addRequestOptions(...$requestConfiguration->options); } $requestInfo->tryAddHeader('Accept', "application/json"); $requestInfo->setContentFromParsable($this->requestAdapter, "application/json", $body); return $requestInfo; } /** * Returns a request builder with the provided arbitrary URL. Using this method means any other path or query parameters are ignored. * @param string $rawUrl The raw URL to use for the request builder. * @return PrivilegedRoleAssignmentRequestsRequestBuilder */ public function withUrl(string $rawUrl): PrivilegedRoleAssignmentRequestsRequestBuilder { return new PrivilegedRoleAssignmentRequestsRequestBuilder($rawUrl, $this->requestAdapter); } }