1 11 package org.eclipse.jdt.internal.debug.core.logicalstructures; 12 13 import org.eclipse.core.runtime.IProgressMonitor; 14 import org.eclipse.debug.core.DebugException; 15 import org.eclipse.jdt.debug.core.IEvaluationRunnable; 16 import org.eclipse.jdt.debug.core.IJavaObject; 17 import org.eclipse.jdt.debug.core.IJavaThread; 18 import org.eclipse.jdt.debug.core.IJavaValue; 19 20 23 public class MapStructureType extends LogicalObjectStructureInterfaceType { 24 25 28 protected IEvaluationRunnable getEvaluation() { 29 return new IEvaluationRunnable() { 30 33 public void run(IJavaThread thread, IProgressMonitor monitor) throws DebugException { 34 IJavaValue value = getObject().sendMessage("entrySet", "()Ljava/util/Set;", null, thread, false); if (value instanceof IJavaObject) { 36 setLogicalStructure(((IJavaObject)value).sendMessage("toArray", "()[Ljava/lang/Object;", null, thread, false)); } else { 38 setLogicalStructure(value); 40 } 41 } 42 43 }; 44 } 45 46 49 protected String getTargetInterfaceName() { 50 return "java.util.Map"; } 52 53 } 54 | Popular Tags |