public void Execute(OnEncryptMessage pipelineEvent)
        {
            var state            = pipelineEvent.Pipeline.State;
            var transportMessage = state.GetTransportMessage();

            if (!transportMessage.EncryptionEnabled())
            {
                return;
            }

            var algorithm = _configuration.FindEncryptionAlgorithm(transportMessage.EncryptionAlgorithm);

            Guard.Against <InvalidOperationException>(algorithm == null,
                                                      string.Format(InfrastructureResources.MissingEncryptionAlgorithmException, transportMessage.CompressionAlgorithm));

            transportMessage.Message = algorithm.Encrypt(transportMessage.Message);
        }
        public void Execute(OnEncryptMessage pipelineEvent)
        {
            var state            = pipelineEvent.Pipeline.State;
            var transportMessage = state.GetTransportMessage();

            if (!transportMessage.EncryptionEnabled())
            {
                return;
            }

            var algorithm = _configuration.FindEncryptionAlgorithm(transportMessage.EncryptionAlgorithm);

            if (algorithm == null)
            {
                throw new InvalidOperationException(
                          string.Format(Resources.MissingEncryptionAlgorithmException,
                                        transportMessage.EncryptionAlgorithm));
            }

            transportMessage.Message = algorithm.Encrypt(transportMessage.Message);
        }