class RabbitFeed::EventDefinitions::Field

Attributes

definition[R]
name[R]
type[R]

Public Class Methods

new(name, type, definition) click to toggle source
# File lib/rabbit_feed/event_definitions.rb, line 9
def initialize(name, type, definition)
  @name       = name
  @type       = type
  @definition = definition
  validate!
end

Public Instance Methods

schema() click to toggle source
# File lib/rabbit_feed/event_definitions.rb, line 16
def schema
  { name: name, type: type, doc: definition }
end

Private Instance Methods

validate!() click to toggle source
# File lib/rabbit_feed/event_definitions.rb, line 22
def validate!
  raise ConfigurationError, "Bad field specification for #{name}: #{errors.messages}" if invalid?
end