Package ghidra.trace.database.space
Class AbstractDBTraceSpaceBasedManager<M extends DBTraceSpaceBased>
java.lang.Object
ghidra.trace.database.space.AbstractDBTraceSpaceBasedManager<M>
- All Implemented Interfaces:
ErrorHandler,DBTraceManager
- Direct Known Subclasses:
DBTraceAddressSnapRangePropertyMap,DBTraceBookmarkManager,DBTraceCodeManager,DBTraceEquateManager,DBTraceMemoryManager,DBTraceReferenceManager,DBTraceRegisterContextManager
public abstract class AbstractDBTraceSpaceBasedManager<M extends DBTraceSpaceBased>
extends Object
implements DBTraceManager
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final Languageprotected final DBHandleprotected final ReadWriteLockprotected final Stringprotected static final AddressSpaceprotected final Map<TraceRegisterContainer, M> protected final Map<AddressSpace, M> protected final DBCachedObjectStore<AbstractDBTraceSpaceBasedManager.DBTraceSpaceEntry> protected final Collection<M> protected final DBTraceThreadManagerprotected final DBTrace -
Constructor Summary
ConstructorsConstructorDescriptionAbstractDBTraceSpaceBasedManager(String name, DBHandle dbh, OpenMode openMode, ReadWriteLock lock, TaskMonitor monitor, Language baseLanguage, DBTrace trace, DBTraceThreadManager threadManager) -
Method Summary
Modifier and TypeMethodDescriptionprotected abstract MvoidNotification that an IO exception occurred.get(AddressSpace space, boolean createIfAbsent) protected MgetForRegisterSpace(TraceRegisterContainer container, boolean createIfAbsent) protected MgetForRegisterSpace(TraceStackFrame frame, boolean createIfAbsent) protected MgetForRegisterSpace(TraceThread thread, int frameLevel, boolean createIfAbsent) protected MgetForSpace(AddressSpace space, boolean createIfAbsent) getLock()protected AddressSpacegetSpaceByName(AddressFactory factory, String name) protected List<ghidra.trace.database.space.AbstractDBTraceSpaceBasedManager.TabledSpace> getTrace()voidinvalidateCache(boolean all) Invalidate this manager's cachesprotected voidprotected StringtableName(AddressSpace space)
-
Field Details
-
NO_ADDRESS_SPACE
-
name
-
dbh
-
lock
-
baseLanguage
-
trace
-
threadManager
-
spaceStore
-
spaces
-
regSpacesByContainer
-
spacesView
-
-
Constructor Details
-
AbstractDBTraceSpaceBasedManager
public AbstractDBTraceSpaceBasedManager(String name, DBHandle dbh, OpenMode openMode, ReadWriteLock lock, TaskMonitor monitor, Language baseLanguage, DBTrace trace, DBTraceThreadManager threadManager) throws IOException, VersionException - Throws:
IOExceptionVersionException
-
-
Method Details
-
tableName
-
loadSpaces
- Throws:
VersionExceptionIOException
-
getSpaceByName
-
getTabledSpaces
protected List<ghidra.trace.database.space.AbstractDBTraceSpaceBasedManager.TabledSpace> getTabledSpaces() -
getForSpace
-
getForRegisterSpace
-
getForRegisterSpace
-
getForRegisterSpace
-
getTrace
-
getLock
-
getBaseLanguage
-
get
-
getActiveSpaces
-
createSpace
protected abstract M createSpace(AddressSpace space, AbstractDBTraceSpaceBasedManager.DBTraceSpaceEntry ent) throws VersionException, IOException - Throws:
VersionExceptionIOException
-
dbError
Description copied from interface:ErrorHandlerNotification that an IO exception occurred.- Specified by:
dbErrorin interfaceErrorHandler- Parameters:
e-IOExceptionwhich was cause of error
-
invalidateCache
public void invalidateCache(boolean all) Description copied from interface:DBTraceManagerInvalidate this manager's caches- Specified by:
invalidateCachein interfaceDBTraceManager- Parameters:
all- probably nothing. Check out implementations ofManagerDB.invalidateCache(boolean).
-