Class: Aequitas::MessageTransformer Abstract

Inherits:
Object
  • Object
show all
Defined in:
lib/aequitas/message_transformer.rb

Overview

This class is abstract.

Subclass and override #transform to implement a custom message transformer. Use Violation.message_transformer= to set a new message transformer or pass the transformer to Violation#message.

Transforms Violations to error message strings.

Direct Known Subclasses

Default, DefaultI18n

Defined Under Namespace

Classes: Default, DefaultI18n

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.defaultObject



11
12
13
# File 'lib/aequitas/message_transformer.rb', line 11

def self.default
  defined?(I18n) ? DefaultI18n.new : Default.new
end

Instance Method Details

#transform(violation) ⇒ String

Transforms the specified Violation to an error message string.

Parameters:

  • violation (Violation)

    The Violation to transform.

Returns:

  • (String)

    The transformed message.

Raises:

  • (ArgumentError)

    violation is nil.



25
26
27
# File 'lib/aequitas/message_transformer.rb', line 25

def transform(violation)
  raise NotImplementedError, "#{self.class}#transform has not been implemented"
end