public interface GatewayModuleHook
<hook scope="G">com.example.module.gateway.SuperHookClass</hook>Best practice: Instead of implementing this interface directly, subclass your hook class from
AbstractGatewayModuleHook
instead.Modifier and Type | Method and Description |
---|---|
void |
configureDeserializer(XMLDeserializer deserializer)
Provides the module a chance to configure the deserializer with any custom handlers
|
void |
configureFunctionFactory(ExpressionFunctionManager factory)
Provides the module with an opportunity to define its own expression functions
|
void |
configureSerializer(XMLSerializer serializer)
Provides the module a chance to add serialization delegates to the serializer custom for
classes that might be
encountered when serializing objects provided by this module
|
java.util.List<? extends IHomepagePanelDescriptor> |
getHomepagePanels()
A list (may be null or empty) of homepage panels that this module provides
|
java.lang.Object |
getRPCHandler(ClientReqSession session,
java.lang.Long projectId)
A class whose functions will become exposed automatically through reflection to the Designer
and the Client
through RPC
|
java.util.List<? extends INamedTab> |
getStatusPanels()
A list (may be null or empty) of panels to display in the status section
|
void |
initializeScriptManager(ScriptManager manager)
Initialize a newly-instantiated script manager.
|
default boolean |
isFreeModule() |
void |
notifyLicenseStateChanged(LicenseState licenseState)
Notify module hook when the license state has changed.
|
void |
setup(GatewayContext context)
Called to before startup.
|
void |
shutdown()
Called to shutdown this module.
|
void |
startup(LicenseState activationState)
Called to initialize the module.
|
void |
updateSystemMap(SystemMap map)
Gives the module a chance to update the system map with any map elements that are pertinent.
|
void setup(GatewayContext context)
void startup(LicenseState activationState)
void shutdown()
java.lang.Object getRPCHandler(ClientReqSession session, java.lang.Long projectId)
void notifyLicenseStateChanged(LicenseState licenseState)
java.util.List<? extends IHomepagePanelDescriptor> getHomepagePanels()
java.util.List<? extends INamedTab> getStatusPanels()
void configureSerializer(XMLSerializer serializer)
void configureDeserializer(XMLDeserializer deserializer)
void configureFunctionFactory(ExpressionFunctionManager factory)
void updateSystemMap(SystemMap map)
void initializeScriptManager(ScriptManager manager)
ScriptManager
instance. Usually this will involve calling
ScriptManager.addScriptModule(String, Object)
, which reflectively loads the public
(instance and static) java functions from the given object into the scripting environment, at
the provided path.
This function may be called before startup(LicenseState)
, but never before
setup(GatewayContext)
.default boolean isFreeModule()
true
if this is a "free" module, i.e. it does not participate in the licensing system. This is
equivalent to the now defunct FreeModule attribute that could be specified in module.xml.