public void ScheduleKeyDeletionMarshallTest() { var request = InstantiateClassGenerator.Execute <ScheduleKeyDeletionRequest>(); var marshaller = new ScheduleKeyDeletionRequestMarshaller(); var internalRequest = marshaller.Marshall(request); var jsonRequest = UTF8Encoding.UTF8.GetString(internalRequest.Content); Comparer.CompareObjectToJson <ScheduleKeyDeletionRequest>(request, jsonRequest); var webResponse = new WebResponseData { Headers = { { "x-amzn-RequestId", Guid.NewGuid().ToString() }, { "x-amz-crc32", "0" } } }; var jsonResponse = new JsonSampleGenerator(service_model, service_model.FindOperation("ScheduleKeyDeletion").ResponseStructure).Execute(); webResponse.Headers.Add("Content-Length", UTF8Encoding.UTF8.GetBytes(jsonResponse).Length.ToString()); UnmarshallerContext context = new JsonUnmarshallerContext(Utils.CreateStreamFromString(jsonResponse), false, webResponse); var response = ScheduleKeyDeletionResponseUnmarshaller.Instance.Unmarshall(context) as ScheduleKeyDeletionResponse; InstantiateClassGenerator.ValidateObjectFullyInstantiated(response); }
/// <summary> /// Initiates the asynchronous execution of the ScheduleKeyDeletion operation. /// </summary> /// /// <param name="request">Container for the necessary parameters to execute the ScheduleKeyDeletion 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<ScheduleKeyDeletionResponse> ScheduleKeyDeletionAsync(ScheduleKeyDeletionRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var marshaller = new ScheduleKeyDeletionRequestMarshaller(); var unmarshaller = ScheduleKeyDeletionResponseUnmarshaller.Instance; return InvokeAsync<ScheduleKeyDeletionRequest,ScheduleKeyDeletionResponse>(request, marshaller, unmarshaller, cancellationToken); }
/// <summary> /// Initiates the asynchronous execution of the ScheduleKeyDeletion operation. /// </summary> /// /// <param name="request">Container for the necessary parameters to execute the ScheduleKeyDeletion operation on AmazonKeyManagementServiceClient.</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 EndScheduleKeyDeletion /// operation.</returns> public IAsyncResult BeginScheduleKeyDeletion(ScheduleKeyDeletionRequest request, AsyncCallback callback, object state) { var marshaller = new ScheduleKeyDeletionRequestMarshaller(); var unmarshaller = ScheduleKeyDeletionResponseUnmarshaller.Instance; return BeginInvoke<ScheduleKeyDeletionRequest>(request, marshaller, unmarshaller, callback, state); }
/// <summary> /// Schedules the deletion of a customer master key (CMK). You may provide a waiting period, /// specified in days, before deletion occurs. If you do not provide a waiting period, /// the default period of 30 days is used. When this operation is successful, the state /// of the CMK changes to <code>PendingDeletion</code>. Before the waiting period ends, /// you can use <a>CancelKeyDeletion</a> to cancel the deletion of the CMK. After the /// waiting period ends, AWS KMS deletes the CMK and all AWS KMS data associated with /// it, including all aliases that refer to it. /// /// <important> /// <para> /// Deleting a CMK is a destructive and potentially dangerous operation. When a CMK is /// deleted, all data that was encrypted under the CMK is rendered unrecoverable. To restrict /// the use of a CMK without deleting it, use <a>DisableKey</a>. /// </para> /// </important> /// <para> /// For more information about scheduling a CMK for deletion, see <a href="http://docs.aws.amazon.com/kms/latest/developerguide/deleting-keys.html">Deleting /// Customer Master Keys</a> in the <i>AWS Key Management Service Developer Guide</i>. /// </para> /// </summary> /// <param name="request">Container for the necessary parameters to execute the ScheduleKeyDeletion service method.</param> /// /// <returns>The response from the ScheduleKeyDeletion service method, as returned by KeyManagementService.</returns> /// <exception cref="Amazon.KeyManagementService.Model.DependencyTimeoutException"> /// The system timed out while trying to fulfill the request. The request can be retried. /// </exception> /// <exception cref="Amazon.KeyManagementService.Model.InvalidArnException"> /// The request was rejected because a specified ARN was not valid. /// </exception> /// <exception cref="Amazon.KeyManagementService.Model.KMSInternalException"> /// The request was rejected because an internal exception occurred. The request can be /// retried. /// </exception> /// <exception cref="Amazon.KeyManagementService.Model.KMSInvalidStateException"> /// The request was rejected because the state of the specified resource is not valid /// for this request. /// /// /// <para> /// For more information about how key state affects the use of a CMK, see <a href="http://docs.aws.amazon.com/kms/latest/developerguide/key-state.html">How /// Key State Affects Use of a Customer Master Key</a> in the <i>AWS Key Management Service /// Developer Guide</i>. /// </para> /// </exception> /// <exception cref="Amazon.KeyManagementService.Model.NotFoundException"> /// The request was rejected because the specified entity or resource could not be found. /// </exception> public ScheduleKeyDeletionResponse ScheduleKeyDeletion(ScheduleKeyDeletionRequest request) { var marshaller = new ScheduleKeyDeletionRequestMarshaller(); var unmarshaller = ScheduleKeyDeletionResponseUnmarshaller.Instance; return Invoke<ScheduleKeyDeletionRequest,ScheduleKeyDeletionResponse>(request, marshaller, unmarshaller); }
public void ScheduleKeyDeletionMarshallTest() { var request = InstantiateClassGenerator.Execute<ScheduleKeyDeletionRequest>(); var marshaller = new ScheduleKeyDeletionRequestMarshaller(); var internalRequest = marshaller.Marshall(request); var jsonRequest = UTF8Encoding.UTF8.GetString(internalRequest.Content); Comparer.CompareObjectToJson<ScheduleKeyDeletionRequest>(request,jsonRequest); var webResponse = new WebResponseData { Headers = { {"x-amzn-RequestId", Guid.NewGuid().ToString()}, {"x-amz-crc32","0"} } }; var jsonResponse = new JsonSampleGenerator(service_model, service_model.FindOperation("ScheduleKeyDeletion").ResponseStructure).Execute(); webResponse.Headers.Add("Content-Length", UTF8Encoding.UTF8.GetBytes(jsonResponse).Length.ToString()); UnmarshallerContext context = new JsonUnmarshallerContext(Utils.CreateStreamFromString(jsonResponse), false, webResponse); var response = ScheduleKeyDeletionResponseUnmarshaller.Instance.Unmarshall(context) as ScheduleKeyDeletionResponse; InstantiateClassGenerator.ValidateObjectFullyInstantiated(response); }