wiki:CORE_ADDITIONS_R1
Last modified 16 years ago Last modified on 02/03/09 14:06:42

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

Error: Macro TicketQuery(summary=CORE_ADDITIONS_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

This task involves the improvement of org.sophie2.core module.

Task requirements

  • Revise org.sophie2.core and add some extra functionality that is needed:
    • Provide a @Lazy annotation for AutoProperties:
      • currently the compute() method is invoked on creation of the AutoProperty
      • @Lazy should be used to implement lazy invocation of the compute() method in the AutoProperty, which means the method will be called on demand
      • this would provide a performance optimization of AutoProperties holding references to objects which potentially will be never used - for instance some GUI object like an "Advanced settings" panel, which the majority of users wouldn't use at all or would use quite seldom
    • Provide a @Const annotation for AutoProperties:
      • @Const must ensure that the compute() method is called only once
  • Write appropriate unit tests

Task result

The result of this task should be source code (including unit tests).

Implementation idea

Use reflection for @Const.

PRO_LIB_CORE_TUTORIAL
CORE_ADDITIONS_R0

How to demo

Run the unit tests and show the results to the team.

Design

Implementation

Testing

Comments