This is an automated email from the ASF dual-hosted git repository.
riemer pushed a commit to branch dev
in repository https://gitbox.apache.org/repos/asf/streampipes.git
The following commit(s) were added to refs/heads/dev by this push:
new de89525bb8 feat: Add method to get dataset by name to StreamPipes
client (#4129)
de89525bb8 is described below
commit de89525bb8d81516e14c45246c7099b5d9fbd406
Author: Dominik Riemer <[email protected]>
AuthorDate: Sun Jan 25 10:27:00 2026 +0100
feat: Add method to get dataset by name to StreamPipes client (#4129)
---
.../java/org/apache/streampipes/client/api/IDataLakeMeasureApi.java | 2 ++
.../java/org/apache/streampipes/client/api/DataLakeMeasureApi.java | 5 +++++
.../streampipes/rest/impl/datalake/DataLakeMeasureResource.java | 6 +++---
3 files changed, 10 insertions(+), 3 deletions(-)
diff --git
a/streampipes-client-api/src/main/java/org/apache/streampipes/client/api/IDataLakeMeasureApi.java
b/streampipes-client-api/src/main/java/org/apache/streampipes/client/api/IDataLakeMeasureApi.java
index 7c9ad21bdf..84549a7fbb 100644
---
a/streampipes-client-api/src/main/java/org/apache/streampipes/client/api/IDataLakeMeasureApi.java
+++
b/streampipes-client-api/src/main/java/org/apache/streampipes/client/api/IDataLakeMeasureApi.java
@@ -26,6 +26,8 @@ import java.util.Optional;
public interface IDataLakeMeasureApi extends CRUDApi<String, DataLakeMeasure> {
Optional<DataLakeMeasure> get(String id);
+ Optional<DataLakeMeasure> getByDatasetName(String datasetName);
+
@Override
List<DataLakeMeasure> all();
diff --git
a/streampipes-client/src/main/java/org/apache/streampipes/client/api/DataLakeMeasureApi.java
b/streampipes-client/src/main/java/org/apache/streampipes/client/api/DataLakeMeasureApi.java
index b690f4ea2e..d2d15fdcba 100644
---
a/streampipes-client/src/main/java/org/apache/streampipes/client/api/DataLakeMeasureApi.java
+++
b/streampipes-client/src/main/java/org/apache/streampipes/client/api/DataLakeMeasureApi.java
@@ -37,6 +37,11 @@ public class DataLakeMeasureApi extends
AbstractTypedClientApi<DataLakeMeasure>
return getSingle(getBaseResourcePath().addToPath(id));
}
+ @Override
+ public Optional<DataLakeMeasure> getByDatasetName(String datasetName) {
+ return
getSingle(getBaseResourcePath().addToPath("byName").addToPath(datasetName));
+ }
+
@Override
public List<DataLakeMeasure> all() {
throw new IllegalArgumentException("Not yet implemented");
diff --git
a/streampipes-rest/src/main/java/org/apache/streampipes/rest/impl/datalake/DataLakeMeasureResource.java
b/streampipes-rest/src/main/java/org/apache/streampipes/rest/impl/datalake/DataLakeMeasureResource.java
index 359efaffe2..5637d37692 100644
---
a/streampipes-rest/src/main/java/org/apache/streampipes/rest/impl/datalake/DataLakeMeasureResource.java
+++
b/streampipes-rest/src/main/java/org/apache/streampipes/rest/impl/datalake/DataLakeMeasureResource.java
@@ -99,9 +99,9 @@ public class DataLakeMeasureResource extends
AbstractDataLakeResource {
@GetMapping(path = "byName/{measureName}", produces =
MediaType.APPLICATION_JSON_VALUE)
@PreAuthorize("this.hasReadAuthority() and
this.checkPermissionByName(#measureName, 'READ')")
public ResponseEntity<?> getDataLakeMeasureName(@PathVariable("measureName")
String measureName) {
- var measure =
this.dataLakeMeasureManagement.getExistingMeasureByName(measureName);
- if (Objects.nonNull(measure)) {
- return ok(measure);
+ var measureOpt =
this.dataLakeMeasureManagement.getExistingMeasureByName(measureName);
+ if (measureOpt.isPresent()) {
+ return ok(measureOpt.get());
} else {
return notFound();
}