summaryrefslogtreecommitdiffstats
path: root/docproc
diff options
context:
space:
mode:
authorjonmv <venstad@gmail.com>2023-10-06 16:31:30 +0200
committerjonmv <venstad@gmail.com>2023-10-06 16:31:30 +0200
commit66cff217a76224ceb0ffc0c35dd4339ed8ff9672 (patch)
tree2b2d6be4726567bb205cf966575075e24eb2d8b0 /docproc
parent03b7ce7d31bfbcb130da21a511485a51c43baf7f (diff)
Modernise some code, no functional changes
Diffstat (limited to 'docproc')
-rw-r--r--docproc/src/main/java/com/yahoo/docproc/Call.java14
-rw-r--r--docproc/src/main/java/com/yahoo/docproc/jdisc/messagebus/MbusRequestContext.java24
-rw-r--r--docproc/src/main/java/com/yahoo/docproc/jdisc/messagebus/ProcessingFactory.java30
-rw-r--r--docproc/src/main/java/com/yahoo/docproc/proxy/ProxyDocument.java2
-rw-r--r--docproc/src/main/java/com/yahoo/docproc/proxy/ProxyDocumentUpdate.java4
5 files changed, 31 insertions, 43 deletions
diff --git a/docproc/src/main/java/com/yahoo/docproc/Call.java b/docproc/src/main/java/com/yahoo/docproc/Call.java
index 3840de63e13..40ca4845d63 100644
--- a/docproc/src/main/java/com/yahoo/docproc/Call.java
+++ b/docproc/src/main/java/com/yahoo/docproc/Call.java
@@ -126,17 +126,11 @@ public class Call implements Cloneable {
private void unwrapSchemaMapping(Processing processing) {
- final List<DocumentOperation> documentOperations = processing.getDocumentOperations();
-
+ List<DocumentOperation> documentOperations = processing.getDocumentOperations();
for (int i = 0; i < documentOperations.size(); i++) {
- DocumentOperation documentOperation = documentOperations.get(i);
-
- if (documentOperation instanceof DocumentPut) {
- DocumentPut putOperation = (DocumentPut) documentOperation;
-
- if (putOperation.getDocument() instanceof DocumentOperationWrapper) {
- DocumentOperationWrapper proxy = (DocumentOperationWrapper) putOperation.getDocument();
- documentOperations.set(i, new DocumentPut(putOperation, ((DocumentPut)proxy.getWrappedDocumentOperation()).getDocument()));
+ if (documentOperations.get(i) instanceof DocumentPut putOperation) {
+ if (putOperation.getDocument() instanceof DocumentOperationWrapper proxy) {
+ documentOperations.set(i, new DocumentPut(putOperation, ((DocumentPut) proxy.getWrappedDocumentOperation()).getDocument()));
}
}
}
diff --git a/docproc/src/main/java/com/yahoo/docproc/jdisc/messagebus/MbusRequestContext.java b/docproc/src/main/java/com/yahoo/docproc/jdisc/messagebus/MbusRequestContext.java
index caaff318cdd..e1e6164206f 100644
--- a/docproc/src/main/java/com/yahoo/docproc/jdisc/messagebus/MbusRequestContext.java
+++ b/docproc/src/main/java/com/yahoo/docproc/jdisc/messagebus/MbusRequestContext.java
@@ -32,6 +32,8 @@ import java.util.List;
import java.util.concurrent.atomic.AtomicBoolean;
import java.util.logging.Logger;
+import static java.util.logging.Level.WARNING;
+
/**
* @author Einar M R Rosenvinge
*/
@@ -68,7 +70,7 @@ public class MbusRequestContext implements RequestContext, ResponseHandler {
@Override
public List<Processing> getProcessings() {
if (deserialized.getAndSet(true)) {
- return Collections.emptyList();
+ return List.of();
}
return processingFactory.fromMessage(requestMsg);
}
@@ -143,19 +145,17 @@ public class MbusRequestContext implements RequestContext, ResponseHandler {
@Override
public String getServiceName() {
String path = getUri().getPath();
- return path.substring(7, path.length());
+ return path.substring(7);
}
@Override
public boolean isProcessable() {
- Message msg = requestMsg;
- switch (msg.getType()) {
- case DocumentProtocol.MESSAGE_PUTDOCUMENT:
- case DocumentProtocol.MESSAGE_UPDATEDOCUMENT:
- case DocumentProtocol.MESSAGE_REMOVEDOCUMENT:
- return true;
- }
- return false;
+ return switch (requestMsg.getType()) {
+ case DocumentProtocol.MESSAGE_PUTDOCUMENT,
+ DocumentProtocol.MESSAGE_UPDATEDOCUMENT,
+ DocumentProtocol.MESSAGE_REMOVEDOCUMENT -> true;
+ default -> false;
+ };
}
@Override
@@ -180,14 +180,12 @@ public class MbusRequestContext implements RequestContext, ResponseHandler {
private void dispatchRequest(Message msg, String uriPath, ResponseHandler handler) {
try {
new RequestDispatch() {
-
@Override
protected Request newRequest() {
return new MbusRequest(request,
uriCache.computeIfAbsent(uriPath, __ -> URI.create("mbus://remotehost" + uriPath)),
msg);
}
-
@Override
public ContentChannel handleResponse(Response response) {
return handler.handleResponse(response);
@@ -195,7 +193,7 @@ public class MbusRequestContext implements RequestContext, ResponseHandler {
}.dispatch();
} catch (Exception e) {
dispatchResponse(Response.Status.INTERNAL_SERVER_ERROR);
- e.printStackTrace();
+ log.log(WARNING, "Failed to dispatch request", e);
}
}
diff --git a/docproc/src/main/java/com/yahoo/docproc/jdisc/messagebus/ProcessingFactory.java b/docproc/src/main/java/com/yahoo/docproc/jdisc/messagebus/ProcessingFactory.java
index 0a7836ff6d3..aac22af1d11 100644
--- a/docproc/src/main/java/com/yahoo/docproc/jdisc/messagebus/ProcessingFactory.java
+++ b/docproc/src/main/java/com/yahoo/docproc/jdisc/messagebus/ProcessingFactory.java
@@ -1,10 +1,6 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.docproc.jdisc.messagebus;
-import java.time.Instant;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.logging.Logger;
import com.yahoo.component.ComponentId;
import com.yahoo.component.provider.ComponentRegistry;
import com.yahoo.concurrent.SystemTimer;
@@ -22,6 +18,10 @@ import com.yahoo.documentapi.messagebus.protocol.RemoveDocumentMessage;
import com.yahoo.documentapi.messagebus.protocol.UpdateDocumentMessage;
import com.yahoo.messagebus.Message;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.logging.Logger;
+
/**
* @author Simon Thoresen Hult
*/
@@ -41,32 +41,28 @@ class ProcessingFactory {
}
public List<Processing> fromMessage(Message message) {
- List<Processing> processings = new ArrayList<>();
- switch (message.getType()) {
- case DocumentProtocol.MESSAGE_PUTDOCUMENT: {
+ return switch (message.getType()) {
+ case DocumentProtocol.MESSAGE_PUTDOCUMENT -> {
PutDocumentMessage putMessage = (PutDocumentMessage) message;
DocumentPut putOperation = new DocumentPut(createPutDocument(putMessage));
putOperation.setCondition(putMessage.getCondition());
putOperation.setCreateIfNonExistent(putMessage.getCreateIfNonExistent());
- processings.add(createProcessing(putOperation, message));
- break;
+ yield List.of(createProcessing(putOperation, message));
}
- case DocumentProtocol.MESSAGE_UPDATEDOCUMENT: {
+ case DocumentProtocol.MESSAGE_UPDATEDOCUMENT -> {
UpdateDocumentMessage updateMessage = (UpdateDocumentMessage) message;
DocumentUpdate updateOperation = updateMessage.getDocumentUpdate();
updateOperation.setCondition(updateMessage.getCondition());
- processings.add(createProcessing(updateOperation, message));
- break;
+ yield List.of(createProcessing(updateOperation, message));
}
- case DocumentProtocol.MESSAGE_REMOVEDOCUMENT: {
+ case DocumentProtocol.MESSAGE_REMOVEDOCUMENT -> {
RemoveDocumentMessage removeMessage = (RemoveDocumentMessage) message;
DocumentRemove removeOperation = new DocumentRemove(removeMessage.getDocumentId());
removeOperation.setCondition(removeMessage.getCondition());
- processings.add(createProcessing(removeOperation, message));
- break;
+ yield List.of(createProcessing(removeOperation, message));
}
- }
- return processings;
+ default -> List.of();
+ };
}
private Document createPutDocument(PutDocumentMessage msg) {
diff --git a/docproc/src/main/java/com/yahoo/docproc/proxy/ProxyDocument.java b/docproc/src/main/java/com/yahoo/docproc/proxy/ProxyDocument.java
index 5ef97afec55..f72fb691852 100644
--- a/docproc/src/main/java/com/yahoo/docproc/proxy/ProxyDocument.java
+++ b/docproc/src/main/java/com/yahoo/docproc/proxy/ProxyDocument.java
@@ -46,7 +46,7 @@ public class ProxyDocument extends Document implements DocumentOperationWrapper
private final Map<String, String> fieldMap;
private final Set<String> fieldsAllowed = new HashSet<>();
private final String docProcName;
- private Document doc;
+ private final Document doc;
public ProxyDocument(DocumentProcessor docProc, Document doc, Map<String, String> fieldMap) {
super(doc);
diff --git a/docproc/src/main/java/com/yahoo/docproc/proxy/ProxyDocumentUpdate.java b/docproc/src/main/java/com/yahoo/docproc/proxy/ProxyDocumentUpdate.java
index 642ae216687..56aaf7e3f56 100644
--- a/docproc/src/main/java/com/yahoo/docproc/proxy/ProxyDocumentUpdate.java
+++ b/docproc/src/main/java/com/yahoo/docproc/proxy/ProxyDocumentUpdate.java
@@ -20,13 +20,13 @@ import java.util.Map;
*/
public class ProxyDocumentUpdate extends DocumentUpdate implements DocumentOperationWrapper {
- private DocumentUpdate docU;
+ private final DocumentUpdate docU;
/**
* The field name map for schema mapping. The key is the field name that the docproc uses.
* The value is the actual name of the field in the document.
*/
- private Map<String, String> fieldMap;
+ private final Map<String, String> fieldMap;
public ProxyDocumentUpdate(DocumentUpdate docUpd, Map<String, String> fieldMap) {
super(docUpd.getType(), docUpd.getId().toString()+"-schemamappedupdate");