T
- Type of the data contained within a notification@Beta public abstract class JsonNotificationCallback<T> extends TypedNotificationCallback<T>
Beta
TypedNotificationCallback
which uses an JSON content encoding.
Must NOT be implemented in form of an anonymous class as this will break serialization.
Implementation should be thread-safe. Example usage:
static class MyNotificationCallback extends JsonNotificationCallback <ListResponse > { private static final long serialVersionUID = 1L; @Override protected void onNotification( StoredChannel channel, TypedNotification <ListResponse > notification) { ListResponse content = notification.getContent(); switch (notification.getResourceState()) { case ResourceStates.SYNC: break; case ResourceStates.EXISTS: break; case ResourceStates.NOT_EXISTS: break; } } @Override protected JsonFactory getJsonFactory() throws IOException { return new JacksonFactory(); } @Override protected Class <ListResponse > getDataClass() throws IOException { return ListResponse.class; } }
Constructor and Description |
---|
JsonNotificationCallback() |
Modifier and Type | Method and Description |
---|---|
protected abstract JsonFactory |
getJsonFactory()
Returns the JSON factory to use to parse the notification content.
|
protected JsonObjectParser |
getObjectParser()
Returns an
ObjectParser which can be used to parse this notification. |
getDataClass, onNotification, onNotification
protected final JsonObjectParser getObjectParser() throws IOException
TypedNotificationCallback
ObjectParser
which can be used to parse this notification.getObjectParser
in class TypedNotificationCallback<T>
IOException
protected abstract JsonFactory getJsonFactory() throws IOException
IOException
Copyright © 2010–2020 Google. All rights reserved.