Skip to content

Commit ddd427d

Browse files
author
Kolea Plesco
committed
WIP
1 parent 1b10821 commit ddd427d

3 files changed

Lines changed: 12 additions & 11 deletions

File tree

ted_sws/notice_packager/entrypoints/cli/cmd_bulk_packager.py

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,7 @@
2525
XMLManifestationMetadataExtractor
2626
from ted_sws.notice_packager import DEFAULT_NOTICE_PACKAGE_EXTENSION
2727
from ted_sws.notice_packager.services.metadata_transformer import MetadataTransformer
28-
from ted_sws.notice_packager.services.notice_packager import create_notice_package, package_notice_and_save_to, \
29-
ARCHIVE_NAME_FORMAT
28+
from ted_sws.notice_packager.services.notice_packager import create_notice_package, package_notice_and_save_to
3029

3130
CMD_NAME = "CMD_BULK_PACKAGER"
3231
DEFAULT_FILES_COUNT: int = 3000
@@ -62,11 +61,10 @@ def run_cmd(self):
6261
try:
6362
self.output_path.mkdir(parents=True, exist_ok=True)
6463
if self.notices:
64+
self.log("Saving packages to " + str(self.output_path))
6565
for notice in self.notices:
66-
output_file = self.output_path / ARCHIVE_NAME_FORMAT.format(publication_work_identifier())
67-
self.log("Saving package to " + str(output_file))
6866
package_notice_and_save_to(notice=notice,
69-
save_to=output_file)
67+
save_to=self.output_path)
7068
else:
7169
rdf_files = [Path(str(f_path)) for f in os.listdir(self.rdf_files_path) if
7270
os.path.isfile(f_path := os.path.join(self.rdf_files_path, f))]
@@ -116,7 +114,7 @@ def run(rdf_files_count=None, output_folder=None, pkgs_count=None, notice_id=Non
116114
@click.command()
117115
@click.argument('rdf-files-folder', nargs=1, required=False)
118116
@click.argument('pkgs-count', nargs=1, type=click.INT, required=False, default=DEFAULT_FILES_COUNT)
119-
@click.option('--output-folder', required=False)
117+
@click.option('--output-folder', required=False, default=".")
120118
@click.option('--notice-id', required=False, multiple=True, default=None)
121119
def main(rdf_files_folder, pkgs_count, output_folder, notice_id):
122120
"""

ted_sws/notice_packager/resources/templates/mets2action_mets_xml.jinja2

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
TYPE="{{ notice.action.type }}"
77
PROFILE="http://publications.europa.eu/resource/mets/op-sip-profile_002">
88
<metsHdr {{ notice.action.type|upper }}DATE="{{ notice.action.date }}">
9-
<metsDocumentID>{{ notice.id }}_mets2{{ notice.action.type }}</metsDocumentID>
9+
<metsDocumentID>{{ work.identifier }}_{{ notice.action.type }}</metsDocumentID>
1010
</metsHdr>
1111
<dmdSec ID="dmdSec01">
1212
<mdRef MDTYPE="OTHER" LOCTYPE="URL" MIMETYPE="application/rdf+xml" OTHERMDTYPE="INSTANCE" xlink:href="{{ notice.id }}-0.mets.xml.dmd.rdf"/>

ted_sws/notice_packager/services/notice_packager.py

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,6 @@ def create_notice_package(in_data: IN_DATA_TYPE, rdf_content: RDF_CONTENT_TYPE =
6060
tmp_dir_path = Path(tmp_dir.name)
6161

6262
notice_packager = NoticePackager(in_data, action, tmp_dir_path, notice_repository)
63-
6463
notice_packager.add_template_files()
6564
notice_packager.add_rdf_content(rdf_content)
6665
notice_packager.add_extra_files(extra_files)
@@ -79,7 +78,7 @@ def package_notice(notice: Notice) -> Notice:
7978
return notice
8079

8180

82-
def package_notice_and_save_to(notice: Notice, save_to: PATH_TYPE = None, work_identifier: str = None) -> str:
81+
def package_notice_and_save_to(notice: Notice, save_to: PATH_TYPE = None) -> str:
8382
"""
8483
This function package a Notice to save_to location.
8584
"""
@@ -160,7 +159,7 @@ def add_template_files(self):
160159
self.__write_template_to_file(file_tmd_rdf, TemplateGenerator.tmd_rdf_generator, self.template_metadata)
161160

162161
file_mets2action_mets_xml = self.tmp_dir_path / FILE_METS_ACTION_FORMAT.format(
163-
notice_id=self.notice_id,
162+
work_identifier=self.template_metadata.work.identifier,
164163
action=self.notice_action
165164
)
166165
self.__write_template_to_file(file_mets2action_mets_xml, TemplateGenerator.mets2action_mets_xml_generator,
@@ -189,7 +188,11 @@ def add_extra_files(self, extra_files: PATH_LIST_TYPE):
189188
self.files += extra_files
190189

191190
def pack(self, save_to: PATH_TYPE) -> str:
192-
archive_name = ARCHIVE_NAME_FORMAT.format(notice_id=self.notice_id)
191+
archive_name = ARCHIVE_NAME_FORMAT.format(
192+
work_identifier=self.template_metadata.work.identifier,
193+
action=self.template_metadata.notice.action.type
194+
)
195+
193196
archive_path = self.tmp_dir_path / archive_name
194197
package_path = self.archiver.process_archive(archive_path, self.files)
195198

0 commit comments

Comments
 (0)