import java.util.List;
public class DependencyTreeUnmarshaller extends AbstractUnmarshaller<DependencyTree> {
@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;
}