src/main/java/org/intellimate/izou/sdk/addon/AddOn.java
@Override
    public void register() {
        prepare();
        ContentGenerator[] contentGenerators = registerContentGenerator();
        if (contentGenerators != null) {
            for (ContentGenerator contentGenerator : contentGenerators) {
                try {
                    getContext().getContentGenerators().registerContentGenerator(contentGenerator);
                } catch (IllegalIDException e) {
                    context.getLogger().fatal("Illegal Id for Module: " + contentGenerator.getID(), e);
                }
            }
        }

        EventsControllerModel[] eventsControllerModels = registerEventController();
        if (eventsControllerModels != null) {
            for (EventsControllerModel eventsController : eventsControllerModels) {
                try {
                    getContext().getEvents().distributor().registerEventsController(eventsController);
                } catch (IllegalIDException e) {
                    context.getLogger().fatal("Illegal Id for Module: " + eventsController.getID(), e);
                }
            }
        }

        OutputPluginModel[] outputPluginModels = registerOutputPlugin();
        if (outputPluginModels != null) {
            for (OutputPluginModel outputPlugin : outputPluginModels) {
                try {
                    getContext().getOutput().addOutputPlugin(outputPlugin);
                } catch (IllegalIDException e) {
                    context.getLogger().fatal("Illegal Id for Module: " + outputPlugin.getID(), e);
                }
            }
        }

        OutputExtensionModel[] outputExtensionModels = registerOutputExtension();
        if (outputExtensionModels != null) {
            for (OutputExtensionModel outputExtension : outputExtensionModels) {
                try {
                    getContext().getOutput().addOutputExtension(outputExtension);
                } catch (IllegalIDException e) {
                    context.getLogger().fatal("Illegal Id for Module: " + outputExtension.getID(), e);
                }
            }
        }

        OutputControllerModel[] outputControllerModels = registerOutputController();
        if (outputControllerModels != null) {
            for (OutputControllerModel outputController : outputControllerModels) {
                try {
                    getContext().getOutput().addOutputController(outputController);
                } catch (IllegalIDException e) {
                    context.getLogger().fatal("Illegal Id for Module: " + outputController.getID(), e);
                }
            }
        }

        ActivatorModel[] activatorModels = registerActivator();
        getContext().getSystem().registerInitializedListener(() -> {
        if (activatorModels != null) {
            for (ActivatorModel activator : activatorModels) {
                try {
                    getContext().getActivators().addActivator(activator);
                } catch (IllegalIDException e) {
                    context.getLogger().fatal("Illegal Id for Module: " + activator.getID(), e);
                }
            }
        }
        });
    }
@Override
    public void register() {
        prepare();
        ContentGenerator[] contentGenerators = registerContentGenerator();
        if (contentGenerators != null) {
            for (ContentGenerator contentGenerator : contentGenerators) {
                try {
                    getContext().getContentGenerators().registerContentGenerator(contentGenerator);
                } catch (IllegalIDException e) {
                    context.getLogger().fatal("Illegal Id for Module: " + contentGenerator.getID(), e);
                }
            }
        }

        EventsControllerModel[] eventsControllerModels = registerEventController();
        if (eventsControllerModels != null) {
            for (EventsControllerModel eventsController : eventsControllerModels) {
                try {
                    getContext().getEvents().distributor().registerEventsController(eventsController);
                } catch (IllegalIDException e) {
                    context.getLogger().fatal("Illegal Id for Module: " + eventsController.getID(), e);
                }
            }
        }

        OutputPluginModel[] outputPluginModels = registerOutputPlugin();
        if (outputPluginModels != null) {
            for (OutputPluginModel outputPlugin : outputPluginModels) {
                try {
                    getContext().getOutput().addOutputPlugin(outputPlugin);
                } catch (IllegalIDException e) {
                    context.getLogger().fatal("Illegal Id for Module: " + outputPlugin.getID(), e);
                }
            }
        }

        OutputExtensionModel[] outputExtensionModels = registerOutputExtension();
        if (outputExtensionModels != null) {
            for (OutputExtensionModel outputExtension : outputExtensionModels) {
                try {
                    getContext().getOutput().addOutputExtension(outputExtension);
                } catch (IllegalIDException e) {
                    context.getLogger().fatal("Illegal Id for Module: " + outputExtension.getID(), e);
                }
            }
        }

        OutputControllerModel[] outputControllerModels = registerOutputController();
        if (outputControllerModels != null) {
            for (OutputControllerModel outputController : outputControllerModels) {
                try {
                    getContext().getOutput().addOutputController(outputController);
                } catch (IllegalIDException e) {
                    context.getLogger().fatal("Illegal Id for Module: " + outputController.getID(), e);
                }
            }
        }

        ActivatorModel[] activatorModels = registerActivator();
        getContext().getSystem().registerInitializedListener(() -> {
        if (activatorModels != null) {
            for (ActivatorModel activator : activatorModels) {
                try {
                    getContext().getActivators().addActivator(activator);
                } catch (IllegalIDException e) {
                    context.getLogger().fatal("Illegal Id for Module: " + activator.getID(), e);
                }
            }
        }
        });
    }
@ Override public void register ( ) { prepare ( ) ; ContentGenerator [ ] contentGenerators = registerContentGenerator ( ) ; if ( contentGenerators != null ) { for ( ContentGenerator contentGenerator : contentGenerators ) { try { getContext ( ) . getContentGenerators ( ) . registerContentGenerator ( contentGenerator ) ; } catch ( IllegalIDException e ) { context . getLogger ( ) . fatal ( "Illegal Id for Module: " + contentGenerator . getID ( ) , e ) ; } } } EventsControllerModel [ ] eventsControllerModels = registerEventController ( ) ; if ( eventsControllerModels != null ) { for ( EventsControllerModel eventsController : eventsControllerModels ) { try { getContext ( ) . getEvents ( ) . distributor ( ) . registerEventsController ( eventsController ) ; } catch ( IllegalIDException e ) { context . getLogger ( ) . fatal ( "Illegal Id for Module: " + eventsController . getID ( ) , e ) ; } } } OutputPluginModel [ ] outputPluginModels = registerOutputPlugin ( ) ; if ( outputPluginModels != null ) { for ( OutputPluginModel outputPlugin : outputPluginModels ) { try { getContext ( ) . getOutput ( ) . addOutputPlugin ( outputPlugin ) ; } catch ( IllegalIDException e ) { context . getLogger ( ) . fatal ( "Illegal Id for Module: " + outputPlugin . getID ( ) , e ) ; } } } OutputExtensionModel [ ] outputExtensionModels = registerOutputExtension ( ) ; if ( outputExtensionModels != null ) { for ( OutputExtensionModel outputExtension : outputExtensionModels ) { try { getContext ( ) . getOutput ( ) . addOutputExtension ( outputExtension ) ; } catch ( IllegalIDException e ) { context . getLogger ( ) . fatal ( "Illegal Id for Module: " + outputExtension . getID ( ) , e ) ; } } } OutputControllerModel [ ] outputControllerModels = registerOutputController ( ) ; if ( outputControllerModels != null ) { for ( OutputControllerModel outputController : outputControllerModels ) { try { getContext ( ) . getOutput ( ) . addOutputController ( outputController ) ; } catch ( IllegalIDException e ) { context . getLogger ( ) . fatal ( "Illegal Id for Module: " + outputController . getID ( ) , e ) ; } } } ActivatorModel [ ] activatorModels = registerActivator ( ) ; getContext ( ) . getSystem ( ) . registerInitializedListener ( ( ) -> { if ( activatorModels != null ) { for ( ActivatorModel activator : activatorModels ) { try { getContext ( ) . getActivators ( ) . addActivator ( activator ) ; } catch ( IllegalIDException e ) { context . getLogger ( ) . fatal ( "Illegal Id for Module: " + activator . getID ( ) , e ) ; } } } } ) ; }
This method is used to register the modules
This method is used to register the modules