method

prepend

rails latest stable - Class: ActiveSupport::MessageEncryptors

Method not available on this version

This method is only available on newer versions. The first available version (v8.1.1) is shown here.

prepend
public

Just like #rotate, but prepends the given options or block to the list of option sets.

This can be useful when you have an already-configured MessageEncryptors instance, but you want to override the way messages are encrypted.

module ThirdParty
  ENCRYPTORS = ActiveSupport::MessageEncryptors.new { ... }.
    rotate(serializer: Marshal, url_safe: true).
    rotate(serializer: Marshal, url_safe: false)
end

ThirdParty.ENCRYPTORS.prepend(serializer: JSON, url_safe: true)

# Uses `serializer: JSON, url_safe: true`.
# Falls back to `serializer: Marshal, url_safe: true` or
# `serializer: Marshal, url_safe: false`.
ThirdParty.ENCRYPTORS[:foo]