Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Corrected links that should have been relative instead of absolute.

Qcadoo MES application plugin is a ordinary Maven project.

Project structure

Please find attached file as a base of the new plugin. 

  • src/main/java/pluginpackage/
  • src/main/resources/reosurcespluginidentifier/locales/pluginidentifier_en.properties
  • src/main/reosurces/META-INF/cssresources/pluginidentifier/model/*.xml
  • src/main/resources/pluginidentifier/view/*.xml
  • src/main/reosurces/META-INF/img/pluginidentifier/resources/pluginidentifier/public/css/
  • src/main/resources/pluginidentifier/public/img/
  • src/main/resources/reosurcespluginidentifier/META-INFpublic/js/pluginidentifier/
  • src/main/reosurcesresources/META-INF/WEB-INF/jsp/pluginidentifier/
  • src/main/reosurcesresources/root-context.xml
  • src/main/reosurcesresources/modelweb-context.xml
  • src/main/reosurcesresources/viewqcadoo-plugin.xml
  • pom.xml xml 

Plugin inner structure

There is a plugin inner structure on the picture below.

Image RemovedImage Added

Plugin state flow

There is a plugin state flow on the picture below.

Plugin state transitions

All operations below check plugin dependencies, framework version and other conditions. When all conditions are met then operation succeed, otherwise failed and appropriate state is returned. More infromations you could find in QCADOO API.

  • Download
    • This operation download plugin jar file to the application tmp directory and create database record on the data in plugin descriptor with status state "downloadedtemporary". After this operation jar views aren't active.
    Remove
    • This operation remove plugin jar file from the application tmp directory and mark database record as "deleted". After this operation jar views aren't active.
  • Install
    • This operation move plugin jar file from the application tmp directory to the application context and change database record status state to the "activeenabled". After this operation server is restarted. When server starts up plugin jar file is deployed. After this operation jar views are active.
  • Deactivate
    Disable
    • This operation change database record status state to the "installeddisabled". After this operation jar views aren't active.
  • Activate
    Enable
    • This operation change database record status state to the "activeenabled". After this operation jar views are active.
  • Uninstall
    • This operation remove plugin jar file and its deployed resources from the application context and mark delete database record as "deleted".
      After this operation server is restarted and jar views aren't active.
  • Update
    • This operation check the plugin version, if its version is lower than in plugin jar file, operation can update plugin. After this check old plugin jar file and its deployed resources are removed from the application context. New plugin jar is downloaded to the application context and database record version is changed to this from plugin jar file. Plugin status state is exactly the same as before update. After this operation server is could be restarted. When server starts up plugin jar file is deployed. After deploy jar views are active if state is "enabled".