GP-3162: refresh bool->enum

This commit is contained in:
d-millar 2023-03-03 18:41:18 +00:00
parent a9baf9f6d8
commit 15c4345d71
116 changed files with 376 additions and 266 deletions

View file

@ -21,12 +21,13 @@ import java.util.stream.Collectors;
import com.sun.jdi.Location;
import ghidra.dbg.DebuggerObjectModel.RefreshBehavior;
import ghidra.dbg.jdi.manager.JdiCause;
import ghidra.dbg.jdi.manager.JdiEventsListenerAdapter;
import ghidra.dbg.jdi.manager.breakpoint.JdiBreakpointInfo;
import ghidra.dbg.jdi.model.iface2.JdiModelTargetObject;
import ghidra.dbg.target.TargetBreakpointSpecContainer;
import ghidra.dbg.target.TargetBreakpointSpec.TargetBreakpointKind;
import ghidra.dbg.target.TargetBreakpointSpecContainer;
import ghidra.dbg.target.schema.*;
import ghidra.program.model.address.AddressRange;
import ghidra.util.datastruct.WeakValueHashMap;
@ -142,7 +143,7 @@ public class JdiModelTargetBreakpointContainer extends JdiModelTargetObjectImpl
}
@Override
public CompletableFuture<Void> requestElements(boolean refresh) {
public CompletableFuture<Void> requestElements(RefreshBehavior refresh) {
return CompletableFuture.completedFuture(null);
}
}

View file

@ -18,6 +18,7 @@ package ghidra.dbg.jdi.model;
import java.util.*;
import java.util.concurrent.CompletableFuture;
import ghidra.dbg.DebuggerObjectModel.RefreshBehavior;
import ghidra.dbg.jdi.manager.breakpoint.JdiBreakpointInfo;
import ghidra.dbg.jdi.model.iface1.JdiModelTargetDeletable;
import ghidra.dbg.target.TargetBreakpointLocation;
@ -104,7 +105,7 @@ public class JdiModelTargetBreakpointSpec extends JdiModelTargetObjectImpl
actions.remove(action);
}
protected CompletableFuture<JdiBreakpointInfo> getInfo(boolean refresh) {
protected CompletableFuture<JdiBreakpointInfo> getInfo(RefreshBehavior refresh) {
return CompletableFuture.completedFuture(info);
}
@ -126,7 +127,7 @@ public class JdiModelTargetBreakpointSpec extends JdiModelTargetObjectImpl
}
@Override
public CompletableFuture<Void> requestElements(boolean refresh) {
public CompletableFuture<Void> requestElements(RefreshBehavior refresh) {
return getInfo(refresh).thenCompose(i -> {
return updateInfo(info, i, "Refreshed");
});

View file

@ -22,6 +22,7 @@ import java.util.stream.Collectors;
import com.sun.jdi.ReferenceType;
import ghidra.async.AsyncFence;
import ghidra.dbg.DebuggerObjectModel.RefreshBehavior;
import ghidra.dbg.target.schema.*;
import ghidra.util.Msg;
@ -45,7 +46,7 @@ public class JdiModelTargetClassContainer extends JdiModelTargetObjectImpl {
super(vm, "Classes");
this.vm = vm;
requestElements(true);
requestElements(RefreshBehavior.REFRESH_ALWAYS);
}
protected CompletableFuture<Void> updateUsingClasses(Map<String, ReferenceType> byName) {
@ -64,7 +65,7 @@ public class JdiModelTargetClassContainer extends JdiModelTargetObjectImpl {
}
@Override
protected CompletableFuture<Void> requestElements(boolean refresh) {
protected CompletableFuture<Void> requestElements(RefreshBehavior refresh) {
// Ignore 'refresh' because inferior.getKnownModules may exclude executable
return doRefresh();
}

View file

@ -23,6 +23,7 @@ import com.sun.jdi.VirtualMachineManager;
import com.sun.jdi.connect.Connector;
import ghidra.async.AsyncFence;
import ghidra.dbg.DebuggerObjectModel.RefreshBehavior;
import ghidra.dbg.target.schema.*;
import ghidra.util.Msg;
@ -64,7 +65,7 @@ public class JdiModelTargetConnectorContainer extends JdiModelTargetObjectImpl {
}
@Override
protected CompletableFuture<Void> requestElements(boolean refresh) {
protected CompletableFuture<Void> requestElements(RefreshBehavior refresh) {
// Ignore 'refresh' because inferior.getKnownModules may exclude executable
return doRefresh();
}

View file

@ -19,6 +19,7 @@ import java.util.List;
import java.util.Map;
import java.util.concurrent.CompletableFuture;
import ghidra.dbg.DebuggerObjectModel.RefreshBehavior;
import ghidra.dbg.target.TargetMemoryRegion;
import ghidra.dbg.target.TargetSection;
import ghidra.dbg.target.schema.*;
@ -59,7 +60,7 @@ public class JdiModelTargetConstantPool extends JdiModelTargetObjectImpl impleme
}
@Override
public CompletableFuture<Void> requestAttributes(boolean refresh) {
public CompletableFuture<Void> requestAttributes(RefreshBehavior refresh) {
this.range = impl.getAddressRange(getClassType(), pool.length);
if (range != null) {

View file

@ -22,6 +22,7 @@ import com.sun.jdi.ClassNotLoadedException;
import com.sun.jdi.Field;
import com.sun.jdi.request.*;
import ghidra.dbg.DebuggerObjectModel.RefreshBehavior;
import ghidra.dbg.jdi.manager.breakpoint.JdiBreakpointInfo;
import ghidra.dbg.jdi.model.iface2.JdiModelTargetObject;
import ghidra.dbg.target.schema.*;
@ -78,7 +79,7 @@ public class JdiModelTargetField extends JdiModelTargetObjectImpl {
}
@Override
public CompletableFuture<Void> requestAttributes(boolean refresh) {
public CompletableFuture<Void> requestAttributes(RefreshBehavior refresh) {
this.declaringType = (JdiModelTargetReferenceType) getInstance(field.declaringType());
populateAttributes();

View file

@ -22,6 +22,7 @@ import java.util.stream.Collectors;
import com.sun.jdi.Field;
import ghidra.async.AsyncFence;
import ghidra.dbg.DebuggerObjectModel.RefreshBehavior;
import ghidra.dbg.target.schema.*;
import ghidra.dbg.target.schema.TargetObjectSchema.ResyncMode;
@ -66,7 +67,7 @@ public class JdiModelTargetFieldContainer extends JdiModelTargetObjectImpl {
}
@Override
public CompletableFuture<Void> requestElements(boolean refresh) {
public CompletableFuture<Void> requestElements(RefreshBehavior refresh) {
Map<String, Field> map = new HashMap<>();
List<Field> fields = useAll ? reftype.reftype.allFields() : reftype.reftype.fields();
for (Field f : fields) {

View file

@ -21,6 +21,7 @@ import java.util.concurrent.CompletableFuture;
import com.sun.jdi.ClassNotLoadedException;
import com.sun.jdi.LocalVariable;
import ghidra.dbg.DebuggerObjectModel.RefreshBehavior;
import ghidra.dbg.target.schema.*;
@TargetObjectSchemaInfo(
@ -63,7 +64,7 @@ public class JdiModelTargetLocalVariable extends JdiModelTargetObjectImpl {
}
@Override
public CompletableFuture<Void> requestAttributes(boolean refresh) {
public CompletableFuture<Void> requestAttributes(RefreshBehavior refresh) {
populateAttributes();

View file

@ -22,6 +22,7 @@ import java.util.stream.Collectors;
import com.sun.jdi.LocalVariable;
import ghidra.async.AsyncFence;
import ghidra.dbg.DebuggerObjectModel.RefreshBehavior;
import ghidra.dbg.jdi.model.iface2.JdiModelTargetObject;
import ghidra.dbg.target.schema.*;
@ -63,7 +64,7 @@ public class JdiModelTargetLocalVariableContainer extends JdiModelTargetObjectIm
}
@Override
public CompletableFuture<Void> requestElements(boolean refresh) {
public CompletableFuture<Void> requestElements(RefreshBehavior refresh) {
Map<String, LocalVariable> map = new HashMap<>();
try {
for (LocalVariable var : vars) {

View file

@ -24,6 +24,7 @@ import com.sun.jdi.Location;
import com.sun.jdi.request.BreakpointRequest;
import com.sun.jdi.request.EventRequestManager;
import ghidra.dbg.DebuggerObjectModel.RefreshBehavior;
import ghidra.dbg.jdi.manager.breakpoint.JdiBreakpointInfo;
import ghidra.dbg.jdi.model.iface2.JdiModelTargetObject;
import ghidra.dbg.target.schema.*;
@ -72,7 +73,7 @@ public class JdiModelTargetLocation extends JdiModelTargetObjectImpl {
}
@Override
public CompletableFuture<Void> requestAttributes(boolean refresh) {
public CompletableFuture<Void> requestAttributes(RefreshBehavior refresh) {
this.declaringType = (JdiModelTargetReferenceType) getInstance(location.declaringType());

View file

@ -22,6 +22,7 @@ import java.util.stream.Collectors;
import com.sun.jdi.Location;
import ghidra.async.AsyncFence;
import ghidra.dbg.DebuggerObjectModel.RefreshBehavior;
import ghidra.dbg.jdi.model.iface2.JdiModelTargetObject;
import ghidra.dbg.target.schema.*;
@ -63,7 +64,7 @@ public class JdiModelTargetLocationContainer extends JdiModelTargetObjectImpl {
}
@Override
public CompletableFuture<Void> requestElements(boolean refresh) {
public CompletableFuture<Void> requestElements(RefreshBehavior refresh) {
Map<String, Location> map = new HashMap<>();
if (locations != null) {
for (Location loc : locations) {

View file

@ -20,6 +20,7 @@ import java.util.concurrent.CompletableFuture;
import com.sun.jdi.*;
import ghidra.dbg.DebuggerObjectModel.RefreshBehavior;
import ghidra.dbg.jdi.model.iface2.JdiModelTargetObject;
import ghidra.dbg.target.schema.*;
@ -84,7 +85,7 @@ public class JdiModelTargetMethod extends JdiModelTargetObjectImpl {
}
@Override
public CompletableFuture<Void> requestAttributes(boolean refresh) {
public CompletableFuture<Void> requestAttributes(RefreshBehavior refresh) {
populateAttributes();

View file

@ -22,6 +22,7 @@ import java.util.stream.Collectors;
import com.sun.jdi.Method;
import ghidra.async.AsyncFence;
import ghidra.dbg.DebuggerObjectModel.RefreshBehavior;
import ghidra.dbg.target.schema.*;
import ghidra.dbg.target.schema.TargetObjectSchema.ResyncMode;
@ -64,7 +65,7 @@ public class JdiModelTargetMethodContainer extends JdiModelTargetObjectImpl {
}
@Override
protected CompletableFuture<Void> requestElements(boolean refresh) {
protected CompletableFuture<Void> requestElements(RefreshBehavior refresh) {
Map<String, Method> map = new HashMap<>();
List<Method> methods = useAll ? reftype.reftype.allMethods() : reftype.reftype.methods();
for (Method var : methods) {

View file

@ -22,6 +22,7 @@ import java.util.stream.Collectors;
import com.sun.jdi.ModuleReference;
import ghidra.async.AsyncFence;
import ghidra.dbg.DebuggerObjectModel.RefreshBehavior;
import ghidra.dbg.error.DebuggerUserException;
import ghidra.dbg.target.TargetModule;
import ghidra.dbg.target.TargetModuleContainer;
@ -100,7 +101,7 @@ public class JdiModelTargetModuleContainer extends JdiModelTargetObjectImpl
}
@Override
protected CompletableFuture<Void> requestElements(boolean refresh) {
protected CompletableFuture<Void> requestElements(RefreshBehavior refresh) {
return doRefresh();
}

View file

@ -22,6 +22,7 @@ import java.util.concurrent.CompletableFuture;
import com.sun.jdi.Mirror;
import com.sun.jdi.ThreadReference;
import ghidra.dbg.DebuggerObjectModel.RefreshBehavior;
import ghidra.dbg.agent.DefaultTargetObject;
import ghidra.dbg.jdi.manager.JdiCause;
import ghidra.dbg.jdi.manager.JdiStateListener;
@ -158,8 +159,8 @@ public class JdiModelTargetObjectImpl extends
Map<String, ?> existingAttributes = getCachedAttributes();
Boolean autoupdate = (Boolean) existingAttributes.get("autoupdate");
if (autoupdate != null && autoupdate) {
requestAttributes(true);
requestElements(true);
requestAttributes(RefreshBehavior.REFRESH_ALWAYS);
requestElements(RefreshBehavior.REFRESH_ALWAYS);
}
}

View file

@ -21,6 +21,7 @@ import java.util.concurrent.CompletableFuture;
import com.sun.jdi.*;
import ghidra.dbg.DebuggerObjectModel.RefreshBehavior;
import ghidra.dbg.jdi.model.iface2.JdiModelTargetObject;
import ghidra.dbg.target.schema.*;
@ -60,7 +61,7 @@ public class JdiModelTargetObjectReference extends JdiModelTargetValue {
}
@Override
public CompletableFuture<Void> requestAttributes(boolean refresh) {
public CompletableFuture<Void> requestAttributes(RefreshBehavior refresh) {
this.referenceType = (JdiModelTargetReferenceType) getInstance(objref.referenceType());

View file

@ -22,6 +22,7 @@ import java.util.stream.Collectors;
import com.sun.jdi.ObjectReference;
import ghidra.async.AsyncFence;
import ghidra.dbg.DebuggerObjectModel.RefreshBehavior;
import ghidra.dbg.jdi.model.iface2.JdiModelTargetObject;
import ghidra.dbg.target.schema.*;
import ghidra.dbg.target.schema.TargetObjectSchema.ResyncMode;
@ -66,7 +67,7 @@ public class JdiModelTargetObjectReferenceContainer extends JdiModelTargetObject
}
@Override
public CompletableFuture<Void> requestElements(boolean refresh) {
public CompletableFuture<Void> requestElements(RefreshBehavior refresh) {
Map<String, ObjectReference> map = new HashMap<>();
for (ObjectReference ref : refs) {
map.put(ref.toString(), ref);

View file

@ -21,6 +21,7 @@ import java.util.concurrent.CompletableFuture;
import com.sun.jdi.*;
import ghidra.async.AsyncFence;
import ghidra.dbg.DebuggerObjectModel.RefreshBehavior;
import ghidra.dbg.jdi.model.iface2.JdiModelTargetObject;
import ghidra.dbg.target.TargetModule;
import ghidra.dbg.target.schema.*;
@ -113,7 +114,7 @@ public class JdiModelTargetReferenceType extends JdiModelTargetType implements T
}
@Override
public CompletableFuture<Void> requestAttributes(boolean refresh) {
public CompletableFuture<Void> requestAttributes(RefreshBehavior refresh) {
this.allFields = new JdiModelTargetFieldContainer(this, true);
this.allMethods = new JdiModelTargetMethodContainer(this, true);

View file

@ -21,6 +21,7 @@ import java.util.concurrent.CompletableFuture;
import com.sun.jdi.Location;
import ghidra.dbg.DebuggerObjectModel.RefreshBehavior;
import ghidra.dbg.jdi.model.iface2.JdiModelTargetObject;
import ghidra.dbg.target.TargetRegister;
import ghidra.dbg.target.schema.*;
@ -55,7 +56,7 @@ public class JdiModelTargetRegister extends JdiModelTargetObjectImpl implements
}
@Override
public CompletableFuture<Void> requestAttributes(boolean refresh) {
public CompletableFuture<Void> requestAttributes(RefreshBehavior refresh) {
changeAttributes(List.of(), List.of(), Map.of( //
DISPLAY_ATTRIBUTE_NAME, getDisplay() //

View file

@ -20,6 +20,7 @@ import java.util.concurrent.CompletableFuture;
import com.sun.jdi.Location;
import ghidra.dbg.DebuggerObjectModel.RefreshBehavior;
import ghidra.dbg.target.TargetRegisterBank;
import ghidra.dbg.target.TargetRegisterContainer;
import ghidra.dbg.target.schema.*;
@ -136,7 +137,7 @@ public class JdiModelTargetRegisterContainer extends JdiModelTargetObjectImpl
}
protected CompletableFuture<?> update() {
return fetchElements(true).exceptionally(e -> {
return fetchElements(RefreshBehavior.REFRESH_ALWAYS).exceptionally(e -> {
Msg.error(this, "Could not update registers " + this + " on STOPPED");
return null;
});

View file

@ -21,6 +21,7 @@ import java.util.concurrent.CompletableFuture;
import com.sun.jdi.Method;
import ghidra.dbg.DebuggerObjectModel.RefreshBehavior;
import ghidra.dbg.target.TargetMemoryRegion;
import ghidra.dbg.target.TargetSection;
import ghidra.dbg.target.schema.*;
@ -70,7 +71,7 @@ public class JdiModelTargetSection extends JdiModelTargetObjectImpl implements /
}
@Override
public CompletableFuture<Void> requestAttributes(boolean refresh) {
public CompletableFuture<Void> requestAttributes(RefreshBehavior refresh) {
this.range = method == null ? impl.defaultRange : impl.getAddressRange(method);
if (range != null) {

View file

@ -21,6 +21,7 @@ import java.util.concurrent.CompletableFuture;
import com.sun.jdi.Method;
import ghidra.async.AsyncFence;
import ghidra.dbg.DebuggerObjectModel.RefreshBehavior;
import ghidra.dbg.target.TargetMemory;
import ghidra.dbg.target.schema.*;
import ghidra.program.model.address.Address;
@ -56,7 +57,7 @@ public class JdiModelTargetSectionContainer extends JdiModelTargetObjectImpl
}
@Override
protected CompletableFuture<Void> requestAttributes(boolean refresh) {
protected CompletableFuture<Void> requestAttributes(RefreshBehavior refresh) {
constantPool = new JdiModelTargetConstantPool(this, reftype.reftype.constantPool(), false);
changeAttributes(List.of(), List.of( //
@ -67,7 +68,7 @@ public class JdiModelTargetSectionContainer extends JdiModelTargetObjectImpl
}
@Override
protected CompletableFuture<Void> requestElements(boolean refresh) {
protected CompletableFuture<Void> requestElements(RefreshBehavior refresh) {
updateUsingSections(reftype.reftype.methods());
return CompletableFuture.completedFuture(null);
}

View file

@ -20,6 +20,7 @@ import java.util.concurrent.CompletableFuture;
import com.sun.jdi.*;
import ghidra.dbg.DebuggerObjectModel.RefreshBehavior;
import ghidra.dbg.target.TargetStack;
import ghidra.dbg.target.schema.*;
import ghidra.util.Msg;
@ -49,7 +50,7 @@ public class JdiModelTargetStack extends JdiModelTargetObjectImpl
}
@Override
public CompletableFuture<Void> requestElements(boolean refresh) {
public CompletableFuture<Void> requestElements(RefreshBehavior refresh) {
List<JdiModelTargetStackFrame> targetFrames = new ArrayList<>();
List<StackFrame> frames;
try {
@ -103,7 +104,7 @@ public class JdiModelTargetStack extends JdiModelTargetObjectImpl
* @return null
*/
protected CompletableFuture<?> update() {
return fetchElements(true).exceptionally(e -> {
return fetchElements(RefreshBehavior.REFRESH_ALWAYS).exceptionally(e -> {
Msg.error(this, "Could not update stack " + this + " on STOPPED");
return null;
});

View file

@ -21,6 +21,7 @@ import java.util.concurrent.CompletableFuture;
import com.sun.jdi.*;
import ghidra.dbg.DebuggerObjectModel.RefreshBehavior;
import ghidra.dbg.jdi.manager.JdiCause;
import ghidra.dbg.jdi.manager.JdiEventsListenerAdapter;
import ghidra.dbg.jdi.model.iface1.JdiModelSelectableObject;
@ -75,7 +76,7 @@ public class JdiModelTargetStackFrame extends JdiModelTargetObjectImpl implement
}
@Override
public CompletableFuture<Void> requestAttributes(boolean refresh) {
public CompletableFuture<Void> requestAttributes(RefreshBehavior refresh) {
//this.arguments = new JdiModelTargetValueContainer(this, "Arguments", frame.getArgumentValues());

View file

@ -24,6 +24,7 @@ import com.sun.jdi.request.EventRequestManager;
import com.sun.jdi.request.StepRequest;
import ghidra.async.AsyncFence;
import ghidra.dbg.DebuggerObjectModel.RefreshBehavior;
import ghidra.dbg.jdi.manager.*;
import ghidra.dbg.jdi.model.iface1.*;
import ghidra.dbg.jdi.model.iface2.JdiModelTargetObject;
@ -124,7 +125,7 @@ public class JdiModelTargetThread extends JdiModelTargetObjectReference implemen
}
@Override
public CompletableFuture<Void> requestAttributes(boolean refresh) {
public CompletableFuture<Void> requestAttributes(RefreshBehavior refresh) {
populateAttributes();

View file

@ -23,6 +23,7 @@ import java.util.stream.Collectors;
import com.sun.jdi.ThreadReference;
import ghidra.async.AsyncFence;
import ghidra.dbg.DebuggerObjectModel.RefreshBehavior;
import ghidra.dbg.jdi.manager.*;
import ghidra.dbg.jdi.model.iface1.JdiModelTargetEventScope;
import ghidra.dbg.jdi.model.iface2.JdiModelTargetObject;
@ -118,7 +119,7 @@ public class JdiModelTargetThreadContainer extends JdiModelTargetObjectImpl
}
@Override
protected CompletableFuture<Void> requestElements(boolean refresh) {
protected CompletableFuture<Void> requestElements(RefreshBehavior refresh) {
return updateUsingThreads(threads);
}

View file

@ -22,6 +22,7 @@ import java.util.stream.Collectors;
import com.sun.jdi.ThreadGroupReference;
import ghidra.dbg.DebuggerObjectModel.RefreshBehavior;
import ghidra.dbg.jdi.manager.JdiEventsListenerAdapter;
import ghidra.dbg.jdi.model.iface2.JdiModelTargetObject;
import ghidra.dbg.target.schema.*;
@ -61,7 +62,7 @@ public class JdiModelTargetThreadGroupContainer extends JdiModelTargetObjectImpl
}
@Override
protected CompletableFuture<Void> requestElements(boolean refresh) {
protected CompletableFuture<Void> requestElements(RefreshBehavior refresh) {
List<ThreadGroupReference> groups;
if (parent instanceof JdiModelTargetVM) {
JdiModelTargetVM vm = (JdiModelTargetVM) parent;

View file

@ -22,6 +22,7 @@ import java.util.stream.Collectors;
import com.sun.jdi.Type;
import ghidra.async.AsyncFence;
import ghidra.dbg.DebuggerObjectModel.RefreshBehavior;
import ghidra.dbg.jdi.model.iface2.JdiModelTargetObject;
import ghidra.dbg.target.schema.*;
import ghidra.dbg.target.schema.TargetObjectSchema.ResyncMode;
@ -64,7 +65,7 @@ public class JdiModelTargetTypeContainer extends JdiModelTargetObjectImpl {
}
@Override
public CompletableFuture<Void> requestElements(boolean refresh) {
public CompletableFuture<Void> requestElements(RefreshBehavior refresh) {
Map<String, Type> map = new HashMap<>();
try {
for (Type type : types) {

View file

@ -27,6 +27,7 @@ import com.sun.jdi.event.*;
import com.sun.jdi.request.*;
import ghidra.async.AsyncFence;
import ghidra.dbg.DebuggerObjectModel.RefreshBehavior;
import ghidra.dbg.jdi.manager.*;
import ghidra.dbg.jdi.manager.impl.JdiManagerImpl;
import ghidra.dbg.jdi.model.iface1.*;
@ -191,7 +192,7 @@ public class JdiModelTargetVM extends JdiModelTargetObjectImpl implements //
}
@Override
public CompletableFuture<Void> requestAttributes(boolean refresh) {
public CompletableFuture<Void> requestAttributes(RefreshBehavior refresh) {
this.threadGroups = new JdiModelTargetThreadGroupContainer(this);
this.modules = new JdiModelTargetModuleContainer(this);

View file

@ -24,6 +24,7 @@ import com.sun.jdi.VirtualMachine;
import com.sun.jdi.event.*;
import ghidra.async.AsyncUtils;
import ghidra.dbg.DebuggerObjectModel.RefreshBehavior;
import ghidra.dbg.jdi.manager.JdiCause;
import ghidra.dbg.jdi.manager.JdiEventsListenerAdapter;
import ghidra.dbg.target.TargetEventScope.TargetEventType;
@ -151,8 +152,8 @@ public class JdiModelTargetVMContainer extends JdiModelTargetObjectImpl
}
@Override
public CompletableFuture<Void> requestElements(boolean refresh) {
if (!refresh) {
public CompletableFuture<Void> requestElements(RefreshBehavior refresh) {
if (!refresh.equals(RefreshBehavior.REFRESH_ALWAYS)) {
updateUsingVMs(impl.getManager().getKnownVMs());
return AsyncUtils.NIL;
}

View file

@ -22,6 +22,7 @@ import java.util.stream.Collectors;
import com.sun.jdi.Value;
import ghidra.async.AsyncFence;
import ghidra.dbg.DebuggerObjectModel.RefreshBehavior;
import ghidra.dbg.jdi.model.iface2.JdiModelTargetObject;
import ghidra.dbg.target.schema.*;
import ghidra.dbg.target.schema.TargetObjectSchema.ResyncMode;
@ -64,7 +65,7 @@ public class JdiModelTargetValueContainer extends JdiModelTargetObjectImpl {
}
@Override
public CompletableFuture<Void> requestElements(boolean refresh) {
public CompletableFuture<Void> requestElements(RefreshBehavior refresh) {
Map<String, Value> map = new HashMap<>();
try {
for (Value val : values) {

View file

@ -22,6 +22,7 @@ import com.sun.jdi.LocalVariable;
import com.sun.jdi.Value;
import ghidra.async.AsyncFence;
import ghidra.dbg.DebuggerObjectModel.RefreshBehavior;
import ghidra.dbg.jdi.model.iface2.JdiModelTargetObject;
import ghidra.dbg.target.schema.*;
import ghidra.dbg.target.schema.TargetObjectSchema.ResyncMode;
@ -69,7 +70,7 @@ public class JdiModelTargetValueMap extends JdiModelTargetObjectImpl {
}
@Override
public CompletableFuture<Void> requestAttributes(boolean refresh) {
public CompletableFuture<Void> requestAttributes(RefreshBehavior refresh) {
return updateUsingValues(values);
}