KeyDeserializer.java

  1. package com.syntifi.casper.sdk.jackson.deserializer;

  2. import com.syntifi.casper.sdk.exception.NoSuchKeyTagException;
  3. import com.syntifi.casper.sdk.model.key.Key;
  4. import com.syntifi.casper.sdk.model.key.KeyTag;

  5. import java.util.Arrays;

  6. /**
  7.  * Customize the mapping of Casper's PublicKey
  8.  *
  9.  * @author Alexandre Carvalho
  10.  * @author Andre Bertolace
  11.  * @since 0.0.1
  12.  */
  13. public class KeyDeserializer extends AbstractSerializedKeyTaggedHexDeserializer<Key, KeyTag> {

  14.     @Override
  15.     protected Key getInstanceOf() {
  16.         return new Key();
  17.     }

  18.     @Override
  19.     protected void loadKey(Key key, byte[] bytes) throws NoSuchKeyTagException {
  20.         key.setTag(KeyTag.getByTag(bytes[0]));
  21.         key.setKey(Arrays.copyOfRange(bytes, 1, bytes.length));
  22.     }
  23. }