private boolean isSpecialReference(FieldValue value, Instance instance) { Field f = value.getField(); return f.equals(referentFiled) && referenceClasses.contains(instance.getJavaClass()); }
@Override public Iterator<Move> track(Instance instance) { List<Move> result = new ArrayList<Move>(); for(FieldValue fv: instance.getFieldValues()) { if (fieldName == null || fieldName.equals(fv.getField().getName())) { if (fv instanceof ObjectFieldValue) { result.add(new Move("." + fv.getField().getName(), ((ObjectFieldValue) fv).getInstance())); } } } return result.iterator(); }
@Override public Iterator<Instance> walk(Instance instance) { List<Instance> result = new ArrayList<Instance>(); for(FieldValue fv: instance.getFieldValues()) { if (fieldName == null || fieldName.equals(fv.getField().getName())) { if (fv instanceof ObjectFieldValue) { result.add(((ObjectFieldValue) fv).getInstance()); } } } return result.iterator(); }
public Object getValueOfStaticField(String name) { Iterator<FieldValue> fIt = getStaticFieldValues().iterator(); while (fIt.hasNext()) { FieldValue fieldValue = (FieldValue) fIt.next(); if (fieldValue.getField().getName().equals(name)) { if (fieldValue instanceof HprofFieldObjectValue) { return ((HprofFieldObjectValue) fieldValue).getInstance(); } else { return ((HprofFieldValue) fieldValue).getTypeValue(); } } } return null; }
private static Instance getField(Instance i, String field) { for(FieldValue fv: i.getFieldValues()) { if (fv instanceof ObjectFieldValue && field.equals(fv.getField().getName())) { return ((ObjectFieldValue)fv).getInstance(); } } return null; }
public Object getValueOfField(String name) { Iterator<FieldValue> fIt = getFieldValues().iterator(); FieldValue matchingFieldValue = null; while (fIt.hasNext()) { FieldValue fieldValue = (FieldValue) fIt.next(); if (fieldValue.getField().getName().equals(name)) { matchingFieldValue = fieldValue; } } if (matchingFieldValue == null) { return null; } if (matchingFieldValue instanceof HprofInstanceObjectValue) { return ((HprofInstanceObjectValue) matchingFieldValue).getInstance(); } else { return ((HprofInstanceValue) matchingFieldValue).getTypeValue(); } }
for(Instance i: HeapPath.collect(obj, shortPath)) { for(FieldValue fv: i.getFieldValues()) { if ((fieldName == null && (!fv.getField().isStatic())) || (fv.getField().getName().equals(fieldName))) { if (fv instanceof ObjectFieldValue) { return valueOf(((ObjectFieldValue) fv).getInstance()); return (T) i.getValueOfField(fv.getField().getName());
String fieldName = f.getField().getName(); if (f instanceof ObjectFieldValue) { ObjectFieldValue of = (ObjectFieldValue) f;
strings.set(i.getInstanceId(), true); for(FieldValue fv: i.getFieldValues()) { if ("value".equals(fv.getField().getName())) { arrays.set(((ObjectFieldValue)fv).getInstanceId(), true);
ObjectFieldValue ofv = (ObjectFieldValue) fv; if (target.get(ofv.getInstanceId())) { report(i, "." + fv.getField().getName(), ofv.getInstanceId()); break;
for(FieldValue f: i.getFieldValues()) { @SuppressWarnings("unused") String fieldName = f.getField().getName(); if (f instanceof ObjectFieldValue) { ObjectFieldValue of = (ObjectFieldValue) f;
private boolean isSpecialReference(FieldValue value, Instance instance) { Field f = value.getField(); return f.equals(referentFiled) && referenceClasses.contains(instance.getJavaClass()); }
private boolean isSpecialReference(FieldValue value, Instance instance) { Field f = value.getField(); return f.equals(referentFiled) && referenceClasses.contains(instance.getJavaClass()); }
@Override public Iterator<Instance> walk(Instance instance) { List<Instance> result = new ArrayList<Instance>(); for(FieldValue fv: instance.getFieldValues()) { if (fieldName == null || fieldName.equals(fv.getField().getName())) { if (fv instanceof ObjectFieldValue) { result.add(((ObjectFieldValue) fv).getInstance()); } } } return result.iterator(); }
@Override public Iterator<Move> track(Instance instance) { List<Move> result = new ArrayList<Move>(); for(FieldValue fv: instance.getFieldValues()) { if (fieldName == null || fieldName.equals(fv.getField().getName())) { if (fv instanceof ObjectFieldValue) { result.add(new Move("." + fv.getField().getName(), ((ObjectFieldValue) fv).getInstance())); } } } return result.iterator(); }
public Object getValueOfStaticField(String name) { Iterator fIt = getStaticFieldValues().iterator(); while (fIt.hasNext()) { FieldValue fieldValue = (FieldValue) fIt.next(); if (fieldValue.getField().getName().equals(name)) { if (fieldValue instanceof HprofFieldObjectValue) { return ((HprofFieldObjectValue) fieldValue).getInstance(); } else { return ((HprofFieldValue) fieldValue).getTypeValue(); } } } return null; }
private static Instance getField(Instance i, String field) { for(FieldValue fv: i.getFieldValues()) { if (fv instanceof ObjectFieldValue && field.equals(fv.getField().getName())) { return ((ObjectFieldValue)fv).getInstance(); } } return null; }