code: private void visitComplexType(final ObjectGraphNode node) {
  		Field[] fields = getAllInstanceFields(node.getValue());
  
  		for (int i = 0; i < fields.length; i++) {
  			Object fieldValue = readField(fields[i], node.getValue());
  			String fieldType = fields[i].getType().getName();
  
  			ObjectGraphNode childNode = new ObjectGraphNode(++nodeCount, fields[i].getName(),
  					fieldType, fieldValue);
  			node.add(childNode);
  			visit(childNode);
  		}
  	}
docs: Visits all the fields in the given complex object.
  
  @param node the ObjectGraphNode containing the object.