class ActiveFedora::Associations::Builder::BelongsTo

:nodoc:

def self.define_validations(model, reflection)

def self.define_validations(model, reflection)
  reflection.options[:optional] = !reflection.options.delete(:required) if reflection.options.key?(:required)
  required = if reflection.options[:optional].nil?
               model.belongs_to_required_by_default
             else
               !reflection.options[:optional]
             end
  super
  model.validates_presence_of reflection.name, message: :required if required
end

def self.macro

:nodoc:
def self.macro
  :belongs_to
end

def self.valid_dependent_options

def self.valid_dependent_options
  [:destroy, :delete]
end

def self.valid_options(options)

def self.valid_options(options)
  super + [:optional]
end

def self.validate_options(options)

def self.validate_options(options)
  super
  raise "You must specify a predicate for #{name}" unless options[:predicate]
  raise ArgumentError, "Predicate must be a kind of RDF::URI" unless options[:predicate].is_a?(RDF::URI)
end