forked from Qortal/qortal
Added optional limit/offset/reverse query string params to GET /websockets/chat/messages.
Without this, the websocket returns all messages on connection, which is very time consuming.
This commit is contained in:
parent
5386db8a3f
commit
05eb337367
@ -36,6 +36,15 @@ public class ChatMessagesWebSocket extends ApiWebSocket {
|
|||||||
Map<String, List<String>> queryParams = session.getUpgradeRequest().getParameterMap();
|
Map<String, List<String>> queryParams = session.getUpgradeRequest().getParameterMap();
|
||||||
Encoding encoding = getTargetEncoding(session);
|
Encoding encoding = getTargetEncoding(session);
|
||||||
|
|
||||||
|
List<String> limitList = queryParams.get("limit");
|
||||||
|
Integer limit = (limitList != null && limitList.size() == 1) ? Integer.parseInt(limitList.get(0)) : null;
|
||||||
|
|
||||||
|
List<String> offsetList = queryParams.get("offset");
|
||||||
|
Integer offset = (offsetList != null && offsetList.size() == 1) ? Integer.parseInt(offsetList.get(0)) : null;
|
||||||
|
|
||||||
|
List<String> reverseList = queryParams.get("offset");
|
||||||
|
Boolean reverse = (reverseList != null && reverseList.size() == 1) ? Boolean.getBoolean(reverseList.get(0)) : null;
|
||||||
|
|
||||||
List<String> txGroupIds = queryParams.get("txGroupId");
|
List<String> txGroupIds = queryParams.get("txGroupId");
|
||||||
if (txGroupIds != null && txGroupIds.size() == 1) {
|
if (txGroupIds != null && txGroupIds.size() == 1) {
|
||||||
int txGroupId = Integer.parseInt(txGroupIds.get(0));
|
int txGroupId = Integer.parseInt(txGroupIds.get(0));
|
||||||
@ -51,7 +60,7 @@ public class ChatMessagesWebSocket extends ApiWebSocket {
|
|||||||
null,
|
null,
|
||||||
null,
|
null,
|
||||||
encoding,
|
encoding,
|
||||||
null, null, null);
|
limit, offset, reverse);
|
||||||
|
|
||||||
sendMessages(session, chatMessages);
|
sendMessages(session, chatMessages);
|
||||||
} catch (DataException e) {
|
} catch (DataException e) {
|
||||||
@ -83,7 +92,7 @@ public class ChatMessagesWebSocket extends ApiWebSocket {
|
|||||||
involvingAddresses,
|
involvingAddresses,
|
||||||
null,
|
null,
|
||||||
encoding,
|
encoding,
|
||||||
null, null, null);
|
limit, offset, reverse);
|
||||||
|
|
||||||
sendMessages(session, chatMessages);
|
sendMessages(session, chatMessages);
|
||||||
} catch (DataException e) {
|
} catch (DataException e) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user