def dump_json(self, template=False, doc_metadata=False, obj_metadata={}): """Dump Entity data to JSON-formatted text. @param template: [optional] Boolean. If true, write default field values. @param doc_metadata: boolean. Insert object_metadata(). @param obj_metadata: dict Cached results of object_metadata. @returns: JSON-formatted text """ module = self.identifier.fields_module() self.children() data = common.dump_json( self, module, exceptions=['files', 'filemeta'], template=template, ) if obj_metadata: data.insert(0, obj_metadata) elif doc_metadata: data.insert(0, common.object_metadata(module, self.parent_path)) data.append({ 'children': [ entity_to_childrenmeta(o) for o in self.children() if o.identifier.model in ['entity', 'segment'] ] }) data.append({ 'file_groups': files_to_filegroups( [o for o in self.children() if o.identifier.model == 'file']) }) return format_json(data)
def dump_json(self, template=False, doc_metadata=False, obj_metadata={}): """Dump Entity data to JSON-formatted text. @param template: [optional] Boolean. If true, write default field values. @param doc_metadata: boolean. Insert object_metadata(). @param obj_metadata: dict Cached results of object_metadata. @returns: JSON-formatted text """ module = self.identifier.fields_module() self.children(force_read=True) data = common.dump_json(self, module, exceptions=['files', 'filemeta'], template=template,) if obj_metadata: data.insert(0, obj_metadata) elif doc_metadata: data.insert(0, common.object_metadata(module, self.parent_path)) data.append({ 'children': [ entity_to_childrenmeta(o) for o in self.children() if o.identifier.model in ['entity', 'segment'] ] }) data.append({ 'file_groups': files_to_filegroups([ o for o in self.children() if o.identifier.model == 'file' ]) }) return format_json(data)
def dump_json(self, template=False, doc_metadata=False, obj_metadata={}): """Dump Collection data to JSON-formatted text. @param template: [optional] Boolean. If true, write default values for fields. @param doc_metadata: boolean. Insert object_metadata(). @param obj_metadata: dict Cached results of object_metadata. @returns: JSON-formatted text """ module = self.identifier.fields_module() data = common.dump_json(self, module, template=template) if obj_metadata: data.insert(0, obj_metadata) elif doc_metadata: data.insert(0, common.object_metadata(module, self.path)) return format_json(data)
def dump_json(self, doc_metadata=False, obj_metadata={}): """Dump File data to JSON-formatted text. @param doc_metadata: boolean. Insert object_metadata(). @param obj_metadata: dict Cached results of object_metadata. @returns: JSON-formatted text """ module = self.identifier.fields_module() if self.basename and not self.mimetype: self.mimetype = self.get_mimetype(force=True) data = common.dump_json(self, module) if obj_metadata: data.insert(0, obj_metadata) elif doc_metadata: data.insert(0, common.object_metadata(module, self.collection_path)) # what we call path_rel in the .json is actually basename data.insert(1, {'path_rel': self.basename}) return format_json(data)