Package jadx.core.plugins
Class PluginContext
java.lang.Object
jadx.core.plugins.PluginContext
- All Implemented Interfaces:
JadxPluginRuntimeData,JadxPluginContext,Comparable<PluginContext>
public class PluginContext
extends Object
implements JadxPluginContext, JadxPluginRuntimeData, Comparable<PluginContext>
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate AppContextprivate final List<JadxCodeInput> private final JadxDecompilerprivate booleanprivate @Nullable JadxPluginOptionsprivate final JadxPluginprivate final ClassLoaderprivate final JadxPluginInfoprivate final JadxPluginsData -
Constructor Summary
ConstructorsConstructorDescriptionPluginContext(JadxDecompiler decompiler, JadxPluginsData pluginsData, JadxPlugin plugin) -
Method Summary
Modifier and TypeMethodDescriptionvoidaddCodeInput(JadxCodeInput codeInput) voidvoidclassLoaderWrap(Runnable task) intcompareTo(PluginContext other) private Stringbooleanevents()Subscribe and send eventsfiles()Access to plugin specific files and directoriesgetArgs()@Nullable JadxGuiContextAccess to jadx-gui specific methods@Nullable JadxPluginOptionsCustomize resource loadingCustom jadx zip reader to fight tampering and provide additional security checksinthashCode()voidinit()booleanloadCodeFiles(List<Path> files, @Nullable Closeable closeable) Convenient method to simplify code loading from custom files.plugins()Access to registered plugins and runtime datavoidregisterInputsHashSupplier(Supplier<String> supplier) Function to calculate hash of all options which can change output code.voidregisterOptions(JadxPluginOptions options) voidsetAppContext(AppContext appContext) toString()voidunload()
-
Field Details
-
decompiler
-
pluginsData
-
plugin
-
pluginInfo
-
pluginClassLoader
-
appContext
-
codeInputs
-
options
-
inputsHashSupplier
-
initialized
private boolean initialized
-
-
Constructor Details
-
PluginContext
PluginContext(JadxDecompiler decompiler, JadxPluginsData pluginsData, JadxPlugin plugin)
-
-
Method Details
-
init
public void init() -
unload
public void unload() -
classLoaderWrap
-
isInitialized
public boolean isInitialized()- Specified by:
isInitializedin interfaceJadxPluginRuntimeData
-
getArgs
- Specified by:
getArgsin interfaceJadxPluginContext
-
getDecompiler
- Specified by:
getDecompilerin interfaceJadxPluginContext
-
addPass
- Specified by:
addPassin interfaceJadxPluginContext
-
addCodeInput
- Specified by:
addCodeInputin interfaceJadxPluginContext
-
getCodeInputs
- Specified by:
getCodeInputsin interfaceJadxPluginRuntimeData
-
registerOptions
- Specified by:
registerOptionsin interfaceJadxPluginContext
-
registerInputsHashSupplier
Description copied from interface:JadxPluginContextFunction to calculate hash of all options which can change output code. Hash for input files (JadxArgs.getInputFiles()) and registered options calculated by default implementations.- Specified by:
registerInputsHashSupplierin interfaceJadxPluginContext
-
getInputsHash
- Specified by:
getInputsHashin interfaceJadxPluginRuntimeData
-
defaultOptionsHash
-
events
Description copied from interface:JadxPluginContextSubscribe and send events- Specified by:
eventsin interfaceJadxPluginContext
-
getResourcesLoader
Description copied from interface:JadxPluginContextCustomize resource loading- Specified by:
getResourcesLoaderin interfaceJadxPluginContext
-
getAppContext
-
setAppContext
-
getGuiContext
Description copied from interface:JadxPluginContextAccess to jadx-gui specific methods- Specified by:
getGuiContextin interfaceJadxPluginContext
-
getPluginInstance
- Specified by:
getPluginInstancein interfaceJadxPluginRuntimeData
-
getPluginInfo
- Specified by:
getPluginInfoin interfaceJadxPluginRuntimeData
-
getPluginId
- Specified by:
getPluginIdin interfaceJadxPluginRuntimeData
-
getOptions
- Specified by:
getOptionsin interfaceJadxPluginRuntimeData
-
plugins
Description copied from interface:JadxPluginContextAccess to registered plugins and runtime data- Specified by:
pluginsin interfaceJadxPluginContext
-
files
Description copied from interface:JadxPluginContextAccess to plugin specific files and directories- Specified by:
filesin interfaceJadxPluginContext
-
loadCodeFiles
Description copied from interface:JadxPluginRuntimeDataConvenient method to simplify code loading from custom files.- Specified by:
loadCodeFilesin interfaceJadxPluginRuntimeData
-
getZipReader
Description copied from interface:JadxPluginContextCustom jadx zip reader to fight tampering and provide additional security checks- Specified by:
getZipReaderin interfaceJadxPluginContext
-
equals
-
hashCode
public int hashCode() -
compareTo
- Specified by:
compareToin interfaceComparable<PluginContext>
-
toString
-