Sha256: 074594a3e0353b0406f86ab6cb0db44462ca56f0bf04a7cca67c7b841d231e7f

Contents?: true

Size: 533 Bytes

Versions: 45

Compression:

Stored size: 533 Bytes

Contents

require "pact_broker/domain/webhook_request"

module PactBroker
  module Webhooks
    class HttpRequestWithRedactedHeaders < SimpleDelegator
      def to_hash
        __getobj__().to_hash.each_with_object({}) do | (key, values), new_hash |
          new_hash[key] = redact?(key) ? ["**********"] : values
        end
      end

      def method
        __getobj__().method
      end

      def redact? name
        PactBroker::Domain::WebhookRequest::HEADERS_TO_REDACT.any?{ | pattern | name =~ pattern }
      end
    end
  end
end

Version data entries

45 entries across 45 versions & 1 rubygems

Version Path
pact_broker-2.84.0 lib/pact_broker/webhooks/http_request_with_redacted_headers.rb
pact_broker-2.83.0 lib/pact_broker/webhooks/http_request_with_redacted_headers.rb
pact_broker-2.82.0 lib/pact_broker/webhooks/http_request_with_redacted_headers.rb
pact_broker-2.81.0 lib/pact_broker/webhooks/http_request_with_redacted_headers.rb
pact_broker-2.80.0 lib/pact_broker/webhooks/http_request_with_redacted_headers.rb