Module: DigitalObjectTrees

Included in:
DigitalObject
Defined in:
backend/app/model/mixins/digital_object_trees.rb

Instance Method Summary (collapse)

Instance Method Details

- (Object) build_node_query



3
4
5
6
# File 'backend/app/model/mixins/digital_object_trees.rb', line 3

def build_node_query
  node_query = super
  node_query.eager(:file_version)
end

- (Object) load_node_properties(node, properties, ids_of_interest = :all)



16
17
18
19
20
21
22
# File 'backend/app/model/mixins/digital_object_trees.rb', line 16

def load_node_properties(node, properties, ids_of_interest = :all)
  super

  properties[node.id][:title] = node.display_string

  set_file_version(node, properties[node.id])
end

- (Object) load_root_properties(properties, ids_of_interest = :all)



25
26
27
28
29
30
31
# File 'backend/app/model/mixins/digital_object_trees.rb', line 25

def load_root_properties(properties, ids_of_interest = :all)
  super

  properties[:level] = self.level
  properties[:digital_object_type] = self.values[:digital_object_type]
  set_file_version(self, properties)
end

- (Object) set_file_version(node, properties)



9
10
11
12
13
# File 'backend/app/model/mixins/digital_object_trees.rb', line 9

def set_file_version(node, properties)
  properties[:file_versions] = node.file_version.map{|file|
    FileVersion.to_jsonmodel(file, :skip_relationships => true)
  }
end