private Amazon.FSx.Model.CreateVolumeFromBackupResponse CallAWSServiceOperation(IAmazonFSx client, Amazon.FSx.Model.CreateVolumeFromBackupRequest request) { Utils.Common.WriteVerboseEndpointMessage(this, client.Config, "Amazon FSx", "CreateVolumeFromBackup"); try { #if DESKTOP return(client.CreateVolumeFromBackup(request)); #elif CORECLR return(client.CreateVolumeFromBackupAsync(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.FSx.Model.CreateVolumeFromBackupRequest(); if (cmdletContext.BackupId != null) { request.BackupId = cmdletContext.BackupId; } if (cmdletContext.ClientRequestToken != null) { request.ClientRequestToken = cmdletContext.ClientRequestToken; } if (cmdletContext.Name != null) { request.Name = cmdletContext.Name; } // populate OntapConfiguration var requestOntapConfigurationIsNull = true; request.OntapConfiguration = new Amazon.FSx.Model.CreateOntapVolumeConfiguration(); System.String requestOntapConfiguration_ontapConfiguration_JunctionPath = null; if (cmdletContext.OntapConfiguration_JunctionPath != null) { requestOntapConfiguration_ontapConfiguration_JunctionPath = cmdletContext.OntapConfiguration_JunctionPath; } if (requestOntapConfiguration_ontapConfiguration_JunctionPath != null) { request.OntapConfiguration.JunctionPath = requestOntapConfiguration_ontapConfiguration_JunctionPath; requestOntapConfigurationIsNull = false; } Amazon.FSx.SecurityStyle requestOntapConfiguration_ontapConfiguration_SecurityStyle = null; if (cmdletContext.OntapConfiguration_SecurityStyle != null) { requestOntapConfiguration_ontapConfiguration_SecurityStyle = cmdletContext.OntapConfiguration_SecurityStyle; } if (requestOntapConfiguration_ontapConfiguration_SecurityStyle != null) { request.OntapConfiguration.SecurityStyle = requestOntapConfiguration_ontapConfiguration_SecurityStyle; requestOntapConfigurationIsNull = false; } System.Int32?requestOntapConfiguration_ontapConfiguration_SizeInMegabyte = null; if (cmdletContext.OntapConfiguration_SizeInMegabyte != null) { requestOntapConfiguration_ontapConfiguration_SizeInMegabyte = cmdletContext.OntapConfiguration_SizeInMegabyte.Value; } if (requestOntapConfiguration_ontapConfiguration_SizeInMegabyte != null) { request.OntapConfiguration.SizeInMegabytes = requestOntapConfiguration_ontapConfiguration_SizeInMegabyte.Value; requestOntapConfigurationIsNull = false; } System.Boolean?requestOntapConfiguration_ontapConfiguration_StorageEfficiencyEnabled = null; if (cmdletContext.OntapConfiguration_StorageEfficiencyEnabled != null) { requestOntapConfiguration_ontapConfiguration_StorageEfficiencyEnabled = cmdletContext.OntapConfiguration_StorageEfficiencyEnabled.Value; } if (requestOntapConfiguration_ontapConfiguration_StorageEfficiencyEnabled != null) { request.OntapConfiguration.StorageEfficiencyEnabled = requestOntapConfiguration_ontapConfiguration_StorageEfficiencyEnabled.Value; requestOntapConfigurationIsNull = false; } System.String requestOntapConfiguration_ontapConfiguration_StorageVirtualMachineId = null; if (cmdletContext.OntapConfiguration_StorageVirtualMachineId != null) { requestOntapConfiguration_ontapConfiguration_StorageVirtualMachineId = cmdletContext.OntapConfiguration_StorageVirtualMachineId; } if (requestOntapConfiguration_ontapConfiguration_StorageVirtualMachineId != null) { request.OntapConfiguration.StorageVirtualMachineId = requestOntapConfiguration_ontapConfiguration_StorageVirtualMachineId; requestOntapConfigurationIsNull = false; } Amazon.FSx.Model.TieringPolicy requestOntapConfiguration_ontapConfiguration_TieringPolicy = null; // populate TieringPolicy var requestOntapConfiguration_ontapConfiguration_TieringPolicyIsNull = true; requestOntapConfiguration_ontapConfiguration_TieringPolicy = new Amazon.FSx.Model.TieringPolicy(); System.Int32?requestOntapConfiguration_ontapConfiguration_TieringPolicy_tieringPolicy_CoolingPeriod = null; if (cmdletContext.TieringPolicy_CoolingPeriod != null) { requestOntapConfiguration_ontapConfiguration_TieringPolicy_tieringPolicy_CoolingPeriod = cmdletContext.TieringPolicy_CoolingPeriod.Value; } if (requestOntapConfiguration_ontapConfiguration_TieringPolicy_tieringPolicy_CoolingPeriod != null) { requestOntapConfiguration_ontapConfiguration_TieringPolicy.CoolingPeriod = requestOntapConfiguration_ontapConfiguration_TieringPolicy_tieringPolicy_CoolingPeriod.Value; requestOntapConfiguration_ontapConfiguration_TieringPolicyIsNull = false; } Amazon.FSx.TieringPolicyName requestOntapConfiguration_ontapConfiguration_TieringPolicy_tieringPolicy_Name = null; if (cmdletContext.TieringPolicy_Name != null) { requestOntapConfiguration_ontapConfiguration_TieringPolicy_tieringPolicy_Name = cmdletContext.TieringPolicy_Name; } if (requestOntapConfiguration_ontapConfiguration_TieringPolicy_tieringPolicy_Name != null) { requestOntapConfiguration_ontapConfiguration_TieringPolicy.Name = requestOntapConfiguration_ontapConfiguration_TieringPolicy_tieringPolicy_Name; requestOntapConfiguration_ontapConfiguration_TieringPolicyIsNull = false; } // determine if requestOntapConfiguration_ontapConfiguration_TieringPolicy should be set to null if (requestOntapConfiguration_ontapConfiguration_TieringPolicyIsNull) { requestOntapConfiguration_ontapConfiguration_TieringPolicy = null; } if (requestOntapConfiguration_ontapConfiguration_TieringPolicy != null) { request.OntapConfiguration.TieringPolicy = requestOntapConfiguration_ontapConfiguration_TieringPolicy; requestOntapConfigurationIsNull = false; } // determine if request.OntapConfiguration should be set to null if (requestOntapConfigurationIsNull) { request.OntapConfiguration = null; } if (cmdletContext.Tag != null) { request.Tags = cmdletContext.Tag; } 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); }