diff --git a/src/schema/schema_manager.py b/src/schema/schema_manager.py index a36f6ed1..a1dff4ad 100644 --- a/src/schema/schema_manager.py +++ b/src/schema/schema_manager.py @@ -417,10 +417,8 @@ def generate_triggered_data(trigger_type: TriggerTypeEnum, normalized_class, req # Get the target trigger method defined in the schema_triggers.py module trigger_method_to_call = getattr(schema_triggers, trigger_method_name) - if 'uuid' in existing_data_dict: - logger.info(f"To run {trigger_type.value}: {trigger_method_name} for {normalized_class} {existing_data_dict['uuid']}") - else: - logger.info(f"To run {trigger_type.value}: {trigger_method_name} for {normalized_class}") + target_uuid = existing_entity_dict['uuid'] if existing_entity_dict and 'uuid' in existing_entity_dict else ''; + logger.info(f"To run {trigger_type.value}: {trigger_method_name} for {normalized_class} {target_uuid}") # No return values for 'after_create_trigger' and 'after_update_trigger' # because the property value is already set and stored in neo4j @@ -443,11 +441,9 @@ def generate_triggered_data(trigger_type: TriggerTypeEnum, normalized_class, req trigger_method_name = properties[key][trigger_type.value] try: trigger_method_to_call = getattr(schema_triggers, trigger_method_name) - - if 'uuid' in existing_data_dict: - logger.info(f"To run {trigger_type.value}: {trigger_method_name} for {normalized_class} {existing_data_dict['uuid']}") - else: - logger.info(f"To run {trigger_type.value}: {trigger_method_name} for {normalized_class}") + + target_uuid = existing_entity_dict['uuid'] if existing_entity_dict and 'uuid' in existing_entity_dict else ''; + logger.info(f"To run {trigger_type.value}: {trigger_method_name} for {normalized_class} {target_uuid}") # Will set the trigger return value as the property value by default # Unless the return value is to be assigned to another property different target key @@ -494,10 +490,8 @@ def generate_triggered_data(trigger_type: TriggerTypeEnum, normalized_class, req try: trigger_method_to_call = getattr(schema_triggers, trigger_method_name) - if 'uuid' in existing_data_dict: - logger.info(f"To run {trigger_type.value}: {trigger_method_name} for {normalized_class} {existing_data_dict['uuid']}") - else: - logger.info(f"To run {trigger_type.value}: {trigger_method_name} for {normalized_class}") + target_uuid = existing_entity_dict['uuid'] if existing_entity_dict and 'uuid' in existing_entity_dict else ''; + logger.info(f"To run {trigger_type.value}: {trigger_method_name} for {normalized_class} {target_uuid}") # Will set the trigger return value as the property value by default # Unless the return value is to be assigned to another property different target key @@ -512,6 +506,7 @@ def generate_triggered_data(trigger_type: TriggerTypeEnum, normalized_class, req # within this dictionary and return it so it can be saved in the scope of this loop and # passed to other 'updated_peripherally' triggers if 'updated_peripherally' in properties[key] and properties[key]['updated_peripherally']: + # Such trigger methods get executed but really do nothing internally trigger_generated_data_dict = trigger_method_to_call(key, normalized_class, request, user_token, existing_data_dict, new_data_dict, trigger_generated_data_dict) else: target_key, target_value = trigger_method_to_call(key, normalized_class, request, user_token, existing_data_dict, new_data_dict) @@ -1042,10 +1037,8 @@ def execute_entity_level_validator(validator_type, normalized_entity_type, reque # Get the target validator method defined in the schema_validators.py module validator_method_to_call = getattr(schema_validators, validator_method_name) - if 'uuid' in existing_entity_dict: - logger.info(f"To run {validator_type}: {validator_method_name} for {normalized_entity_type} {existing_entity_dict['uuid']}") - else: - logger.info(f"To run {validator_type}: {validator_method_name} for {normalized_entity_type}") + target_uuid = existing_entity_dict['uuid'] if existing_entity_dict and 'uuid' in existing_entity_dict else ''; + logger.info(f"To run {validator_type}: {validator_method_name} for {normalized_entity_type} {target_uuid}") # Create a dictionary to hold data need by any entity validator, which must be populated # with validator specific requirements when the method to be called is determined. @@ -1110,10 +1103,8 @@ def execute_property_level_validators(validator_type, normalized_entity_type, re # Get the target validator method defined in the schema_validators.py module validator_method_to_call = getattr(schema_validators, validator_method_name) - if 'uuid' in existing_data_dict: - logger.info(f"To run {validator_type}: {validator_method_name} for {normalized_entity_type} {existing_data_dict['uuid']} on property {key}") - else: - logger.info(f"To run {validator_type}: {validator_method_name} for {normalized_entity_type} on property {key}") + target_uuid = existing_entity_dict['uuid'] if existing_entity_dict and 'uuid' in existing_entity_dict else ''; + logger.info(f"To run {validator_type}: {validator_method_name} for {normalized_entity_type} {target_uuid} on property {key}") validator_method_to_call(key, normalized_entity_type, request, existing_data_dict, new_data_dict) except schema_errors.MissingApplicationHeaderException as e: diff --git a/src/schema/schema_triggers.py b/src/schema/schema_triggers.py index 5ac47b2c..4445718e 100644 --- a/src/schema/schema_triggers.py +++ b/src/schema/schema_triggers.py @@ -2379,6 +2379,7 @@ def _commit_files(target_property_key, property_key, normalized_type, request, u # For metadata files the property name is "metadata_files_to_add" # But other may be used in the future if (not property_key in new_data_dict) or (not new_data_dict[property_key]): + logger.info(f"Do nothing with the internal trigger method _commit_files() because {property_key} not found in request payload") return generated_dict #If POST or PUT where the target doesn't exist create the file info array