Class: ASpaceExport::Serializer
  
  
  
  
    - Inherits:
 
    - 
      Object
      
        
          - Object
 
          
            - ASpaceExport::Serializer
 
          
        
        show all
      
       
    
  
  
    
  
    
  
  
  
    - Defined in:
 
    - backend/app/exporters/lib/exporter.rb
 
  
  
    
      Class Method Summary
      (collapse)
    
    
  
  
    Class Method Details
    
      
  
  
    + (Object) inherited(subclass) 
  
  
  
  
    
      
104
105
106 
     | 
    
      # File 'backend/app/exporters/lib/exporter.rb', line 104
def self.inherited(subclass)
  ASpaceExport.register_serializer(subclass)
end
 
     | 
  
 
    
      
  
  
    + (Object) serializer_for(name) 
  
  
  
  
    
      
109
110
111 
     | 
    
      # File 'backend/app/exporters/lib/exporter.rb', line 109
def self.serializer_for(name)
  @serializer_for = name
end
 
     | 
  
 
    
      
  
  
    + (Boolean) serializer_for?(name) 
  
  
  
  
    
      
114
115
116 
     | 
    
      # File 'backend/app/exporters/lib/exporter.rb', line 114
def self.serializer_for?(name)
  @serializer_for == name
end
 
     | 
  
 
    
      
  
  
    + (Object) with_namespace(prefix, xml) 
  
  
  
  
    use a serializer to embed wrapped data
for example, MODS data wrapped in METS
   
 
  
  
    
      
120
121
122
123
124
125 
     | 
    
      # File 'backend/app/exporters/lib/exporter.rb', line 120
def self.with_namespace(prefix, xml)
  ns = xml.doc.root.namespace_definitions.find{|ns| ns.prefix == prefix}
  xml.instance_variable_set(:@sticky_ns, ns)
  yield 
  xml.instance_variable_set(:@sticky_ns, nil)
end
     |