OpenSource ERP Software dedicated to small to mid-size companies

           Become Platinium or Gold Neogia Partner

Add-on Manager Design

Contents

Purpose

Add-on manager is a tool to develop and manage add-ons for Apache OFBiz project.

An add-on is basically a set of changes to apply on an Apache OFBiz installation to provide a new feature. The changes may concern every parts of a typical OFBiz application : java files, entities, services, screens, menu, data, etc. The scope of an add-on can range from a small feature to a full new application.


Use Cases

Apache OFBiz User Use Cases

  1. Install add-ons on a fresh OFBiz installation
    • the first addon
      • created the add-on repository
    • other addon on other files
  2. List all addons installed on a ofbiz installation
  3. Uninstall addon
    • uninstall the last addon installed
    • uninstall all the installed addon
    • uninstall one addon from the list of installed addon
  4. install a list of addon
  5. list on webtools, all addons installed with the detailled description
  6. Update an add-on for which a new version is available
    • uninstall, install
  7. add-on dependencies
    • Install addon with an addon's dependencies (no modification on same files)
    • Install addon with an addon's dependencies (modifications on same files)
  8. Install an addon with file modifications on an already modified file (a previous installed addon)
  9. Update OFBiz installation to a newer version
    1. uninstall all addon and save list
    2. update ofbiz
    3. re-initialize local addon repository
    4. install all addon from the save list
  10. List all addons installed but with a new version available


Some open questions that are not yet covered by use cases :

Add-on Developer Use Cases

  1. Create add-on
  2. Test add-on
  3. Update an add-on to a new version of OFBiz


Architecture

Image:addon manager structure.png

Add-on Manager Objects

Detail on .addon directory

Le répertoire .addons se trouve à la racine d'ofbiz.

Ce dossier contient en premier lieu les informations nécessaires à la gestion des add-ons installés :

Ces informations sont spécifiques à une installation d'ofbiz. Elles dépendent de la version de départ d'ofbiz et des add-ons installés, et ne peuvent être partagées que si ces deux propriétés sont communes.

Le dossier .addons est aussi utilisé comme dossier par défaut pour stocker l'archive des add-on.

Registry Class Diagram

Image:registry class diagram.png


PatchService Class Diagram

Image:patch service uml.png

Roadmap

addon-manager-1.0

add-on creation
  • view files added, removed or modified
  • view file modifications
  • revert file modifications
  • add file to the addon
  • remove file from the addon
ok
add-on edition ok
add-on installation ok
add-on un-instal ok
add-on publishing ok

addon-manager-1.1

addon-manager-1.2