module ActiveFedora::FedoraObject
def add_datastream(datastream)
def add_datastream(datastream) datastream.pid = self.pid datastream.save end
def datastreams
def datastreams datastreams = {} self.datastreams_xml['datastream'].each do |ds| ds.merge!({:pid => self.pid, :dsID => ds["dsid"]}) datastreams.merge!({ds["dsid"] => ActiveFedora::Datastream.new(ds)}) end return datastreams end
def datastreams_xml
def datastreams_xml datastreams_xml = XmlSimple.xml_in(Fedora::Repository.instance.fetch_custom(self.pid, :datastreams)) end
def dc
def dc #dc = REXML::Document.new(datastreams["DC"].content) return datastreams["DC"] end
def delete
def delete Fedora::Repository.instance.delete(@inner_object) end
def errors
def errors @inner_object.errors end
def initialize
def initialize @inner_object = Fedora::FedoraObject.new Fedora::Repository.instance.save @inner_object end
def inner_object
def inner_object @inner_object end
def owner_id
def owner_id @inner_object.owner_id end
def pid
def pid @inner_object.pid end
def rels_ext
def rels_ext if !datastreams.has_key?("RELS-EXT") add(ActiveFedora::RelsExtDatastream.new) end return datastreams["RELS-EXT"] end
def save
def save Fedora::Repository.instance.save(@inner_object) end
def state
def state @inner_object.state end