diff options
Diffstat (limited to 'docproc/src/main/java/com/yahoo/docproc/util/JoinerDocumentProcessor.java')
-rw-r--r-- | docproc/src/main/java/com/yahoo/docproc/util/JoinerDocumentProcessor.java | 71 |
1 files changed, 0 insertions, 71 deletions
diff --git a/docproc/src/main/java/com/yahoo/docproc/util/JoinerDocumentProcessor.java b/docproc/src/main/java/com/yahoo/docproc/util/JoinerDocumentProcessor.java deleted file mode 100644 index 4e0a5b3eea6..00000000000 --- a/docproc/src/main/java/com/yahoo/docproc/util/JoinerDocumentProcessor.java +++ /dev/null @@ -1,71 +0,0 @@ -// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -package com.yahoo.docproc.util; - -import com.yahoo.document.DocumentOperation; -import com.yahoo.document.DocumentPut; -import com.yahoo.document.config.DocumentmanagerConfig; -import com.yahoo.config.docproc.SplitterJoinerDocumentProcessorConfig; -import com.yahoo.docproc.DocumentProcessor; -import com.yahoo.docproc.Processing; -import com.yahoo.document.Document; -import com.yahoo.document.DocumentTypeManager; -import com.yahoo.document.DocumentTypeManagerConfigurer; -import com.yahoo.document.datatypes.Array; -import java.util.logging.Level; - -import java.util.logging.Logger; - -/** - * @author Einar M R Rosenvinge - * @deprecated Will be removed on Vespa 8 without replacement - */ -@Deprecated(forRemoval = true, since = "7") -@SuppressWarnings("removal") -public class JoinerDocumentProcessor extends DocumentProcessor { - - private static Logger log = Logger.getLogger(JoinerDocumentProcessor.class.getName()); - private String documentTypeName; - private String arrayFieldName; - private String contextFieldName; - private DocumentTypeManager manager; - - public JoinerDocumentProcessor(SplitterJoinerDocumentProcessorConfig cfg, DocumentmanagerConfig documentmanagerConfig) { - super(); - this.documentTypeName = cfg.documentTypeName(); - this.arrayFieldName = cfg.arrayFieldName(); - this.contextFieldName = cfg.contextFieldName(); - manager = DocumentTypeManagerConfigurer.configureNewManager(documentmanagerConfig); - SplitterDocumentProcessor.validate(manager, documentTypeName, arrayFieldName); - } - - @Override - public Progress process(Processing processing) { - if ( ! SplitterDocumentProcessor.doProcessOuterDocument(processing.getVariable(contextFieldName), documentTypeName)) { - return Progress.DONE; - } - - DocumentPut outerDoc = (DocumentPut)processing.getVariable(contextFieldName); - - @SuppressWarnings("unchecked") - Array<Document> innerDocuments = (Array<Document>) outerDoc.getDocument().getFieldValue(arrayFieldName); - - if (innerDocuments == null) { - @SuppressWarnings("unchecked") - Array<Document> empty = (Array<Document>) outerDoc.getDocument().getDataType().getField(arrayFieldName).getDataType().createFieldValue(); - innerDocuments = empty; - } - - for (DocumentOperation op : processing.getDocumentOperations()) { - if (op instanceof DocumentPut) { - innerDocuments.add(((DocumentPut)op).getDocument()); - } else { - log.log(Level.FINE, () -> "Skipping: " + op); - } - } - processing.getDocumentOperations().clear(); - processing.getDocumentOperations().add(outerDoc); - processing.removeVariable(contextFieldName); - return Progress.DONE; - } - -} |