This is an automated email from the ASF dual-hosted git repository.
hansva pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/hop.git
The following commit(s) were added to refs/heads/main by this push:
new e38a449d4f Add getResourceMetaDataDependencies method to
ITransformMeta interface (#5693)
e38a449d4f is described below
commit e38a449d4f3598a1f8016f69111356efab235ca5
Author: kxs-mtalbi <[email protected]>
AuthorDate: Fri Sep 19 03:41:05 2025 -0400
Add getResourceMetaDataDependencies method to ITransformMeta interface
(#5693)
---
.../hop/pipeline/transform/ITransformMeta.java | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)
diff --git
a/engine/src/main/java/org/apache/hop/pipeline/transform/ITransformMeta.java
b/engine/src/main/java/org/apache/hop/pipeline/transform/ITransformMeta.java
index f22c7b3632..2ab13eb927 100644
--- a/engine/src/main/java/org/apache/hop/pipeline/transform/ITransformMeta.java
+++ b/engine/src/main/java/org/apache/hop/pipeline/transform/ITransformMeta.java
@@ -17,6 +17,7 @@
package org.apache.hop.pipeline.transform;
+import java.util.Collections;
import java.util.List;
import java.util.Map;
import org.apache.hop.core.ICheckResult;
@@ -31,6 +32,7 @@ import org.apache.hop.core.plugins.TransformPluginType;
import org.apache.hop.core.row.IRowMeta;
import org.apache.hop.core.variables.IVariables;
import org.apache.hop.metadata.api.HopMetadataObject;
+import org.apache.hop.metadata.api.IHopMetadata;
import org.apache.hop.metadata.api.IHopMetadataObjectFactory;
import org.apache.hop.metadata.api.IHopMetadataProvider;
import org.apache.hop.pipeline.DatabaseImpact;
@@ -132,6 +134,25 @@ public interface ITransformMeta {
/** Set default values */
void setDefault();
+ /**
+ * Returns a map of metadata type to metadata names that this transform
depends on for proper
+ * functioning.
+ *
+ * <p>This is used to identify dependencies on metadata objects, allowing
the system to track
+ * which transforms are impacted when metadata objects are modified or
deleted.
+ *
+ * <p>The map keys are classes extending IHopMetadata, and the values are
lists of metadata names
+ * that this transform references.
+ *
+ * <p>Default implementation returns an empty map indicating no dependencies.
+ *
+ * @return A map of metadata type classes to lists of metadata object names
+ */
+ default java.util.Map<Class<? extends IHopMetadata>, List<String>>
+ getResourceMetaDataDependencies() {
+ return Collections.emptyMap();
+ }
+
/**
* Gets the fields.
*