Ejemplo n.º 1
0
        /// <summary>
        /// Create new navigation property to stages for identityGovernance
        /// <param name="body"></param>
        /// <param name="requestConfiguration">Configuration for the request such as headers, query parameters, and middleware options.</param>
        /// </summary>
        public RequestInformation CreatePostRequestInformation(ApprovalStage body, Action <StagesRequestBuilderPostRequestConfiguration> requestConfiguration = default)
        {
            _ = body ?? throw new ArgumentNullException(nameof(body));
            var requestInfo = new RequestInformation {
                HttpMethod     = Method.POST,
                UrlTemplate    = UrlTemplate,
                PathParameters = PathParameters,
            };

            requestInfo.SetContentFromParsable(RequestAdapter, "application/json", body);
            if (requestConfiguration != null)
            {
                var requestConfig = new StagesRequestBuilderPostRequestConfiguration();
                requestConfiguration.Invoke(requestConfig);
                requestInfo.AddRequestOptions(requestConfig.Options);
                requestInfo.AddHeaders(requestConfig.Headers);
            }
            return(requestInfo);
        }
Ejemplo n.º 2
0
     private void FixupApprovalStage(ApprovalStage previousValue, bool skipKeys = false)
     {
         if (IsDeserializing)
         {
             return;
         }
 
         if (previousValue != null && previousValue.Logs.Contains(this))
         {
             previousValue.Logs.Remove(this);
         }
 
         if (ApprovalStage != null)
         {
             if (!ApprovalStage.Logs.Contains(this))
             {
                 ApprovalStage.Logs.Add(this);
             }
 
             ApprovalStageId = ApprovalStage.Id;
         }
         else if (!skipKeys)
         {
             ApprovalStageId = null;
         }
 
         if (ChangeTracker.ChangeTrackingEnabled)
         {
             if (ChangeTracker.OriginalValues.ContainsKey("ApprovalStage")
                 && (ChangeTracker.OriginalValues["ApprovalStage"] == ApprovalStage))
             {
                 ChangeTracker.OriginalValues.Remove("ApprovalStage");
             }
             else
             {
                 ChangeTracker.RecordOriginalValue("ApprovalStage", previousValue);
             }
             if (ApprovalStage != null && !ApprovalStage.ChangeTracker.ChangeTrackingEnabled)
             {
                 ApprovalStage.StartTracking();
             }
         }
     }