From f54e43ef08a92dafdbd3fd9854b54454e74f2e38 Mon Sep 17 00:00:00 2001
From: karnem <mikhail.karnevskiy@desy.de>
Date: Tue, 28 Nov 2023 16:21:25 +0100
Subject: [PATCH] Add default value for flag detailed of the get_stream_list
 request value: true. This will restore back-compatibility with old consumer
 library.

---
 broker/src/asapo_broker/server/get_commands_test.go | 2 +-
 broker/src/asapo_broker/server/get_streams.go       | 7 ++++++-
 2 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/broker/src/asapo_broker/server/get_commands_test.go b/broker/src/asapo_broker/server/get_commands_test.go
index 3508bcbd0..c667ab9b4 100644
--- a/broker/src/asapo_broker/server/get_commands_test.go
+++ b/broker/src/asapo_broker/server/get_commands_test.go
@@ -53,7 +53,7 @@ var testsGetCommand = []struct {
 		expectedGroupID + "/next", "&resend_nacks=true&delay_ms=10000&resend_attempts=3", "{\"id_key\":\"_id\",\"resend\":true,\"delay_ms\":10000,\"resend_attempts\":3}"},
 	{"size", expectedSource, expectedStream, "", expectedStream + "/size", "", ""},
 	{"size", expectedSource, expectedStream, "", expectedStream + "/size", "&incomplete=true", "true"},
-	{"streams", expectedSource, "0", "", "0/streams", "", "{\"from\":\"\",\"filter\":\"\",\"detailed\":\"\"}"},
+	{"streams", expectedSource, "0", "", "0/streams", "", "{\"from\":\"\",\"filter\":\"\",\"detailed\":\"true\"}"},
 	{"lastack", expectedSource, expectedStream, expectedGroupID, expectedStream + "/" + expectedGroupID + "/lastack", "", ""},
 	{"datasources", expectedSource, "0", "", "0/sources", "", ""},
 }
diff --git a/broker/src/asapo_broker/server/get_streams.go b/broker/src/asapo_broker/server/get_streams.go
index abbf0b4e2..13d02bae6 100644
--- a/broker/src/asapo_broker/server/get_streams.go
+++ b/broker/src/asapo_broker/server/get_streams.go
@@ -10,9 +10,14 @@ type GetStreamsParams = database.GetStreamsParams
 
 func routeGetStreams(w http.ResponseWriter, r *http.Request) {
 	keys := r.URL.Query()
+	// Use true as for back compatibility
+	detailed := keys.Get("detailed")
+	if detailed == "" {
+		detailed = "true"
+	}
 	extraParams := GetStreamsParams{From: keys.Get("from"),
 		Filter:   keys.Get("filter"),
-		Detailed: keys.Get("detailed")}
+		Detailed: detailed}
 	encoded, _ := json.Marshal(extraParams)
 	processRequest(w, r, "streams", string(encoded), false)
 }
-- 
GitLab