return;
}
- int originalMapSize = map.size();
-
Iterator<Map.Entry<T,T>> iter = map.entrySet().iterator();
- int i=0;
while ( iter.hasNext() ) {
Map.Entry<T,T> e = iter.next();
CdmEntityInfo childCei = new CdmEntityInfo(e);
private <T extends Object> void debug(Collection<T> collection,
List<CdmEntityInfo> alreadyVisitedEntities,
CdmEntityInfo cei) {
- int length = collection.size();
- Object[] result = new Object[length];
Iterator<T> collectionItr = collection.iterator();
while(collectionItr.hasNext()) {
Object obj = collectionItr.next();
- CdmEntityInfo childCei = new CdmEntityInfo(ProxyUtils.deproxy(obj));
- cei.addChild(childCei);
- debugRecursive(obj, alreadyVisitedEntities, childCei);
+ boolean alreadyVisited = false;
+ for (CdmEntityInfo entityInfo: alreadyVisitedEntities) {
+ if(obj.equals(entityInfo.getObject())){
+ alreadyVisited = true;
+ break;
+ }
+ }
+ if(!alreadyVisited){
+ CdmEntityInfo childCei = new CdmEntityInfo(ProxyUtils.deproxy(obj));
+ cei.addChild(childCei);
+ debugRecursive(obj, alreadyVisitedEntities, childCei);
+ }
}
// retrieve the actual object corresponding to the field.
// this object will be either a CdmBase or a Collection / Map
// with CdmBase as the generic type
- String f = field;
CdmEntityInfo childCei = getDebugCdmBaseTypeFieldValue(cdmEntity, field, alreadyVisitedEntities, cei);
if(!childCei.isProxy()) {
Object object = childCei.getObject();
o = ProxyUtils.deproxy(o);
CdmBase cdmEntityInSubGraph = null;
- boolean isHibernateProxy = false;
- boolean isPersistentCollection = false;
-
childCei = new CdmEntityInfo(o);
cei.addChild(childCei);
childCei.setField(field);