mirror of
https://github.com/Qortal/qortal.git
synced 2025-02-15 19:55:48 +00:00
Added optional "sender" filter to GET /chat/messages
This commit is contained in:
parent
4afbca7ed2
commit
b4a736c5d2
@ -72,6 +72,7 @@ public class ChatResource {
|
|||||||
@QueryParam("reference") String reference,
|
@QueryParam("reference") String reference,
|
||||||
@QueryParam("chatreference") String chatReference,
|
@QueryParam("chatreference") String chatReference,
|
||||||
@QueryParam("haschatreference") Boolean hasChatReference,
|
@QueryParam("haschatreference") Boolean hasChatReference,
|
||||||
|
@QueryParam("sender") String sender,
|
||||||
@Parameter(ref = "limit") @QueryParam("limit") Integer limit,
|
@Parameter(ref = "limit") @QueryParam("limit") Integer limit,
|
||||||
@Parameter(ref = "offset") @QueryParam("offset") Integer offset,
|
@Parameter(ref = "offset") @QueryParam("offset") Integer offset,
|
||||||
@Parameter(ref = "reverse") @QueryParam("reverse") Boolean reverse) {
|
@Parameter(ref = "reverse") @QueryParam("reverse") Boolean reverse) {
|
||||||
@ -107,6 +108,7 @@ public class ChatResource {
|
|||||||
chatReferenceBytes,
|
chatReferenceBytes,
|
||||||
hasChatReference,
|
hasChatReference,
|
||||||
involvingAddresses,
|
involvingAddresses,
|
||||||
|
sender,
|
||||||
limit, offset, reverse);
|
limit, offset, reverse);
|
||||||
} catch (DataException e) {
|
} catch (DataException e) {
|
||||||
throw ApiExceptionFactory.INSTANCE.createException(request, ApiError.REPOSITORY_ISSUE, e);
|
throw ApiExceptionFactory.INSTANCE.createException(request, ApiError.REPOSITORY_ISSUE, e);
|
||||||
|
@ -49,6 +49,7 @@ public class ChatMessagesWebSocket extends ApiWebSocket {
|
|||||||
null,
|
null,
|
||||||
null,
|
null,
|
||||||
null,
|
null,
|
||||||
|
null,
|
||||||
null, null, null);
|
null, null, null);
|
||||||
|
|
||||||
sendMessages(session, chatMessages);
|
sendMessages(session, chatMessages);
|
||||||
@ -79,6 +80,7 @@ public class ChatMessagesWebSocket extends ApiWebSocket {
|
|||||||
null,
|
null,
|
||||||
null,
|
null,
|
||||||
involvingAddresses,
|
involvingAddresses,
|
||||||
|
null,
|
||||||
null, null, null);
|
null, null, null);
|
||||||
|
|
||||||
sendMessages(session, chatMessages);
|
sendMessages(session, chatMessages);
|
||||||
|
@ -15,7 +15,7 @@ public interface ChatRepository {
|
|||||||
*/
|
*/
|
||||||
public List<ChatMessage> getMessagesMatchingCriteria(Long before, Long after,
|
public List<ChatMessage> getMessagesMatchingCriteria(Long before, Long after,
|
||||||
Integer txGroupId, byte[] reference, byte[] chatReferenceBytes, Boolean hasChatReference,
|
Integer txGroupId, byte[] reference, byte[] chatReferenceBytes, Boolean hasChatReference,
|
||||||
List<String> involving, Integer limit, Integer offset, Boolean reverse) throws DataException;
|
List<String> involving, String senderAddress, Integer limit, Integer offset, Boolean reverse) throws DataException;
|
||||||
|
|
||||||
public ChatMessage toChatMessage(ChatTransactionData chatTransactionData) throws DataException;
|
public ChatMessage toChatMessage(ChatTransactionData chatTransactionData) throws DataException;
|
||||||
|
|
||||||
|
@ -24,7 +24,7 @@ public class HSQLDBChatRepository implements ChatRepository {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<ChatMessage> getMessagesMatchingCriteria(Long before, Long after, Integer txGroupId, byte[] referenceBytes,
|
public List<ChatMessage> getMessagesMatchingCriteria(Long before, Long after, Integer txGroupId, byte[] referenceBytes,
|
||||||
byte[] chatReferenceBytes, Boolean hasChatReference, List<String> involving,
|
byte[] chatReferenceBytes, Boolean hasChatReference, List<String> involving, String senderAddress,
|
||||||
Integer limit, Integer offset, Boolean reverse) throws DataException {
|
Integer limit, Integer offset, Boolean reverse) throws DataException {
|
||||||
// Check args meet expectations
|
// Check args meet expectations
|
||||||
if ((txGroupId != null && involving != null && !involving.isEmpty())
|
if ((txGroupId != null && involving != null && !involving.isEmpty())
|
||||||
@ -74,6 +74,11 @@ public class HSQLDBChatRepository implements ChatRepository {
|
|||||||
whereClauses.add("chat_reference IS NULL");
|
whereClauses.add("chat_reference IS NULL");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (senderAddress != null) {
|
||||||
|
whereClauses.add("sender = ?");
|
||||||
|
bindParams.add(senderAddress);
|
||||||
|
}
|
||||||
|
|
||||||
if (txGroupId != null) {
|
if (txGroupId != null) {
|
||||||
whereClauses.add("tx_group_id = " + txGroupId); // int safe to use literally
|
whereClauses.add("tx_group_id = " + txGroupId); // int safe to use literally
|
||||||
whereClauses.add("recipient IS NULL");
|
whereClauses.add("recipient IS NULL");
|
||||||
|
Loading…
x
Reference in New Issue
Block a user