module ActiveFedora::Crosswalks::Crosswalkable

Public Instance Methods

content() click to toggle source

Override content so when it’s called it performs crosswalks first.

Calls superclass method
# File lib/active_fedora/crosswalks/crosswalkable.rb, line 5
def content
  crosswalkers.each do |crosswalker|
    crosswalker.sync_values
  end
  super
end
content=(*args) click to toggle source
Calls superclass method
# File lib/active_fedora/crosswalks/crosswalkable.rb, line 11
def content=(*args)
  result = super(*args)
  crosswalkers.each do |crosswalker|
    crosswalker.sync_values(:force_target => true)
  end
  return result
end
crosswalk(*args) click to toggle source
# File lib/active_fedora/crosswalks/crosswalkable.rb, line 24
def crosswalk(*args)
  args = args.first if args.respond_to? :first
  raise "Hash of options not given" unless args.kind_of?(Hash)
  args[:datastream] = self
  crosswalker = Crosswalker.new(args)
  crosswalker.validate!
  crosswalker.perform_crosswalk!
  self.crosswalkers << crosswalker
end
crosswalk_fields() click to toggle source
# File lib/active_fedora/crosswalks/crosswalkable.rb, line 18
def crosswalk_fields
  @crosswalk_fields ||= []
end
crosswalkers() click to toggle source
# File lib/active_fedora/crosswalks/crosswalkable.rb, line 21
def crosswalkers
  @crosswalkers ||= []
end