private Amazon.AccessAnalyzer.Model.StartPolicyGenerationResponse CallAWSServiceOperation(IAmazonAccessAnalyzer client, Amazon.AccessAnalyzer.Model.StartPolicyGenerationRequest request) { Utils.Common.WriteVerboseEndpointMessage(this, client.Config, "AWS IAM Access Analyzer", "StartPolicyGeneration"); try { #if DESKTOP return(client.StartPolicyGeneration(request)); #elif CORECLR return(client.StartPolicyGenerationAsync(request).GetAwaiter().GetResult()); #else #error "Unknown build edition" #endif } catch (AmazonServiceException exc) { var webException = exc.InnerException as System.Net.WebException; if (webException != null) { throw new Exception(Utils.Common.FormatNameResolutionFailureMessage(client.Config, webException.Message), webException); } throw; } }
public object Execute(ExecutorContext context) { var cmdletContext = context as CmdletContext; // create request var request = new Amazon.AccessAnalyzer.Model.StartPolicyGenerationRequest(); if (cmdletContext.ClientToken != null) { request.ClientToken = cmdletContext.ClientToken; } // populate CloudTrailDetails var requestCloudTrailDetailsIsNull = true; request.CloudTrailDetails = new Amazon.AccessAnalyzer.Model.CloudTrailDetails(); System.String requestCloudTrailDetails_cloudTrailDetails_AccessRole = null; if (cmdletContext.CloudTrailDetails_AccessRole != null) { requestCloudTrailDetails_cloudTrailDetails_AccessRole = cmdletContext.CloudTrailDetails_AccessRole; } if (requestCloudTrailDetails_cloudTrailDetails_AccessRole != null) { request.CloudTrailDetails.AccessRole = requestCloudTrailDetails_cloudTrailDetails_AccessRole; requestCloudTrailDetailsIsNull = false; } System.DateTime?requestCloudTrailDetails_cloudTrailDetails_EndTime = null; if (cmdletContext.CloudTrailDetails_EndTime != null) { requestCloudTrailDetails_cloudTrailDetails_EndTime = cmdletContext.CloudTrailDetails_EndTime.Value; } if (requestCloudTrailDetails_cloudTrailDetails_EndTime != null) { request.CloudTrailDetails.EndTime = requestCloudTrailDetails_cloudTrailDetails_EndTime.Value; requestCloudTrailDetailsIsNull = false; } System.DateTime?requestCloudTrailDetails_cloudTrailDetails_StartTime = null; if (cmdletContext.CloudTrailDetails_StartTime != null) { requestCloudTrailDetails_cloudTrailDetails_StartTime = cmdletContext.CloudTrailDetails_StartTime.Value; } if (requestCloudTrailDetails_cloudTrailDetails_StartTime != null) { request.CloudTrailDetails.StartTime = requestCloudTrailDetails_cloudTrailDetails_StartTime.Value; requestCloudTrailDetailsIsNull = false; } List <Amazon.AccessAnalyzer.Model.Trail> requestCloudTrailDetails_cloudTrailDetails_Trail = null; if (cmdletContext.CloudTrailDetails_Trail != null) { requestCloudTrailDetails_cloudTrailDetails_Trail = cmdletContext.CloudTrailDetails_Trail; } if (requestCloudTrailDetails_cloudTrailDetails_Trail != null) { request.CloudTrailDetails.Trails = requestCloudTrailDetails_cloudTrailDetails_Trail; requestCloudTrailDetailsIsNull = false; } // determine if request.CloudTrailDetails should be set to null if (requestCloudTrailDetailsIsNull) { request.CloudTrailDetails = null; } // populate PolicyGenerationDetails var requestPolicyGenerationDetailsIsNull = true; request.PolicyGenerationDetails = new Amazon.AccessAnalyzer.Model.PolicyGenerationDetails(); System.String requestPolicyGenerationDetails_policyGenerationDetails_PrincipalArn = null; if (cmdletContext.PolicyGenerationDetails_PrincipalArn != null) { requestPolicyGenerationDetails_policyGenerationDetails_PrincipalArn = cmdletContext.PolicyGenerationDetails_PrincipalArn; } if (requestPolicyGenerationDetails_policyGenerationDetails_PrincipalArn != null) { request.PolicyGenerationDetails.PrincipalArn = requestPolicyGenerationDetails_policyGenerationDetails_PrincipalArn; requestPolicyGenerationDetailsIsNull = false; } // determine if request.PolicyGenerationDetails should be set to null if (requestPolicyGenerationDetailsIsNull) { request.PolicyGenerationDetails = null; } CmdletOutput output; // issue call var client = Client ?? CreateClient(_CurrentCredentials, _RegionEndpoint); try { var response = CallAWSServiceOperation(client, request); object pipelineOutput = null; pipelineOutput = cmdletContext.Select(response, this); output = new CmdletOutput { PipelineOutput = pipelineOutput, ServiceResponse = response }; } catch (Exception e) { output = new CmdletOutput { ErrorResponse = e }; } return(output); }