Module: ActiveFedora::Crosswalks::Crosswalkable

Defined in:
lib/active_fedora/crosswalks/crosswalkable.rb

Instance Method Summary collapse

Instance Method Details

#contentObject

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



5
6
7
8
9
10
# File 'lib/active_fedora/crosswalks/crosswalkable.rb', line 5

def content
  crosswalkers.each do |crosswalker|
    crosswalker.source_accessor.get_value
  end
  super
end

#crosswalk(*args) ⇒ Object



17
18
19
20
21
22
23
24
25
# File 'lib/active_fedora/crosswalks/crosswalkable.rb', line 17

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_fieldsObject



11
12
13
# File 'lib/active_fedora/crosswalks/crosswalkable.rb', line 11

def crosswalk_fields
  @crosswalk_fields ||= []
end

#crosswalkersObject



14
15
16
# File 'lib/active_fedora/crosswalks/crosswalkable.rb', line 14

def crosswalkers
  @crosswalkers ||= []
end