This is an automated email from the ASF dual-hosted git repository.
cgarcia pushed a commit to branch feature/merlot
in repository https://gitbox.apache.org/repos/asf/plc4x-extras.git
The following commit(s) were added to refs/heads/feature/merlot by this push:
new 3043cb6 Test HTC_STS Servlet.
3043cb6 is described below
commit 3043cb6e270cd9791103b411fd6b1007cc267ac4
Author: César García <[email protected]>
AuthorDate: Mon Apr 6 19:03:30 2026 -0400
Test HTC_STS Servlet.
---
.../org.apache.plc4x.merlot.archiver/pom.xml | 2 +-
.../impl/MerlotDataBrowserRTGetDataPVImpl.java | 34 ++++++++++++++++------
.../OSGI-INF/blueprint/archiver-service.xml | 2 +-
.../merlot/org.apache.plc4x.merlot.das.api/pom.xml | 2 +-
.../src/main/feature/feature.xml | 8 ++---
plc4j/tools/merlot/pom.xml | 5 ++--
6 files changed, 35 insertions(+), 18 deletions(-)
diff --git a/plc4j/tools/merlot/org.apache.plc4x.merlot.archiver/pom.xml
b/plc4j/tools/merlot/org.apache.plc4x.merlot.archiver/pom.xml
index 6755351..a797d13 100644
--- a/plc4j/tools/merlot/org.apache.plc4x.merlot.archiver/pom.xml
+++ b/plc4j/tools/merlot/org.apache.plc4x.merlot.archiver/pom.xml
@@ -216,7 +216,7 @@
<dependency>
<groupId>com.google.protobuf</groupId>
<artifactId>protobuf-java</artifactId>
- <version>4.34.1</version>
+ <version>${protobuf.version}</version>
</dependency>
<dependency>
<groupId>org.junit.jupiter</groupId>
diff --git
a/plc4j/tools/merlot/org.apache.plc4x.merlot.archiver/src/main/java/org/apache/plc4x/merlot/archiver/impl/MerlotDataBrowserRTGetDataPVImpl.java
b/plc4j/tools/merlot/org.apache.plc4x.merlot.archiver/src/main/java/org/apache/plc4x/merlot/archiver/impl/MerlotDataBrowserRTGetDataPVImpl.java
index e0aed53..cf4ea65 100644
---
a/plc4j/tools/merlot/org.apache.plc4x.merlot.archiver/src/main/java/org/apache/plc4x/merlot/archiver/impl/MerlotDataBrowserRTGetDataPVImpl.java
+++
b/plc4j/tools/merlot/org.apache.plc4x.merlot.archiver/src/main/java/org/apache/plc4x/merlot/archiver/impl/MerlotDataBrowserRTGetDataPVImpl.java
@@ -19,14 +19,20 @@ package org.apache.plc4x.merlot.archiver.impl;
import java.io.IOException;
import java.io.OutputStream;
import java.io.PrintWriter;
+import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.plc4x.merlot.archiver.api.MerlotHtc;
+import org.apache.plc4x.merlot.archiver.core.MerlotDecanterManagedService;
+import org.apache.plc4x.merlot.archiver.core.MerlotPBRawSerializer;
+import org.epics.vtype.VType;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
public class MerlotDataBrowserRTGetDataPVImpl extends HttpServlet {
-
+ private static final Logger LOGGER =
LoggerFactory.getLogger(MerlotDataBrowserRTGetDataPVImpl.class);
private final MerlotHtc mhtc;
public MerlotDataBrowserRTGetDataPVImpl(MerlotHtc mhtc) {
@@ -35,20 +41,30 @@ public class MerlotDataBrowserRTGetDataPVImpl extends
HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
- String nombre = req.getParameter("nombre");
- resp.setContentType("text/plain");
- PrintWriter pw = resp.getWriter();
- pw.println("Tu nombre: " + nombre);
- pw.close();
+ String from = req.getParameter("from");
+ String to = req.getParameter("to");
+ String[] pvs = req.getParameterValues("pv");
+ LOGGER.info("Inicio Servlet.");
+ if ((null == from) || (null == to)) return;
+ if ((null == pvs) || (pvs.length == 0)) return;
+ LOGGER.info(pvs[0] + " : " + from + " : " + to);
+ for (String pv:pvs){
+ PBRawResponse(pv, from, to, resp.getOutputStream());
+ }
+ resp.getOutputStream().close();
}
/*
*
*/
- private void PBRawResponse(String pv req, OutputStream out) {
- String[] pvs = req.getParameterValues("pv");
+ private void PBRawResponse(String pv, String init, String end,
OutputStream out) {
+ try {
+ List<VType> values = mhtc.getPVs(pv, init, end);
+ MerlotPBRawSerializer.serializeToPBRaw(values, pv, out);
+ } catch (Exception ex){
+ LOGGER.error(ex.getLocalizedMessage());
+ }
-
}
}
diff --git
a/plc4j/tools/merlot/org.apache.plc4x.merlot.archiver/src/main/resources/OSGI-INF/blueprint/archiver-service.xml
b/plc4j/tools/merlot/org.apache.plc4x.merlot.archiver/src/main/resources/OSGI-INF/blueprint/archiver-service.xml
index f03d013..3b216f9 100644
---
a/plc4j/tools/merlot/org.apache.plc4x.merlot.archiver/src/main/resources/OSGI-INF/blueprint/archiver-service.xml
+++
b/plc4j/tools/merlot/org.apache.plc4x.merlot.archiver/src/main/resources/OSGI-INF/blueprint/archiver-service.xml
@@ -221,7 +221,7 @@
<service interface="javax.servlet.Servlet">
<service-properties>
- <entry key="alias"
value="/request/rt/bpl/searchForPVsRegex/data/getData.raw"/>
+ <entry key="alias" value="/request/rt/data/getData.raw"/>
<entry key="servlet-name" value="RTGetDataForPVs"/>
</service-properties>
<bean
class="org.apache.plc4x.merlot.archiver.impl.MerlotDataBrowserRTGetDataPVImpl">
diff --git a/plc4j/tools/merlot/org.apache.plc4x.merlot.das.api/pom.xml
b/plc4j/tools/merlot/org.apache.plc4x.merlot.das.api/pom.xml
index d45abf4..ba1252f 100644
--- a/plc4j/tools/merlot/org.apache.plc4x.merlot.das.api/pom.xml
+++ b/plc4j/tools/merlot/org.apache.plc4x.merlot.das.api/pom.xml
@@ -247,7 +247,7 @@
<dependency>
<groupId>com.google.protobuf</groupId>
<artifactId>protobuf-java</artifactId>
- <version>4.34.1</version>
+ <version>${protobuf.version}</version>
</dependency>
</dependencies>
diff --git
a/plc4j/tools/merlot/org.apache.plc4x.merlot.features/src/main/feature/feature.xml
b/plc4j/tools/merlot/org.apache.plc4x.merlot.features/src/main/feature/feature.xml
index 38df148..53f4ee5 100644
---
a/plc4j/tools/merlot/org.apache.plc4x.merlot.features/src/main/feature/feature.xml
+++
b/plc4j/tools/merlot/org.apache.plc4x.merlot.features/src/main/feature/feature.xml
@@ -201,10 +201,10 @@
<bundle
start-level="82">wrap:mvn:com.google.guava/listenablefuture/9999.0-empty-to-avoid-conflict-with-guava</bundle>
<bundle start-level="80">mvn:com.google.code.gson/gson/2.10.1</bundle>
- <bundle
start-level="80">wrap:mvn:com.google.api.grpc/proto-google-common-protos/2.29.0</bundle>
- <bundle
start-level="80">wrap:mvn:com.google.protobuf/protobuf-java/3.25.3</bundle>
- <bundle
start-level="80">wrap:mvn:com.google.protobuf/protobuf-java-util/3.25.3</bundle>
- <bundle
start-level="80">wrap:mvn:com.google.protobuf.nano/protobuf-javanano/3.1.0</bundle>
+ <bundle
start-level="80">wrap:mvn:com.google.api.grpc/proto-google-common-protos/${proto.google.commons.version}</bundle>
+ <bundle
start-level="80">wrap:mvn:com.google.protobuf/protobuf-java/${protobuf.version}</bundle>
+ <bundle
start-level="80">wrap:mvn:com.google.protobuf/protobuf-java-util/${protobuf.version}</bundle>
+ <bundle
start-level="80">wrap:mvn:com.google.protobuf.nano/protobuf-javanano/${protobuf.nano.version}</bundle>
<!-- Support librarys -->
<bundle
start-level="80">wrap:mvn:com.squareup.okhttp/okhttp/2.7.5</bundle>
diff --git a/plc4j/tools/merlot/pom.xml b/plc4j/tools/merlot/pom.xml
index 9320b4c..34f3ea5 100644
--- a/plc4j/tools/merlot/pom.xml
+++ b/plc4j/tools/merlot/pom.xml
@@ -122,8 +122,9 @@ under the License.
<epics.gpclient.ca.version>1.0.8</epics.gpclient.ca.version>
<!-- GRPC Service -->
- <protobuf.version>3.25.3</protobuf.version>
- <proto.google.commons.version>2.29.0</proto.google.commons.version>
+ <protobuf.version>4.31.1</protobuf.version>
+ <protobuf.nano.version>3.1.0</protobuf.nano.version>
+ <proto.google.commons.version>2.58.0</proto.google.commons.version>
<grpc.version>1.62.2</grpc.version>
<guava.android.version>32.1.3-android</guava.android.version>
<errorprone.version>2.23.0</errorprone.version>