Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 353532

Summary: Support model element interfaces that do not use 'I' prefix convention
Product: z_Archived Reporter: Konstantin Komissarchik <konstantin>
Component: SapphireAssignee: Konstantin Komissarchik <konstantin>
Status: CLOSED FIXED QA Contact:
Severity: enhancement    
Priority: P3 CC: shenxue.zhou
Version: unspecifiedKeywords: plan
Target Milestone: ---   
Hardware: All   
OS: All   
Whiteboard:

Description Konstantin Komissarchik CLA 2011-08-01 20:00:48 EDT
A convention to prefix interfaces with 'I' is common, but it is only a convention and there are plenty of developers who prefer not to use this convention. Sapphire currently requires this convention to be used. This requirement should be removed.

Proposed changes:

1. Add className attribute to @GenerateImpl annotation. This will allow explicit control over impl class name. The @GenerateImpl annotation already supports explicit control over impl package name with packageName attribute.

2. The default value for impl className should be computed as follows:

if using 'I' prefix convention
    default impl class name is typeClassName.substring(1)
else
    default impl class name is typeClassName + "Impl"
Comment 1 Konstantin Komissarchik CLA 2011-08-01 20:11:23 EDT
Done.
Comment 2 Shenxue Zhou CLA 2011-11-28 16:03:11 EST
Verified with Purchase order sample. Closing.