So, showing the whole thing is not on the table. Sorry. But one utility class I wrote will help you through the trickiest part of it:
FieldClassBuilder.java (Note the MIT License.)
This builder will assemble any desired classes from anywhere in your module, including any dynamically loaded classes you might access, into a generated class with a public static final field for each supplied class.
The output from build()
is suitable for use with ScriptManager.addScriptModule()
in your various hook classes.
I recommend Google’s ClassPath
utilities (which are distributed with Ignition) to enumerate classes in dynamically loaded jars.
(Moving this topic to Module Development…)