private void findReferencesIterable ( SerIterator itemIterator , Map < Object , Integer > objects ) { if ( itemIterator . category ( ) == SerCategory . MAP ) { while ( itemIterator . hasNext ( ) ) { itemIterator . next ( ) ; findReferencesBean ( itemIterator . key ( ) , itemIterator . keyType ( ) , objects , null ) ; findReferencesBean ( itemIterator . value ( ) , itemIterator . valueType ( ) , objects , itemIterator ) ; } } else if ( itemIterator . category ( ) == SerCategory . COUNTED ) { while ( itemIterator . hasNext ( ) ) { itemIterator . next ( ) ; findReferencesBean ( itemIterator . value ( ) , itemIterator . valueType ( ) , objects , itemIterator ) ; } } else if ( itemIterator . category ( ) == SerCategory . TABLE ) { while ( itemIterator . hasNext ( ) ) { itemIterator . next ( ) ; findReferencesBean ( itemIterator . key ( ) , itemIterator . keyType ( ) , objects , null ) ; findReferencesBean ( itemIterator . column ( ) , itemIterator . columnType ( ) , objects , null ) ; findReferencesBean ( itemIterator . value ( ) , itemIterator . valueType ( ) , objects , itemIterator ) ; } } else if ( itemIterator . category ( ) == SerCategory . GRID ) { while ( itemIterator . hasNext ( ) ) { itemIterator . next ( ) ; findReferencesBean ( itemIterator . value ( ) , itemIterator . valueType ( ) , objects , itemIterator ) ; } } else { while ( itemIterator . hasNext ( ) ) { itemIterator . next ( ) ; findReferencesBean ( itemIterator . value ( ) , itemIterator . valueType ( ) , objects , itemIterator ) ; } } }
recursively find the references in an iterable