protected void PostInvoke()

in src/Internal/SetupDecryptionHandler.cs [52:92]


        protected void PostInvoke(IExecutionContext executionContext)
        {
            using (TelemetryUtilities.CreateSpan(EncryptionClient, Constants.SetupDecryptionHandlerSpanName, null, Amazon.Runtime.Telemetry.Tracing.SpanKind.CLIENT))
            {
                byte[] encryptedKMSEnvelopeKey;
                Dictionary<string, string> encryptionContext;
                byte[] decryptedEnvelopeKeyKMS = null;

                if (KMSEnvelopeKeyIsPresent(executionContext, out encryptedKMSEnvelopeKey, out encryptionContext))
                {
#if NETFRAMEWORK
                    decryptedEnvelopeKeyKMS = DecryptedEnvelopeKeyKms(encryptedKMSEnvelopeKey, encryptionContext);
#else
                    decryptedEnvelopeKeyKMS = DecryptedEnvelopeKeyKmsAsync(encryptedKMSEnvelopeKey, encryptionContext).GetAwaiter().GetResult();
#endif
                }

                var getObjectResponse = executionContext.ResponseContext.Response as GetObjectResponse;
                if (getObjectResponse != null)
                {
#if NETFRAMEWORK
                    DecryptObject(decryptedEnvelopeKeyKMS, getObjectResponse);
#else
                    DecryptObjectAsync(decryptedEnvelopeKeyKMS, getObjectResponse).GetAwaiter().GetResult();
#endif
                }

                var completeMultiPartUploadRequest =  executionContext.RequestContext.Request.OriginalRequest as CompleteMultipartUploadRequest;
                var completeMultipartUploadResponse = executionContext.ResponseContext.Response as CompleteMultipartUploadResponse;
                if (completeMultipartUploadResponse != null)
                {
#if NETFRAMEWORK
                    CompleteMultipartUpload(completeMultiPartUploadRequest);
#else
                    CompleteMultipartUploadAsync(completeMultiPartUploadRequest).GetAwaiter().GetResult();
#endif
                }

                PostInvokeSynchronous(executionContext, decryptedEnvelopeKeyKMS);
            }
        }