Class: ASpaceExport::ExportModel
- Inherits:
-
Object
- Object
- ASpaceExport::ExportModel
show all
- Includes:
- ExportModelHelpers
- Defined in:
- backend/app/exporters/lib/exporter.rb
Class Method Summary
(collapse)
Instance Method Summary
(collapse)
#extract_date_string, #extract_note_content, #get_subnotes_by_type
Class Method Details
+ (Object) inherited(subclass)
134
135
136
|
# File 'backend/app/exporters/lib/exporter.rb', line 134
def self.inherited(subclass)
ASpaceExport.register_model(subclass)
end
|
+ (Object) model_for(name)
139
140
141
|
# File 'backend/app/exporters/lib/exporter.rb', line 139
def self.model_for(name)
@model_for = name
end
|
+ (Boolean) model_for?(name)
144
145
146
|
# File 'backend/app/exporters/lib/exporter.rb', line 144
def self.model_for?(name)
@model_for == name
end
|
Instance Method Details
- (Object) apply_map(obj, map, opts = {})
149
150
151
152
153
154
155
156
157
158
159
160
161
162
|
# File 'backend/app/exporters/lib/exporter.rb', line 149
def apply_map(obj, map, opts = {})
fields_to_ignore = opts[:ignore] ||= []
map.each do |as_field, handler|
next if fields_to_ignore.include? as_field
fieldable = [as_field].flatten.reject { |asf| !obj.respond_to?(asf) }
next if fieldable.empty?
handler_args = fieldable.map {|f| obj.send(f) }
[handler].flatten.each {|h| self.send(h, *handler_args) }
end
end
|