Jason P. Leasure
cd310e2380
update GhidraBundle summary, fix double delete of old classfiles
...
- summaries belong to BundleStatus, not GhidraBundle
- reflect Jar bundle start errors in summary
2020-07-28 16:56:08 -04:00
Jason P. Leasure
c807c859be
add exceptions to bundlehostlistener
2020-07-28 16:56:08 -04:00
Jason P. Leasure
d404e3f8dd
show bundle paths with variable substituted
2020-07-28 16:56:08 -04:00
Jason P. Leasure
a09861f942
lower Felix logging verbosity
2020-07-28 16:56:08 -04:00
Jason P. Leasure
0af17e4b08
help for Ghidra Bundles, update scripting help, @imports->@importpackage
2020-07-28 16:56:08 -04:00
Jason P. Leasure
8fc9240eda
remove org.apache.felix.main dependency
2020-07-28 16:56:08 -04:00
Jason P. Leasure
4911e0814a
script info manager should only "find" info it has
2020-07-28 16:56:08 -04:00
Jason P. Leasure
04a16aa0f4
add more time to script tests
2020-07-28 16:56:08 -04:00
Jason P. Leasure
d79b193d20
move weird static call into GhidraScriptAnalyzer class
2020-07-28 16:56:08 -04:00
Jason P. Leasure
5f11c9cf7d
update python & headless tests to manage GhidraScriptUtil resource
2020-07-28 16:56:08 -04:00
Jason P. Leasure
7ee2467016
avoid calling GhidraScriptUtils.getScriptSourceDirectories
...
- when called from the GUI, the bundle host manages paths
- when used to find a script by name, use findScriptByName
2020-07-28 16:56:08 -04:00
Jason P. Leasure
2b49816c6c
factor GhidraScriptInfoManager out of GhidraScriptUtil
...
- move bundlehost to ghidrascriptmgrplugin
2020-07-28 16:56:08 -04:00
Jason P. Leasure
a26ce496ef
cleanup names, remove pointless code, reorder/deprecate
2020-07-28 16:56:08 -04:00
Jason P. Leasure
05dc95634f
cleanup headless init for GhidraScriptUtil
2020-07-28 16:56:08 -04:00
Jason P. Leasure
11fe097e8e
fix bundle status listing errors when adding two bundle status components
2020-07-28 16:56:08 -04:00
Jason P. Leasure
a654060fbe
make set-activation more like individual activation
...
- build unresolved bundles as the last step
- mark bundle status as busy
- clean now removes build errors
2020-07-28 16:56:08 -04:00
Jason P. Leasure
ec4cad2237
add bundlehost tests.. and some fixes
...
- source manifests are now copied properly
- don't use a task to stop framework
2020-07-28 16:56:08 -04:00
Jason P. Leasure
464a6be6de
fix loaded counter for testing
2020-07-28 16:56:08 -04:00
Jason P. Leasure
18163aeb58
avoid multiple GhidraScriptUtil.initialize calls w/ multiple tools
2020-07-28 16:56:08 -04:00
Jason P. Leasure
3cb0555453
check for existence of bundle paths on restoreState
2020-07-28 16:56:08 -04:00
Jason P. Leasure
ea5eae8395
fix inclusion of broken imports in compile run
2020-07-28 16:56:08 -04:00
Jason P. Leasure
6ed7134b4c
add missing IP headers
2020-07-28 16:56:08 -04:00
Jason P. Leasure
c9f477264d
stop asking a status model for stuff
2020-07-28 16:56:08 -04:00
Jason P. Leasure
49e3d6dcdc
tease out GhidraScriptUtil state, clarify headless and headed cases
...
- GhidraScriptUtil how has (static) initialize & dispose
- initialize is either through (headed/GUI) GhidraScriptMgrPlugin or
directly (headless)
- BundleHost
- now owns bundle paths (script dirs)
- save and restore to SaveState for use by GUI
- no static instances
- GhidraScriptUtil BundleHost coincides with GUI's when both are used
- generates events
- conservative use of auto-vivification
- BundleStatusCompoentProvider / PathManager
- better split between GUI & model
- subscribes to GUI's BundleHost for events
- provider registers for generated events, controls BundleHost
2020-07-28 16:56:07 -04:00
Jason P. Leasure
2c27ca1376
consolidate bundle management into bundlehost
...
- change ownership of script directories to singleton bundlehost
- start moving BundleStatus into GUI only mode
2020-07-28 16:56:07 -04:00
Jason P. Leasure
1735a11a76
do not auto-create ScriptInfo objects, fix static allocatins in testing
2020-07-28 16:56:07 -04:00
Jason P. Leasure
6268ab9d3e
move static bundle vars to BundleHost
2020-07-28 16:56:07 -04:00
Jason P. Leasure
0f74dcb8be
cleanup, fix tests where script deleted before getScriptInfo
...
- mark deleted scripts as having compile errors
2020-07-28 16:56:07 -04:00
Jason P. Leasure
5c28ab536c
add jarbundle, add toolbar actions, fix view versus row indexing
...
- move bundle compiler into source bundle
- activate action attempts to activate in topological order
- modified suppression of RowObjectSelectionManager.repair
- add animation for clean operation
2020-07-28 16:56:07 -04:00
Jason P. Leasure
0383926fc3
replace +- buttons in bundlestatus gui with toolbar actions
...
- synchronize summary, compilerErrors
- check requirements before activation for class files that won't load
2020-07-28 16:56:07 -04:00
Jason P. Leasure
89e0e617b2
speed up bundle status load, fix empty source dir handling
2020-07-28 16:56:07 -04:00
Jason P. Leasure
15f46b7fae
a status is not a path
2020-07-28 16:56:07 -04:00
Jason P. Leasure
431d7ac752
introduce GhidraBundle, cleanup packages, rename path->status
2020-07-28 16:56:07 -04:00
Jason P. Leasure
7873bb32fa
improve OSGi error messages
...
- move serialization and bundleevents from provider into
bundlestatusmodel
- add summary field to bundle status
- add more precise tracking of requirements
- make status updates asynchronous via OSGiListener
2020-07-28 16:56:07 -04:00
Jason P. Leasure
8d55571172
connect OSGi framework to bundlestatusprovider
2020-07-28 16:56:07 -04:00
Jason P. Leasure
f39d55cca1
start connecting OSGi to bundlestatusmanager
...
- minimize access to BundleHost instance (JavaScriptProvider is still bad)
- BundlePath
- restrict construction to osgi package
- remove "editable" attribute and fix incorrect reference
- remove references in GhidraScriptUtil
- BundlePath attribute choice came down only to system or user
- user filtering on "enabled" were redundant
- move compilation from JavaScriptProvider to BundheHost
2020-07-28 16:56:07 -04:00
Jason P. Leasure
36f4a219d9
headers for new files
2020-07-28 16:56:07 -04:00
Jason P. Leasure
d8610b00be
improve model/view split in bundle status, more nomenclature fixes
2020-07-28 16:56:07 -04:00
Jason P. Leasure
ad897f263c
rename variables, move bundlehost instance, clean dead fileinstaller code
2020-07-28 16:56:07 -04:00
Jason P. Leasure
2e05da019f
move bundle path manager to core as a ComponentProvider for bundle status
...
- PathManager was most of a ComponentProvider anyway, so this isn't a
huge change
- this makes bundle status available w/out the GhidraScript component
- it's no longer modal, e.g. script directory list updates are immediate
2020-07-28 16:56:07 -04:00
Jason P. Leasure
c660a12ab3
clarify and discourage access to compiled scripts
2020-07-28 16:56:07 -04:00
Jason P. Leasure
c106e0e02b
filter bundles for source directories when asked for script dirs
2020-07-28 16:56:07 -04:00
Jason P. Leasure
91f09dd0c5
remove now impossible script name collision test
...
- in testing, TestChangeProgramScript isn't compiled, otherwise fake files
were unneccessary
2020-07-28 16:56:07 -04:00
Jason P. Leasure
092d716e96
update tests
...
- note: timeout increased by 33% in waitForTaskEnd because the entire
script directory needs to compiled now
- complete recursive wipe of binary artifacts added to @After action
2020-07-28 16:56:07 -04:00
Jason P. Leasure
931a9e8230
add bundlepathmanager for scripting
...
- move bundle host into GhidraScriptMgrPlugin
- remove access to script class files and bin directory
- remove JavaScriptClassLoader
- add loadClass to JavaScriptProvider to load non-GhidraScript classes
2020-07-28 16:56:07 -04:00
Jason P. Leasure
b2b93bd20d
deprecate USER_SCRIPTS_BIN_DIR
2020-07-28 16:56:07 -04:00
Jason P. Leasure
73665bba2a
don't compile script in event thread
2020-07-28 16:56:07 -04:00
Jason P. Leasure
aa85554abd
scripting dirs now have distinct bin dirs, update test
2020-07-28 16:56:07 -04:00
Jason P. Leasure
b569c79baf
script tests should wipe the directory after each test
2020-07-28 16:56:07 -04:00
Jason P. Leasure
4c655c2e92
move SourceBundleInfo out of BundleHost
2020-07-28 16:56:07 -04:00