From bac8ffe9c184bed93f2b5200447e808a3e6bfc8f Mon Sep 17 00:00:00 2001 From: Brian Gregg Date: Fri, 17 Jul 2026 16:54:08 -0400 Subject: [PATCH 1/2] Updates to handle compound objects correctly. --- scan-batch-dir | 23 ++++++++++++++--------- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/scan-batch-dir b/scan-batch-dir index a2fa795..3060ef9 100755 --- a/scan-batch-dir +++ b/scan-batch-dir @@ -569,10 +569,11 @@ def process_tiff(file_path:str, level): # Create the JP2 derivative if it does not already exist. # if the JP2 does not exist: jp2_path = f"{dir}/{pid}.jp2" - if level == 1: - out_pid = f"{pid}" - else: - out_pid = f"{parent}-{pid}" + #if level == 1: + # out_pid = f"{pid}" + #else: + # out_pid = f"{parent}-{pid}" + out_pid = f"{pid}" logger.info(f"Tiff: Creating JP2: {jp2_path}") if not os.path.exists(jp2_path): @@ -854,11 +855,15 @@ def process_file(df: pd.DataFrame, file_path: str, level): logger.info(f"File is model: {imodel}, TID: {field_model}") # Handle top level files by adjusting the PID and parent_folder. - if not level == 1: - # Not in top level folder. - pid = f"{parent_folder}-{file_name}" - else: - pid = f"{file_name}" + #if not level == 1: + # # Not in top level folder. + # pid = f"{parent_folder}-{file_name}" + #else: + # pid = f"{file_name}" + # parent_folder = '' + + pid = f"{file_name}" + if level == 1: parent_folder = '' # Default row_data From 7b9c26362964f70b7914491566f25efeaa5cee96 Mon Sep 17 00:00:00 2001 From: Brian Gregg Date: Tue, 21 Jul 2026 15:00:44 -0400 Subject: [PATCH 2/2] Clean up of the fix for issue #5 sub-folders issue. --- scan-batch-dir | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-) diff --git a/scan-batch-dir b/scan-batch-dir index 3060ef9..28844ff 100755 --- a/scan-batch-dir +++ b/scan-batch-dir @@ -569,10 +569,6 @@ def process_tiff(file_path:str, level): # Create the JP2 derivative if it does not already exist. # if the JP2 does not exist: jp2_path = f"{dir}/{pid}.jp2" - #if level == 1: - # out_pid = f"{pid}" - #else: - # out_pid = f"{parent}-{pid}" out_pid = f"{pid}" logger.info(f"Tiff: Creating JP2: {jp2_path}") @@ -853,15 +849,11 @@ def process_file(df: pd.DataFrame, file_path: str, level): # Get the field_model from JSONAPI field_model = get_taxonomy_tid('https://i2.digital.library.pitt.edu','islandora_models',imodel) logger.info(f"File is model: {imodel}, TID: {field_model}") - - # Handle top level files by adjusting the PID and parent_folder. - #if not level == 1: - # # Not in top level folder. - # pid = f"{parent_folder}-{file_name}" - #else: - # pid = f"{file_name}" - # parent_folder = '' + # Handle top level files by adjusting the PID and parent_folder. + # The file's own name is always the PID; the parent object's PID + # is tracked separately via parent_id — it should never be + # concatenated onto the file's PID. pid = f"{file_name}" if level == 1: parent_folder = ''