wiki:PLUGIN_SUPPORT_LIB_BASE_R1

Version 6 (modified by pav, 16 years ago) (diff)

--

Error: Macro BackLinksMenu(None) failed
compressed data is corrupt

Error: Macro TicketQuery(summary=PLUGIN_SUPPORT_LIB_BASE_R1, format=table, col=summary|owner|status|type|component|priority|effort|importance, rows=description|analysis_owners|analysis_reviewers|analysis_score|design_owners|design_reviewers|design_score|implementation_owners|implementation_reviewers|implementation_score|test_owners|test_reviewers|test_score|) failed
current transaction is aborted, commands ignored until end of transaction block

Analysis

Overview

The goal of this task is to solve the shared resources issue and to describe(and may be refactor) the way we get the class module instances.

Task requirements

  • Create document(or write in the design section) how we set, get and use the instances of the module classes([module_name]Module).
  • See which resources have to be shared and separate them in new src/main/resources/distrib folders.
  • Think out a way to share the module resources and get them without problems. It must work with the fake and true launchers of the sophie2 platform.
  • Create API in core.modularity which provides functionality for dealing with the resources.
  • See if there are any static paths while getting the resources and change them with the newly created functions.

Task result

  • classes in core.modularity
  • information about the static instances
  • new storage for the resources

Implementation idea

  • When you write new module you must create static get() method which returns the instance of the class.
  • Use ClassLoaders and streams while working with resources.

PLUGIN_SUPPORT_LIB_BASE_R0
PLATFORM_DEPLOYMENT_BUILD_MAVEN_R1

How to demo

  • Show the new classes and describe their functionality. Run tests if you manage to think out how to test the new API.
  • Show the information about the instances.
  • Show where the resources are stored.

Design

  • When you create new Sophie module, first of all you should create instance of the module and get() method for getting it. The template is here:

trunk/sophie2-platform/dev-tools/eclipse_templates/module_templates/module_instance.xml

  • For the resource API
    • Create class in core.modularity which will represents the resource API.
    • It have to:
      • give resources for reading
      • give resources for modifying them
    • The

Implementation

(Implementation results should be described and linked here (from the wiki or the repository))

Testing

Comments

(Write comments for this or later revisions here.)