public static ObjectInFolderContainer convertDescendant(final Map<String, Object> json, final TypeCache typeCache) {
if (json == null) {
return null;
}
ObjectInFolderContainerImpl result = new ObjectInFolderContainerImpl();
result.setObject(convertObjectInFolder(getMap(json.get(JSON_OBJECTINFOLDERCONTAINER_OBJECT)), typeCache));
List<ObjectInFolderContainer> containerList = new ArrayList<ObjectInFolderContainer>();
List<Object> jsonContainerList = getList(json.get(JSON_OBJECTINFOLDERCONTAINER_CHILDREN));
if (jsonContainerList != null) {
for (Object obj : jsonContainerList) {
Map<String, Object> containerChild = getMap(obj);
if (containerChild != null) {
containerList.add(convertDescendant(containerChild, typeCache));
}
}
}
result.setChildren(containerList);
convertExtension(json, result, OBJECTINFOLDERCONTAINER_KEYS);
return result;
}