@Override public void serialize(final UnregisterResponse unregisterResponse, final JsonGenerator jgen, final SerializerProvider provider) throws IOException { jgen.writeStartObject(); jgen.writeFieldName(RegisterResponse.MESSSAGE_TYPE_FIELD); jgen.writeString(unregisterResponse.getMessageType().toString().toLowerCase()); jgen.writeFieldName(RegisterResponse.CHANNEL_ID_FIELD); jgen.writeString(unregisterResponse.getChannelId()); jgen.writeFieldName(RegisterResponse.STATUS_FIELD); jgen.writeNumber(unregisterResponse.getStatus().getCode()); jgen.writeEndObject(); } }
@Override public void serialize(final UnregisterMessage unregister, final JsonGenerator jgen, final SerializerProvider provider) throws IOException { jgen.writeStartObject(); jgen.writeFieldName(UnregisterMessage.MESSSAGE_TYPE_FIELD); jgen.writeString(unregister.getMessageType().toString().toLowerCase()); jgen.writeFieldName(RegisterMessage.CHANNEL_ID_FIELD); jgen.writeString(unregister.getChannelId()); jgen.writeEndObject(); } }
@Override public void serialize(final RegisterResponse registerResponse, final JsonGenerator jgen, final SerializerProvider provider) throws IOException { jgen.writeStartObject(); jgen.writeFieldName(RegisterResponse.MESSSAGE_TYPE_FIELD); jgen.writeString(registerResponse.getMessageType().toString().toLowerCase()); jgen.writeFieldName(RegisterResponse.CHANNEL_ID_FIELD); jgen.writeString(registerResponse.getChannelId()); jgen.writeFieldName(RegisterResponse.STATUS_FIELD); jgen.writeNumber(registerResponse.getStatus().getCode()); jgen.writeFieldName(RegisterResponse.PUSH_ENDPOINT__FIELD); jgen.writeString(registerResponse.getPushEndpoint()); jgen.writeEndObject(); } }
@Override public void serialize(final AckMessage ackMessage, final JsonGenerator jgen, final SerializerProvider provider) throws IOException { jgen.writeStartObject(); jgen.writeFieldName(AckMessage.MESSSAGE_TYPE_FIELD); jgen.writeString(ackMessage.getMessageType().toString().toLowerCase()); jgen.writeArrayFieldStart(AckMessage.UPDATES_FIELD); for (Ack ack : ackMessage.getAcks()) { jgen.writeStartObject(); jgen.writeFieldName("channelID"); jgen.writeString(ack.getChannelId()); jgen.writeFieldName(AckMessage.VERSION_FIELD); jgen.writeNumber(ack.getVersion()); jgen.writeEndObject(); } jgen.writeEndArray(); jgen.writeEndObject(); } }
@Override public void serialize(final NotificationMessage notification, final JsonGenerator jgen, final SerializerProvider provider) throws IOException { jgen.writeStartObject(); jgen.writeFieldName(NotificationMessage.MESSSAGE_TYPE_FIELD); jgen.writeString(notification.getMessageType().toString().toLowerCase()); jgen.writeArrayFieldStart(NotificationMessage.UPDATES_FIELD); for (Ack ack : notification.getAcks()) { jgen.writeStartObject(); jgen.writeFieldName(RegisterMessage.CHANNEL_ID_FIELD); jgen.writeString(ack.getChannelId()); jgen.writeFieldName(NotificationMessage.VERSION_FIELD); jgen.writeNumber(ack.getVersion()); jgen.writeEndObject(); } jgen.writeEndArray(); jgen.writeEndObject(); } }
@Override public void serialize(final HelloMessage hello, final JsonGenerator jgen, final SerializerProvider provider) throws IOException { jgen.writeStartObject(); jgen.writeFieldName(HelloMessage.MESSSAGE_TYPE_FIELD); jgen.writeString(hello.getMessageType().toString().toLowerCase()); jgen.writeFieldName(HelloMessage.UAID_FIELD); jgen.writeString(hello.getUAID()); jgen.writeArrayFieldStart(HelloMessage.CHANNEL_IDS_FIELD); for (String channelId : hello.getChannelIds()) { jgen.writeString(channelId); } jgen.writeEndArray(); jgen.writeEndObject(); } }
@Override public void serialize(final RegisterMessage register, final JsonGenerator jgen, final SerializerProvider provider) throws IOException { jgen.writeStartObject(); jgen.writeFieldName(RegisterMessage.MESSSAGE_TYPE_FIELD); jgen.writeString(register.getMessageType().toString().toLowerCase()); jgen.writeFieldName(RegisterMessage.CHANNEL_ID_FIELD); jgen.writeString(register.getChannelId()); jgen.writeEndObject(); } }
@Override public void serialize(final HelloResponse helloResponse, final JsonGenerator jgen, final SerializerProvider provider) throws IOException { jgen.writeStartObject(); jgen.writeFieldName(HelloMessage.MESSSAGE_TYPE_FIELD); jgen.writeString(helloResponse.getMessageType().toString().toLowerCase()); jgen.writeFieldName(HelloMessage.UAID_FIELD); jgen.writeString(helloResponse.getUAID()); jgen.writeEndObject(); } }
@Override public Set<Ack> handleAcknowledgement(final AckMessage ackMessage, final String uaid) { return store.removeAcknowledged(uaid, ackMessage.getAcks()); }
@Override public Type getMessageType() { if (messageTypeNode == null) { return MessageType.Type.PING; } return MessageType.Type.valueOf(messageTypeNode.asText().toUpperCase()); } };
@Override public void serialize(final AckMessage ackMessage, final JsonGenerator jgen, final SerializerProvider provider) throws IOException { jgen.writeStartObject(); jgen.writeFieldName(AckMessage.MESSSAGE_TYPE_FIELD); jgen.writeString(ackMessage.getMessageType().toString().toLowerCase()); jgen.writeArrayFieldStart(AckMessage.UPDATES_FIELD); for (Ack ack : ackMessage.getAcks()) { jgen.writeStartObject(); jgen.writeFieldName("channelID"); jgen.writeString(ack.getChannelId()); jgen.writeFieldName(AckMessage.VERSION_FIELD); jgen.writeNumber(ack.getVersion()); jgen.writeEndObject(); } jgen.writeEndArray(); jgen.writeEndObject(); } }
@Override public void serialize(final NotificationMessage notification, final JsonGenerator jgen, final SerializerProvider provider) throws IOException { jgen.writeStartObject(); jgen.writeFieldName(NotificationMessage.MESSSAGE_TYPE_FIELD); jgen.writeString(notification.getMessageType().toString().toLowerCase()); jgen.writeArrayFieldStart(NotificationMessage.UPDATES_FIELD); for (Ack ack : notification.getAcks()) { jgen.writeStartObject(); jgen.writeFieldName(RegisterMessage.CHANNEL_ID_FIELD); jgen.writeString(ack.getChannelId()); jgen.writeFieldName(NotificationMessage.VERSION_FIELD); jgen.writeNumber(ack.getVersion()); jgen.writeEndObject(); } jgen.writeEndArray(); jgen.writeEndObject(); } }
@Override public void serialize(final RegisterResponse registerResponse, final JsonGenerator jgen, final SerializerProvider provider) throws IOException { jgen.writeStartObject(); jgen.writeFieldName(RegisterResponse.MESSSAGE_TYPE_FIELD); jgen.writeString(registerResponse.getMessageType().toString().toLowerCase()); jgen.writeFieldName(RegisterResponse.CHANNEL_ID_FIELD); jgen.writeString(registerResponse.getChannelId()); jgen.writeFieldName(RegisterResponse.STATUS_FIELD); jgen.writeNumber(registerResponse.getStatus().getCode()); jgen.writeFieldName(RegisterResponse.PUSH_ENDPOINT__FIELD); jgen.writeString(registerResponse.getPushEndpoint()); jgen.writeEndObject(); } }
@Override public void serialize(final UnregisterResponse unregisterResponse, final JsonGenerator jgen, final SerializerProvider provider) throws IOException { jgen.writeStartObject(); jgen.writeFieldName(RegisterResponse.MESSSAGE_TYPE_FIELD); jgen.writeString(unregisterResponse.getMessageType().toString().toLowerCase()); jgen.writeFieldName(RegisterResponse.CHANNEL_ID_FIELD); jgen.writeString(unregisterResponse.getChannelId()); jgen.writeFieldName(RegisterResponse.STATUS_FIELD); jgen.writeNumber(unregisterResponse.getStatus().getCode()); jgen.writeEndObject(); } }
@Override public void serialize(final HelloMessage hello, final JsonGenerator jgen, final SerializerProvider provider) throws IOException { jgen.writeStartObject(); jgen.writeFieldName(HelloMessage.MESSSAGE_TYPE_FIELD); jgen.writeString(hello.getMessageType().toString().toLowerCase()); jgen.writeFieldName(HelloMessage.UAID_FIELD); jgen.writeString(hello.getUAID()); jgen.writeArrayFieldStart(HelloMessage.CHANNEL_IDS_FIELD); for (String channelId : hello.getChannelIds()) { jgen.writeString(channelId); } jgen.writeEndArray(); jgen.writeEndObject(); } }
@Override public void serialize(final UnregisterMessage unregister, final JsonGenerator jgen, final SerializerProvider provider) throws IOException { jgen.writeStartObject(); jgen.writeFieldName(UnregisterMessage.MESSSAGE_TYPE_FIELD); jgen.writeString(unregister.getMessageType().toString().toLowerCase()); jgen.writeFieldName(RegisterMessage.CHANNEL_ID_FIELD); jgen.writeString(unregister.getChannelId()); jgen.writeEndObject(); } }
@Override public void serialize(final RegisterMessage register, final JsonGenerator jgen, final SerializerProvider provider) throws IOException { jgen.writeStartObject(); jgen.writeFieldName(RegisterMessage.MESSSAGE_TYPE_FIELD); jgen.writeString(register.getMessageType().toString().toLowerCase()); jgen.writeFieldName(RegisterMessage.CHANNEL_ID_FIELD); jgen.writeString(register.getChannelId()); jgen.writeEndObject(); } }
@Override public void serialize(final HelloResponse helloResponse, final JsonGenerator jgen, final SerializerProvider provider) throws IOException { jgen.writeStartObject(); jgen.writeFieldName(HelloMessage.MESSSAGE_TYPE_FIELD); jgen.writeString(helloResponse.getMessageType().toString().toLowerCase()); jgen.writeFieldName(HelloMessage.UAID_FIELD); jgen.writeString(helloResponse.getUAID()); jgen.writeEndObject(); } }
@Override public Set<Ack> handleAcknowledgement(final AckMessage ackMessage, final String uaid) { return store.removeAcknowledged(uaid, ackMessage.getAcks()); }
@Override public Type getMessageType() { if (messageTypeNode == null) { return MessageType.Type.PING; } return MessageType.Type.valueOf(messageTypeNode.asText().toUpperCase()); } };