com.pnfsoftware.jeb.core.IEnginesContext |
A context for JEB engines. Engines produce events and relay events from other components under their supervision. The primary task of JEB engines is to manage projects.
Constants | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
String | PreserveForwardCompatibility |
Public Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
abstract void |
close()
Close the context.
| ||||||||||
abstract ICoreContext |
getCoreContext()
Retrieve the JEB Core that instantiated this context.
| ||||||||||
abstract IDataProvider |
getDataProvider()
Get a reference to the DAO.
| ||||||||||
abstract List<IDebuggerUnitIdentifier> |
getDebuggerUnitIdentifiers()
Retrieve the list of identifiers specifically for debugger units.
| ||||||||||
abstract List<IEnginesPlugin> |
getEnginesPlugins()
Retrieve a list of engines plugins (internal modules, third party plugins).
| ||||||||||
abstract ExecutorService |
getExecutorService()
Get the executor service used by this context.
| ||||||||||
abstract NativeSignatureDBManager |
getNativeSignatureDBManager()
Retrieve the native signature DB manager managed by this context.
| ||||||||||
abstract INet |
getNetworkUtility()
Retrieve a network utility object used by this engines context.
| ||||||||||
abstract IPluginManager |
getPluginManager()
Get the plugin manager.
| ||||||||||
abstract IRuntimeProject |
getProject(String key)
Get a project by key.
| ||||||||||
abstract IRuntimeProject |
getProject(int index)
Get a project by index.
| ||||||||||
abstract List<IRuntimeProject> |
getProjects()
Retrieve a copy of the list of projects currently loaded within this context.
| ||||||||||
abstract IPropertyManager |
getPropertyManager()
Get the property manager for this engines context.
| ||||||||||
abstract TypeLibraryService |
getTypeLibraryService()
Retrieve the type library service managed by this context.
| ||||||||||
abstract List<IUnitIdentifier> |
getUnitIdentifiers()
Retrieve the list of all identifiers that projects managed by this context may have access
to.
| ||||||||||
abstract boolean |
isIdentifierEnabled(IUnitIdentifier identifier)
Determine if an identifier is enabled.
| ||||||||||
abstract IRuntimeProject |
loadProject(String key)
Load an existing project or create a new project.
| ||||||||||
abstract IRuntimeProject |
loadProject(String key, IProgressCallback callback)
Load an existing project or create a new project.
| ||||||||||
abstract boolean |
saveProject(String projectKey, String persistenceKey, Map<String, Object> optionalParameters)
Save the state of a project (including artifacts and all units) to the project database.
| ||||||||||
abstract boolean |
saveProject(String key)
Save the state of a project (including artifacts and all units) to the project database.
| ||||||||||
abstract boolean |
setIdentifierEnabled(IUnitIdentifier identifier, boolean enabled)
Enable or disable an identifier.
| ||||||||||
abstract boolean |
unloadProject(String key)
Unload a project.
|
[Expand]
Inherited Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
![]() |
Close the context. All projects will be unloaded; changes will not be persisted.
Retrieve the JEB Core that instantiated this context.
Get a reference to the DAO.
Retrieve the list of identifiers specifically for debugger units.
Retrieve a list of engines plugins (internal modules, third party plugins).
Get the executor service used by this context. Clients may use it to schedule third-party tasks.
Retrieve the native signature DB manager managed by this context.
Retrieve a network utility object used by this engines context. The network object is configured to use the proxy specified by the owner Core context's properties.
Get the plugin manager. This method will return null if this context does not offer a plugin manager.
Note: JEB demo builds do not support plugins.
Get a project by key.
key | mandatory project key |
---|
Get a project by index.
index | 0-based index |
---|
Retrieve a copy of the list of projects currently loaded within this context.
Get the property manager for this engines context.
Retrieve the type library service managed by this context.
Retrieve the list of all identifiers that projects managed by this context may have access to.
Determine if an identifier is enabled.
identifier | the identifier |
---|
Load an existing project or create a new project.
key | an existing or new project key |
---|
IOException | on IO error |
---|---|
SerializationException | on serialization error |
Load an existing project or create a new project.
key | an existing or new project key |
---|---|
callback | an optional callback object fed with regular information regarding the current loading status |
IOException | on IO error |
---|---|
SerializationException | on serialization error |
Save the state of a project (including artifacts and all units) to the project database. If the project DB is backed up by a filesystem, the project will be persisted to a ".jdb2" file.
projectKey | the project key |
---|---|
persistenceKey | optional persistence key; set it to override the current key and persist to a different location |
optionalParameters | opaque dictionary of optional parameters (reversed for internal use) |
IOException | on IO error |
---|---|
SerializationException | on deserialization error |
Save the state of a project (including artifacts and all units) to the project database. If the project DB is backed up by a filesystem, the project will be persisted to a ".jdb2" file.
key | the project key |
---|
IOException | on IO error |
---|---|
SerializationException | on deserialization error |
Enable or disable an identifier.
identifier | the identifier |
---|---|
enabled | true to enable the identifier, false otherwise; in the latter case,
will never get called |
Unload a project.
key | the project key |
---|