@Override protected DependencyTree parse(Object json) { WSUtils utils = WSUtils.getINSTANCE(); DependencyTree tree = new DependencyTree() .setDepId(utils.getString(json, "did")) .setResourceId(utils.getString(json, "rid")) .setResourceKey(utils.getString(json, "k")) .setResourceName(utils.getString(json, "n")) .setResourceScope(utils.getString(json, "s")) .setResourceQualifier(utils.getString(json, "q")) .setResourceVersion(utils.getString(json, "v")) .setUsage(utils.getString(json, "u")) .setWeight(utils.getInteger(json, "w")); List<DependencyTree> to = new ArrayList<DependencyTree>(); tree.setTo(to); Object toJson = utils.getField(json, "to"); if (toJson != null) { for (int i = 0; i < utils.getArraySize(toJson); i++) { to.add(parse(utils.getArrayElement(toJson, i))); } } return tree; } }