This is an automated email from the ASF dual-hosted git repository. ndipiazza pushed a commit to branch TIKA-4851-revert in repository https://gitbox.apache.org/repos/asf/tika.git
commit 1a269a451861ff1a72f695b02e08bc3b1d742fa8 Author: Nicholas DiPiazza <[email protected]> AuthorDate: Fri Dec 19 13:38:23 2025 -0600 Revert "TIKA-4581 metadata list serialization again (#2466)" This reverts commit d66f9c8a7438e3a4f2a094995b2319d6b3636ec6. --- .../src/main/resources/META-INF/tika/other-configs.idx | 15 --------------- .../org/apache/tika/config/loader/ComponentRegistry.java | 11 +++++------ .../metadata/filter/AttachmentCountingListFilter.java | 11 ----------- .../tika/serialization/TestParseContextSerialization.java | 10 ++-------- 4 files changed, 7 insertions(+), 40 deletions(-) diff --git a/tika-pipes/tika-pipes-api/src/main/resources/META-INF/tika/other-configs.idx b/tika-pipes/tika-pipes-api/src/main/resources/META-INF/tika/other-configs.idx index 4b6648279..0c9f7d254 100644 --- a/tika-pipes/tika-pipes-api/src/main/resources/META-INF/tika/other-configs.idx +++ b/tika-pipes/tika-pipes-api/src/main/resources/META-INF/tika/other-configs.idx @@ -1,18 +1,3 @@ -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You under the Apache License, Version 2.0 -# (the "License"); you may not use this file except in compliance with -# the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - # Component registry for tika-pipes-api # Format: friendly-name=fully.qualified.ClassName # this has to be manually generated for now because of the dependency graph diff --git a/tika-serialization/src/main/java/org/apache/tika/config/loader/ComponentRegistry.java b/tika-serialization/src/main/java/org/apache/tika/config/loader/ComponentRegistry.java index 1ab7014ed..700d93761 100644 --- a/tika-serialization/src/main/java/org/apache/tika/config/loader/ComponentRegistry.java +++ b/tika-serialization/src/main/java/org/apache/tika/config/loader/ComponentRegistry.java @@ -49,7 +49,7 @@ import org.apache.tika.exception.TikaConfigException; public class ComponentRegistry { private final Map<String, ComponentInfo> components; - private final Map<String, String> classNameToFriendlyName; // Reverse lookup by class name + private final Map<Class<?>, String> classToName; // Reverse lookup private final ClassLoader classLoader; /** @@ -64,10 +64,10 @@ public class ComponentRegistry { throws TikaConfigException { this.classLoader = classLoader; this.components = loadComponents(indexFileName); - // Build reverse lookup by class name (not Class object) to handle classloader differences - this.classNameToFriendlyName = new HashMap<>(); + // Build reverse lookup + this.classToName = new HashMap<>(); for (Map.Entry<String, ComponentInfo> entry : components.entrySet()) { - classNameToFriendlyName.put(entry.getValue().componentClass().getName(), entry.getKey()); + classToName.put(entry.getValue().componentClass(), entry.getKey()); } } @@ -120,13 +120,12 @@ public class ComponentRegistry { /** * Looks up a component's friendly name by its class. - * Uses class name (not Class object) for lookup to handle classloader differences. * * @param clazz the component class * @return the friendly name, or null if not registered */ public String getFriendlyName(Class<?> clazz) { - return classNameToFriendlyName.get(clazz.getName()); + return classToName.get(clazz); } private Map<String, ComponentInfo> loadComponents(String indexFileName) diff --git a/tika-serialization/src/test/java/org/apache/tika/metadata/filter/AttachmentCountingListFilter.java b/tika-serialization/src/test/java/org/apache/tika/metadata/filter/AttachmentCountingListFilter.java index e33390a7c..ffd73db11 100644 --- a/tika-serialization/src/test/java/org/apache/tika/metadata/filter/AttachmentCountingListFilter.java +++ b/tika-serialization/src/test/java/org/apache/tika/metadata/filter/AttachmentCountingListFilter.java @@ -24,23 +24,12 @@ import org.apache.tika.metadata.Metadata; @TikaComponent public class AttachmentCountingListFilter extends MetadataFilter { - - private Integer count = 0; @Override public List<Metadata> filter(List<Metadata> metadataList) throws TikaException { if (metadataList == null || metadataList.isEmpty()) { return metadataList; } metadataList.get(0).set("X-TIKA:attachment_count", Integer.toString(metadataList.size() - 1)); - count += metadataList.size(); return metadataList; } - - public Integer getCount() { - return count; - } - - public void setCount(Integer count) { - this.count = count; - } } diff --git a/tika-serialization/src/test/java/org/apache/tika/serialization/TestParseContextSerialization.java b/tika-serialization/src/test/java/org/apache/tika/serialization/TestParseContextSerialization.java index 4a300830c..5292ece26 100644 --- a/tika-serialization/src/test/java/org/apache/tika/serialization/TestParseContextSerialization.java +++ b/tika-serialization/src/test/java/org/apache/tika/serialization/TestParseContextSerialization.java @@ -24,7 +24,6 @@ import static org.junit.jupiter.api.Assertions.assertTrue; import java.io.StringWriter; import java.io.Writer; import java.util.List; -import java.util.Set; import com.fasterxml.jackson.core.JsonGenerator; import com.fasterxml.jackson.databind.JsonNode; @@ -39,7 +38,6 @@ import org.apache.tika.extractor.DocumentSelector; import org.apache.tika.extractor.SkipEmbeddedDocumentSelector; import org.apache.tika.metadata.filter.AttachmentCountingListFilter; import org.apache.tika.metadata.filter.CompositeMetadataFilter; -import org.apache.tika.metadata.filter.IncludeFieldMetadataFilter; import org.apache.tika.metadata.filter.MetadataFilter; import org.apache.tika.metadata.filter.MockUpperCaseFilter; import org.apache.tika.parser.ParseContext; @@ -329,9 +327,7 @@ public class TestParseContextSerialization { @Test public void testMetadataListPOJO() throws Exception { - CompositeMetadataFilter metadataFilter = - new CompositeMetadataFilter(List.of(new MockUpperCaseFilter(), new AttachmentCountingListFilter(), - new IncludeFieldMetadataFilter(Set.of("blah", "blah2")))); + CompositeMetadataFilter metadataFilter = new CompositeMetadataFilter(List.of(new AttachmentCountingListFilter(), new MockUpperCaseFilter())); ParseContext parseContext = new ParseContext(); parseContext.set(MetadataFilter.class, metadataFilter); @@ -344,9 +340,7 @@ public class TestParseContextSerialization { assertNotNull(resolvedFilter, "MetadataFilter should be resolved"); assertEquals(CompositeMetadataFilter.class, resolvedFilter.getClass()); CompositeMetadataFilter deserFilter = (CompositeMetadataFilter) resolvedFilter; - assertEquals(MockUpperCaseFilter.class, deserFilter.getFilters().get(0).getClass()); - assertEquals(AttachmentCountingListFilter.class, deserFilter.getFilters().get(1).getClass()); - assertEquals(IncludeFieldMetadataFilter.class, deserFilter.getFilters().get(2).getClass()); + assertEquals(AttachmentCountingListFilter.class, deserFilter.getFilters().get(0).getClass()); } @Test
