@Override
    public SystemStreamPartition deserialize(JsonParser jsonParser, DeserializationContext context) throws IOException, JsonProcessingException {
      ObjectCodec oc = jsonParser.getCodec();
      JsonNode node = oc.readTree(jsonParser);
      String system = node.get("system").textValue();
      String stream = node.get("stream").textValue();
      Partition partition = new Partition(node.get("partition").intValue());
      int keyBucket = -1;
      if (node.get("keyBucket") != null) {
        keyBucket = node.get("keyBucket").intValue();
      }
      return new SystemStreamPartition(system, stream, partition, keyBucket);
    }
@return Returns a new ObjectMapper that's been configured to (de)serialize
        Samza's job data model, and simple data types such as TaskName,
        Partition, Config, and SystemStreamPartition.
samza-core/src/main/java/org/apache/samza/serializers/model/SamzaObjectMapper.java