/// <summary> /// Initiates the asynchronous execution of the DetachVolume operation. /// </summary> /// /// <param name="request">Container for the necessary parameters to execute the DetachVolume 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<DetachVolumeResponse> DetachVolumeAsync(DetachVolumeRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var marshaller = new DetachVolumeRequestMarshaller(); var unmarshaller = DetachVolumeResponseUnmarshaller.Instance; return InvokeAsync<DetachVolumeRequest,DetachVolumeResponse>(request, marshaller, unmarshaller, cancellationToken); }
public void DetachVolumeMarshallTest() { var operation = service_model.FindOperation("DetachVolume"); var request = InstantiateClassGenerator.Execute<DetachVolumeRequest>(); var marshaller = new DetachVolumeRequestMarshaller(); var internalRequest = marshaller.Marshall(request); var validator = new AWSQueryValidator(internalRequest.Parameters, request, service_model, operation); validator.Validate(); var payloadResponse = new XmlSampleGenerator(service_model, operation).Execute(); UnmarshallerContext context = new EC2UnmarshallerContext(Utils.CreateStreamFromString(payloadResponse), false, new WebResponseData()); var response = DetachVolumeResponseUnmarshaller.Instance.Unmarshall(context) as DetachVolumeResponse; InstantiateClassGenerator.ValidateObjectFullyInstantiated(response); }
/// <summary> /// Detaches an EBS volume from an instance. Make sure to unmount any file systems on /// the device within your operating system before detaching the volume. Failure to do /// so results in the volume being stuck in a busy state while detaching. /// /// /// <para> /// If an Amazon EBS volume is the root device of an instance, it can't be detached while /// the instance is running. To detach the root volume, stop the instance first. /// </para> /// /// <para> /// When a volume with an AWS Marketplace product code is detached from an instance, the /// product code is no longer associated with the instance. /// </para> /// /// <para> /// For more information, see <a href="http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-detaching-volume.html">Detaching /// an Amazon EBS Volume</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>. /// </para> /// </summary> /// <param name="request">Container for the necessary parameters to execute the DetachVolume service method.</param> /// /// <returns>The response from the DetachVolume service method, as returned by EC2.</returns> public DetachVolumeResponse DetachVolume(DetachVolumeRequest request) { var marshaller = new DetachVolumeRequestMarshaller(); var unmarshaller = DetachVolumeResponseUnmarshaller.Instance; return Invoke<DetachVolumeRequest,DetachVolumeResponse>(request, marshaller, unmarshaller); }
/// <summary> /// Initiates the asynchronous execution of the DetachVolume operation. /// </summary> /// /// <param name="request">Container for the necessary parameters to execute the DetachVolume operation on AmazonEC2Client.</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 EndDetachVolume /// operation.</returns> public IAsyncResult BeginDetachVolume(DetachVolumeRequest request, AsyncCallback callback, object state) { var marshaller = new DetachVolumeRequestMarshaller(); var unmarshaller = DetachVolumeResponseUnmarshaller.Instance; return BeginInvoke<DetachVolumeRequest>(request, marshaller, unmarshaller, callback, state); }
IAsyncResult invokeDetachVolume(DetachVolumeRequest detachVolumeRequest, AsyncCallback callback, object state, bool synchronized) { IRequest irequest = new DetachVolumeRequestMarshaller().Marshall(detachVolumeRequest); var unmarshaller = DetachVolumeResponseUnmarshaller.GetInstance(); AsyncResult result = new AsyncResult(irequest, callback, state, synchronized, signer, unmarshaller); Invoke(result); return result; }
/// <summary> /// <para>Detaches an Amazon EBS volume from an instance. Make sure to unmount any file systems on the device within your operating system /// before detaching the volume. Failure to do so results in the volume being stuck in a busy state while detaching.</para> <para>If an Amazon /// EBS volume is the root device of an instance, it can't be detached while the instance is running. To detach the root volume, stop the /// instance first.</para> <para>If the root volume is detached from an instance with an AWS Marketplace product code, then the AWS Marketplace /// product codes from that volume are no longer associated with the instance.</para> <para>For more information, see <a href="http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-detaching-volume.html">Detaching an Amazon EBS Volume</a> in the <i>Amazon /// Elastic Compute Cloud User Guide</i> .</para> /// </summary> /// /// <param name="detachVolumeRequest">Container for the necessary parameters to execute the DetachVolume service method on AmazonEC2.</param> /// /// <returns>The response from the DetachVolume service method, as returned by AmazonEC2.</returns> /// <param name="cancellationToken"> /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// </param> public Task<DetachVolumeResponse> DetachVolumeAsync(DetachVolumeRequest detachVolumeRequest, CancellationToken cancellationToken = default(CancellationToken)) { var marshaller = new DetachVolumeRequestMarshaller(); var unmarshaller = DetachVolumeResponseUnmarshaller.GetInstance(); return Invoke<IRequest, DetachVolumeRequest, DetachVolumeResponse>(detachVolumeRequest, marshaller, unmarshaller, signer, cancellationToken); }
/// <summary> /// Initiates the asynchronous execution of the DetachVolume operation. /// <seealso cref="Amazon.EC2.IAmazonEC2.DetachVolume"/> /// </summary> /// /// <param name="request">Container for the necessary parameters to execute the DetachVolume 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 async Task<DetachVolumeResponse> DetachVolumeAsync(DetachVolumeRequest request, CancellationToken cancellationToken = default(CancellationToken)) { var marshaller = new DetachVolumeRequestMarshaller(); var unmarshaller = DetachVolumeResponseUnmarshaller.GetInstance(); var response = await Invoke<IRequest, DetachVolumeRequest, DetachVolumeResponse>(request, marshaller, unmarshaller, signer, cancellationToken) .ConfigureAwait(continueOnCapturedContext: false); return response; }