/// <summary> /// Initiates the asynchronous execution of the RestoreDBClusterToPointInTime operation. /// </summary> /// /// <param name="request">Container for the necessary parameters to execute the RestoreDBClusterToPointInTime operation.</param> /// <param name="cancellationToken"> /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// </param> /// <returns>The task object representing the asynchronous operation.</returns> public Task<RestoreDBClusterToPointInTimeResponse> RestoreDBClusterToPointInTimeAsync(RestoreDBClusterToPointInTimeRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var marshaller = new RestoreDBClusterToPointInTimeRequestMarshaller(); var unmarshaller = RestoreDBClusterToPointInTimeResponseUnmarshaller.Instance; return InvokeAsync<RestoreDBClusterToPointInTimeRequest,RestoreDBClusterToPointInTimeResponse>(request, marshaller, unmarshaller, cancellationToken); }
/// <summary> /// Restores a DB cluster to an arbitrary point in time. Users can restore to any point /// in time before <code>LatestRestorableTime</code> for up to <code>BackupRetentionPeriod</code> /// days. The target DB cluster is created from the source DB cluster with the same configuration /// as the original DB cluster, except that the new DB cluster is created with the default /// DB security group. /// /// /// <para> /// For more information on Amazon Aurora, see <a href="http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Aurora.html">Aurora /// on Amazon RDS</a> in the <i>Amazon RDS User Guide.</i> /// </para> /// </summary> /// <param name="request">Container for the necessary parameters to execute the RestoreDBClusterToPointInTime service method.</param> /// /// <returns>The response from the RestoreDBClusterToPointInTime service method, as returned by RDS.</returns> /// <exception cref="Amazon.RDS.Model.DBClusterAlreadyExistsException"> /// User already has a DB cluster with the given identifier. /// </exception> /// <exception cref="Amazon.RDS.Model.DBClusterNotFoundException"> /// <i>DBClusterIdentifier</i> does not refer to an existing DB cluster. /// </exception> /// <exception cref="Amazon.RDS.Model.DBClusterQuotaExceededException"> /// User attempted to create a new DB cluster and the user has already reached the maximum /// allowed DB cluster quota. /// </exception> /// <exception cref="Amazon.RDS.Model.DBClusterSnapshotNotFoundException"> /// <i>DBClusterSnapshotIdentifier</i> does not refer to an existing DB cluster snapshot. /// </exception> /// <exception cref="Amazon.RDS.Model.DBSubnetGroupNotFoundException"> /// <i>DBSubnetGroupName</i> does not refer to an existing DB subnet group. /// </exception> /// <exception cref="Amazon.RDS.Model.DBSubnetGroupNotFoundException"> /// <i>DBSubnetGroupName</i> does not refer to an existing DB subnet group. /// </exception> /// <exception cref="Amazon.RDS.Model.InsufficientDBClusterCapacityException"> /// The DB cluster does not have enough capacity for the current operation. /// </exception> /// <exception cref="Amazon.RDS.Model.InvalidDBClusterSnapshotStateException"> /// The supplied value is not a valid DB cluster snapshot state. /// </exception> /// <exception cref="Amazon.RDS.Model.InvalidDBSnapshotStateException"> /// The state of the DB snapshot does not allow deletion. /// </exception> /// <exception cref="Amazon.RDS.Model.InvalidRestoreException"> /// Cannot restore from vpc backup to non-vpc DB instance. /// </exception> /// <exception cref="Amazon.RDS.Model.InvalidSubnetException"> /// The requested subnet is invalid, or multiple subnets were requested that are not /// all in a common VPC. /// </exception> /// <exception cref="Amazon.RDS.Model.InvalidVPCNetworkStateException"> /// DB subnet group does not cover all Availability Zones after it is created because /// users' change. /// </exception> /// <exception cref="Amazon.RDS.Model.KMSKeyNotAccessibleException"> /// Error accessing KMS key. /// </exception> /// <exception cref="Amazon.RDS.Model.OptionGroupNotFoundException"> /// The specified option group could not be found. /// </exception> /// <exception cref="Amazon.RDS.Model.StorageQuotaExceededException"> /// Request would result in user exceeding the allowed amount of storage available across /// all DB instances. /// </exception> /// <exception cref="Amazon.RDS.Model.StorageQuotaExceededException"> /// Request would result in user exceeding the allowed amount of storage available across /// all DB instances. /// </exception> public RestoreDBClusterToPointInTimeResponse RestoreDBClusterToPointInTime(RestoreDBClusterToPointInTimeRequest request) { var marshaller = new RestoreDBClusterToPointInTimeRequestMarshaller(); var unmarshaller = RestoreDBClusterToPointInTimeResponseUnmarshaller.Instance; return Invoke<RestoreDBClusterToPointInTimeRequest,RestoreDBClusterToPointInTimeResponse>(request, marshaller, unmarshaller); }
public object Execute(ExecutorContext context) { var cmdletContext = context as CmdletContext; // create request var request = new Amazon.RDS.Model.RestoreDBClusterToPointInTimeRequest(); if (cmdletContext.BacktrackWindow != null) { request.BacktrackWindow = cmdletContext.BacktrackWindow.Value; } if (cmdletContext.CopyTagsToSnapshot != null) { request.CopyTagsToSnapshot = cmdletContext.CopyTagsToSnapshot.Value; } if (cmdletContext.DBClusterIdentifier != null) { request.DBClusterIdentifier = cmdletContext.DBClusterIdentifier; } if (cmdletContext.DBClusterParameterGroupName != null) { request.DBClusterParameterGroupName = cmdletContext.DBClusterParameterGroupName; } if (cmdletContext.DBSubnetGroupName != null) { request.DBSubnetGroupName = cmdletContext.DBSubnetGroupName; } if (cmdletContext.DeletionProtection != null) { request.DeletionProtection = cmdletContext.DeletionProtection.Value; } if (cmdletContext.Domain != null) { request.Domain = cmdletContext.Domain; } if (cmdletContext.DomainIAMRoleName != null) { request.DomainIAMRoleName = cmdletContext.DomainIAMRoleName; } if (cmdletContext.EnableCloudwatchLogsExport != null) { request.EnableCloudwatchLogsExports = cmdletContext.EnableCloudwatchLogsExport; } if (cmdletContext.EnableIAMDatabaseAuthentication != null) { request.EnableIAMDatabaseAuthentication = cmdletContext.EnableIAMDatabaseAuthentication.Value; } if (cmdletContext.KmsKeyId != null) { request.KmsKeyId = cmdletContext.KmsKeyId; } if (cmdletContext.OptionGroupName != null) { request.OptionGroupName = cmdletContext.OptionGroupName; } if (cmdletContext.Port != null) { request.Port = cmdletContext.Port.Value; } if (cmdletContext.UtcRestoreToTime != null) { request.RestoreToTimeUtc = cmdletContext.UtcRestoreToTime.Value; } if (cmdletContext.RestoreType != null) { request.RestoreType = cmdletContext.RestoreType; } if (cmdletContext.SourceDBClusterIdentifier != null) { request.SourceDBClusterIdentifier = cmdletContext.SourceDBClusterIdentifier; } if (cmdletContext.Tag != null) { request.Tags = cmdletContext.Tag; } if (cmdletContext.UseLatestRestorableTime != null) { request.UseLatestRestorableTime = cmdletContext.UseLatestRestorableTime.Value; } if (cmdletContext.VpcSecurityGroupId != null) { request.VpcSecurityGroupIds = cmdletContext.VpcSecurityGroupId; } #pragma warning disable CS0618, CS0612 //A class member was marked with the Obsolete attribute if (cmdletContext.RestoreToTime != null) { if (cmdletContext.UtcRestoreToTime != null) { throw new System.ArgumentException("Parameters RestoreToTime and UtcRestoreToTime are mutually exclusive.", nameof(this.RestoreToTime)); } request.RestoreToTime = cmdletContext.RestoreToTime.Value; } #pragma warning restore CS0618, CS0612 //A class member was marked with the Obsolete attribute 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); }
private Amazon.RDS.Model.RestoreDBClusterToPointInTimeResponse CallAWSServiceOperation(IAmazonRDS client, Amazon.RDS.Model.RestoreDBClusterToPointInTimeRequest request) { Utils.Common.WriteVerboseEndpointMessage(this, client.Config, "Amazon Relational Database Service", "RestoreDBClusterToPointInTime"); try { #if DESKTOP return(client.RestoreDBClusterToPointInTime(request)); #elif CORECLR return(client.RestoreDBClusterToPointInTimeAsync(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; } }
/// <summary> /// Initiates the asynchronous execution of the RestoreDBClusterToPointInTime operation. /// </summary> /// /// <param name="request">Container for the necessary parameters to execute the RestoreDBClusterToPointInTime operation on AmazonRDSClient.</param> /// <param name="callback">An AsyncCallback delegate that is invoked when the operation completes.</param> /// <param name="state">A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property.</param> /// /// <returns>An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndRestoreDBClusterToPointInTime /// operation.</returns> public IAsyncResult BeginRestoreDBClusterToPointInTime(RestoreDBClusterToPointInTimeRequest request, AsyncCallback callback, object state) { var marshaller = new RestoreDBClusterToPointInTimeRequestMarshaller(); var unmarshaller = RestoreDBClusterToPointInTimeResponseUnmarshaller.Instance; return BeginInvoke<RestoreDBClusterToPointInTimeRequest>(request, marshaller, unmarshaller, callback, state); }