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);
		}
	}
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 ) ; } }
Visits all the fields in the given complex object.

@param node the ObjectGraphNode containing the object.