Module: ActiveFedora::MetadataDatastreamHelper

Included in:
MetadataDatastream, NokogiriDatastream
Defined in:
lib/active_fedora/metadata_datastream_helper.rb

Overview

this class represents a MetadataDatastream, a special case of ActiveFedora::Datastream

Defined Under Namespace

Modules: ClassMethods

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#fieldsObject

Returns the value of attribute fields.



6
7
8
# File 'lib/active_fedora/metadata_datastream_helper.rb', line 6

def fields
  @fields
end

#xml_loadedObject

Returns the value of attribute xml_loaded.



6
7
8
# File 'lib/active_fedora/metadata_datastream_helper.rb', line 6

def xml_loaded
  @xml_loaded
end

Class Method Details

.included(klass) ⇒ Object



17
18
19
20
# File 'lib/active_fedora/metadata_datastream_helper.rb', line 17

def self.included(klass)
  klass.extend(ClassMethods)
  klass.send(:include, Solrizer::FieldNameMapper)
end

Instance Method Details

#ensure_xml_loadedObject



22
23
24
25
26
27
28
29
30
31
# File 'lib/active_fedora/metadata_datastream_helper.rb', line 22

def ensure_xml_loaded
  return if xml_loaded 
  self.xml_loaded = true
  if new?
    ## Load up the template
    self.class.from_xml nil, self
  else
    self.class.from_xml content, self
  end
end

#serialize!Object

:nodoc:



33
34
35
36
37
38
# File 'lib/active_fedora/metadata_datastream_helper.rb', line 33

def serialize! # :nodoc:
  if dirty?
    return unless xml_loaded 
    self.content = self.to_xml 
  end
end