1 package org
.asamk
.signal
;
3 import org
.asamk
.signal
.json
.JsonError
;
4 import org
.asamk
.signal
.json
.JsonMessageEnvelope
;
5 import org
.asamk
.signal
.manager
.Manager
;
6 import org
.slf4j
.Logger
;
7 import org
.slf4j
.LoggerFactory
;
8 import org
.whispersystems
.signalservice
.api
.messages
.SignalServiceContent
;
9 import org
.whispersystems
.signalservice
.api
.messages
.SignalServiceEnvelope
;
11 import java
.util
.HashMap
;
13 public class JsonReceiveMessageHandler
implements Manager
.ReceiveMessageHandler
{
15 private final static Logger logger
= LoggerFactory
.getLogger(JsonReceiveMessageHandler
.class);
17 protected final Manager m
;
18 private final JsonWriter jsonWriter
;
20 public JsonReceiveMessageHandler(Manager m
, JsonWriter jsonWriter
) {
22 this.jsonWriter
= jsonWriter
;
26 public void handleMessage(SignalServiceEnvelope envelope
, SignalServiceContent content
, Throwable exception
) {
27 final var object
= new HashMap
<String
, Object
>();
28 if (exception
!= null) {
29 object
.put("error", new JsonError(exception
));
32 if (envelope
!= null) {
33 object
.put("envelope", new JsonMessageEnvelope(envelope
, content
, exception
, m
));
36 jsonWriter
.write(object
);