Skip to content

Commit

Permalink
set groupId when adding files, fix #110
Browse files Browse the repository at this point in the history
  • Loading branch information
kba committed Jun 18, 2018
1 parent 33b45ad commit 3bca9f1
Show file tree
Hide file tree
Showing 3 changed files with 5 additions and 2 deletions.
1 change: 1 addition & 0 deletions ocrd/cli/workspace.py
Original file line number Diff line number Diff line change
Expand Up @@ -135,6 +135,7 @@ def workspace_add_file(ctx, file_grp, file_id, mimetype, url, group_id, local_fi
ID=file_id,
mimetype=mimetype,
url="file://" + local_filename,
groupId=group_id
local_filename=local_filename
)
workspace.save_mets()
Expand Down
3 changes: 2 additions & 1 deletion ocrd/model/ocrd_mets.py
Original file line number Diff line number Diff line change
Expand Up @@ -58,12 +58,13 @@ def add_file_group(self, fileGrp):
el_fileGrp.set('USE', fileGrp)
return el_fileGrp

def add_file(self, fileGrp, mimetype=None, url=None, ID=None, local_filename=None):
def add_file(self, fileGrp, mimetype=None, url=None, ID=None, groupId=None, local_filename=None):
el_fileGrp = self._tree.getroot().find(".//mets:fileGrp[@USE='%s']" % (fileGrp), NS)
if el_fileGrp is None:
el_fileGrp = self.add_file_group(fileGrp)
mets_file = OcrdFile(ET.SubElement(el_fileGrp, TAG_METS_FILE))
mets_file.url = url
mets_file.groupId = groupId
mets_file.mimetype = mimetype
mets_file.ID = ID
mets_file.local_filename = local_filename
Expand Down
3 changes: 2 additions & 1 deletion test/model/test_ocrd_mets.py
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,8 @@ def test_add_group(self):
def test_add_file(self):
self.assertEqual(len(self.mets.file_groups), 17, '17 file groups')
self.assertEqual(len(self.mets.find_files(fileGrp='OUTPUT')), 0, '0 files in "OUTPUT"')
self.mets.add_file('OUTPUT', mimetype="bla/quux")
f = self.mets.add_file('OUTPUT', mimetype="bla/quux", groupId="foobar")
self.assertEqual(f.groupId, 'foobar', 'GROUPID set')
self.assertEqual(len(self.mets.file_groups), 18, '18 file groups')
self.assertEqual(len(self.mets.find_files(fileGrp='OUTPUT')), 1, '1 files in "OUTPUT"')

Expand Down

0 comments on commit 3bca9f1

Please sign in to comment.