Summary:
Split
Extendsexcpetion to separate sub class. & Provide way to check if user
opens old design file.
Bugzilla Entry(ies) Resolved:
138562,
137174
Description:
138562:
Split ExtendsExcpetion
to separate sub class.
Solution:
1. Splitted ExtendsException into sub classes, CircularExtendsException, InvalidParentException,
WrongTypeException, ExtendsForbiddenException as requirement by Designer.
2.
Backward compatibility work.
137174:
Provide way to check if user opens old design file.
Solution:
1. Made method checkVersion( InputStream inputData) private.
2.
Made checkVersion( String fileName) return a list, each entry is of type IVersionInfo,
which holds auto-conversion information if the opening design is of old version
and need to be converted automatically in current running environment.
Tests Description:
JUnit
tests
Files Edited:
src/org/eclipse/birt/report/model/api/ModuleUtil.java
src/org/eclipse/birt/report/model/api/ElementFactory.java
src/org/eclipse/birt/report/model/api/command/ExtendsException.java;
src/org/eclipse/birt/report/model/api/validators/ElementExtendsValidator.java;
src/org/eclipse/birt/report/model/elements/OdaDataSource.java
src/org/eclipse/birt/report/model/elements/OdaDataSet.java
src/org/eclipse/birt/report/model/i18n/MessageConstants.java
src/org/eclipse/birt/report/model/i18n/Messages.properties;
src/org/eclipse/birt/report/model/command/ExtendsCommand.java;
src/org/eclipse/birt/report/model/parser/ReportElementState.java;
src/org/eclipse/birt/report/model/core/DesignElement.java;
src/org/eclipse/birt/report/model/plugin/OdaExtensibilityProvider.java;
src/org/eclipse/birt/report/model/extension/ModelExtensibilityProvider.java;
test/org/eclipse/birt/report/model/core/DesignElementTest.java
test/org/eclipse/birt/report/model/command/ExtendsExceptionTest.java
test/org/eclipse/birt/report/model/command/ExtendsCommandTest.java
test/org/eclipse/birt/report/model/command/golden/ExtendsExceptionError.golden.txt;
test/org/eclipse/birt/report/model/parser/ComponentScratchPadTest.java;
test/org/eclipse/birt/report/model/api/ModuleUtilTest.java;
Files Added:
src/org/eclipse/birt/report/model/api/IVersionInfo.java
src/org/eclipse/birt/report/model/util/VersionInfo.java;
src/org/eclipse/birt/report/model/api/command/CircularExtendsException.java;
src/org/eclipse/birt/report/model/api/command/InvalidParentException.java;
src/org/eclipse/birt/report/model/api/command/ExtendsForbiddenException.java;
src/org/eclipse/birt/report/model/api/command/WrongTypeException.java;
Notes to Build Team:
None.
Notes to Developers:
None.
Notes to QA:
None.
Notes to Documentation:
None.
Best regards,
Jiaying Liu
Actuate Corporation - Shanghai R&D Center
( : (86)21-58826388