Dashboard > DHIS Documentation > ... > System documentation > Modules
  DHIS Documentation Log In | Sign Up   View a printable version of the current page.  
  Modules
Added by Hans S. Tømmerholt, last edited by margrsto on Mar 16, 2007  (view change)
Labels: 
(None)

Modules in DHIS 2

This is an overview of the modules in the system.

Core modules

dhis-api

The dhis-api module defines all the model objects the system uses and the Java interfaces that all other modules must implement. The API represents the contract the system has to fullfill, as well as the entry point the different modules use to communicate with eacother. When one of the modules want to talk to another module, they will refer to an instance of one of the Java interfaces in the API module. This way no module needs to know how any other modules are implemented, just what services they can provide.

dhis-services

The dhis-services module contains all the modules that implement the functionality described in the dhis-api module. Each module mirror one of the base packages found in the API module, for example org.hisp.dhis.organisationstore. The name of the module signifies what sort of implementation it contains. Currently there are two types: Default implementations and Hibernate implementations. The first is used when the module does not depend on any specific framework, usually when it doesn't offer persistance. The latter is used when the implementation uses Hibernate to persist model objects.

  • dhis-service-aggregationengine-default
  • dhis-service-core
  • dhis-service-datamart-default
  • dhis-service-datamart-sql
  • dhis-service-dataprovider-hibernate
  • dhis-service-dataset-hibernate
  • dhis-service-expressionengine-default
  • dhis-service-importexport-default
  • dhis-service-indicatorstore-hibernate
  • dhis-service-minmax-hibernate
  • dhis-service-organisationunit
  • dhis-service-user-hibernate
  • dhis-service-validationengine-default

dhis-support

  • dhis-support-hibernate
  • dhis-support-test
  • dhis-support-transaction
  • dhis-support-webwork

Other core modules

  • dhis-i18n
  • dhis-useradminandsecurity
  • dhis-options
  • dhis-populator

Web modules

The dhis-web module contain the modules that make up the web based graphical user interface (GUI) to DHIS 2. The GUI code is based on WebWork and Velocity. Note that this is only one possible GUI implementation. It is possible, for example, to implent a Swing-based GUI. It would probably reside in a dhis-swing package or similar.

For more information about the web modules see the DHIS 2.0 web solution.

dhis-web-commons

The dhis-web-commons module contains classes and resources that all other web modules may use and depend on.

  • dhis-web-commons
  • dhis-web-commons-resources

Service functionality modules

These modules usually offer more complex interfaces to the services provided by the core.

  • dhis-web-dataentry
  • dhis-web-importexport
  • dhis-web-datamart
  • dhis-web-birtviewer
  • dhis-web-dataview
  • dhis-web-reporttool
  • dhis-web-useradminandsecurity
  • dhis-web-validationrule

dhis-web-maintainance

The dhis-web-maintainance module contains all the modules that give the user an interface for viewing, creating, updating and deleting model objects, such as organisation units, data elements and the like. Thus, these modules mirror the [CRUD] operations in the service layer. The child modules typically supply one HTML form for each of the CRUD operations.

  • dhis-web-maintainance-datadictionary
  • dhis-web-maintainance-dataset
  • dhis-web-maintainance-organisationunit
  • dhis-web-maintainance-user

dhis-web-portal

The dhis-web-portal module connects all the other web modules together in a common GUI. It supplies the module menu part of the GUI as well as managing communication between the different web modules.

Site powered by a free Open Source Project / Non-profit License (more) of Confluence - the Enterprise wiki.
Learn more or evaluate Confluence for your organisation.
Powered by Atlassian Confluence, the Enterprise Wiki. (Version: 2.5.6 Build:#812 Aug 06, 2007) - Bug/feature request - Contact Administrators