- public JsonAxolotlStore(JSONObject jsonAxolotl) throws IOException, InvalidKeyException {
- this.preKeyStore = new JsonPreKeyStore(jsonAxolotl.getJSONArray("preKeys"));
- this.sessionStore = new JsonSessionStore(jsonAxolotl.getJSONArray("sessionStore"));
- this.signedPreKeyStore = new JsonSignedPreKeyStore(jsonAxolotl.getJSONArray("signedPreKeyStore"));
- this.identityKeyStore = new JsonIdentityKeyStore(jsonAxolotl.getJSONObject("identityKeyStore"));
+ @JsonProperty("sessionStore")
+ @JsonDeserialize(using = JsonSessionStore.JsonSessionStoreDeserializer.class)
+ @JsonSerialize(using = JsonSessionStore.JsonPreKeyStoreSerializer.class)
+ protected JsonSessionStore sessionStore;
+
+ @JsonProperty("signedPreKeyStore")
+ @JsonDeserialize(using = JsonSignedPreKeyStore.JsonSignedPreKeyStoreDeserializer.class)
+ @JsonSerialize(using = JsonSignedPreKeyStore.JsonSignedPreKeyStoreSerializer.class)
+ protected JsonSignedPreKeyStore signedPreKeyStore;
+
+ @JsonProperty("identityKeyStore")
+ @JsonDeserialize(using = JsonIdentityKeyStore.JsonIdentityKeyStoreDeserializer.class)
+ @JsonSerialize(using = JsonIdentityKeyStore.JsonIdentityKeyStoreSerializer.class)
+ protected JsonIdentityKeyStore identityKeyStore;
+
+ public JsonAxolotlStore() {
+ }
+
+ public JsonAxolotlStore(JsonPreKeyStore preKeyStore, JsonSessionStore sessionStore, JsonSignedPreKeyStore signedPreKeyStore, JsonIdentityKeyStore identityKeyStore) {
+ this.preKeyStore = preKeyStore;
+ this.sessionStore = sessionStore;
+ this.signedPreKeyStore = signedPreKeyStore;
+ this.identityKeyStore = identityKeyStore;