Class AbstractModule

    • Field Detail

      • enabled

        protected boolean enabled
        This flag renders the module enabled or not. Actions belonging to a disabled module can not be executed.

        public static final int CATEGORY_NAVIGATION
        Modules that are used to explore, navigate and search inventory assets.
        See Also:
        Constant Field Values

        public static final int CATEGORY_PHYSICAL
        Modules that allow to manipulate L1 assets, such as physical connections and outside plant infrastructure.
        See Also:
        Constant Field Values

        public static final int CATEGORY_LOGICAL
        Modules to manipulate L2/L3 assets, like MPLS, SDH, IP, ISDN, etc.
        See Also:
        Constant Field Values

        public static final int CATEGORY_VIRTUALIZATION
        Modules to manipulate virtualized infrastructure (the likes of IaaS/SaaS).
        See Also:
        Constant Field Values

        public static final int CATEGORY_BUSINESS
        Modules to manage administrative aspects of the inventory such as services (as in billed services), customers, contracts. etc.
        See Also:
        Constant Field Values

        public static final int CATEGORY_PLANNING
        Modules dedicated to network planning
        See Also:
        Constant Field Values

        public static final int CATEGORY_INTEGRATION
        Modules that allow Kuwaiba to communicate with other platforms and devices.
        See Also:
        Constant Field Values

        public static final int CATEGORY_ADMINISTRATION
        Modules to manage the data model.
        See Also:
        Constant Field Values

        public static final int CATEGORY_SETTINGS
        General system settings such as validators and conf variables
        See Also:
        Constant Field Values

        public static final int CATEGORY_OTHER
        Any module not fitting the categories above.
        See Also:
        Constant Field Values
    • Constructor Detail

      • AbstractModule

        public AbstractModule()
    • Method Detail

      • getId

        public abstract String getId()
        A simple unique string that identifies the module so it is easier to refer to it in automated processes such as defining if a user can user certain functionality based on his/her privileges.
      • getName

        public abstract String getName()
        Gets the module's name. Must be unique, otherwise, the system will only take last one loaded at application's startup
        The module's name
      • getCategory

        public abstract int getCategory()
        Assigns the module a category, so it can be placed in menus and context actions. See CATEGORY_XXX for valid values.
        The category.
      • getDescription

        public abstract String getDescription()
        Gets the module description
        he module's description
      • getVersion

        public abstract String getVersion()
        Gets the module's version
        The module's version
      • getVendor

        public abstract String getVendor()
        Gets the module's vendor
        The module's vendor
      • getModuleType

        public abstract AbstractModule.ModuleType getModuleType()
        Gets the module's type. For valid values #ModuleTypes
        The module's types
      • isEnabled

        public boolean isEnabled()
      • setEnabled

        public void setEnabled​(boolean enabled)
      • configureModule

        public void configureModule​(MetadataEntityManager mem,
                                    ApplicationEntityManager aem,
                                    BusinessEntityManager bem)
        This method initializes the module. Must be called before anything else, otherwise the other modules won't be able to use the persistence service.
        aem - The ApplicationEntityManager instance. Might be null if not needed by the module
        mem - The MetadataEntityManager instance. Might be null if not needed by the module
        bem - The BusinessEntityManager instance. Might be null if not needed by the module