Author: vyemialyanchyk
Date: 2010-09-17 10:18:00 -0400 (Fri, 17 Sep 2010)
New Revision: 24988
Modified:
trunk/hibernatetools/plugins/org.hibernate.eclipse.console/src/org/hibernate/eclipse/launch/CodeGenXMLFactory.java
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/res/sample/AntCodeGenInternalProps_test1.xml
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/res/sample/AntCodeGenInternalProps_test2.xml
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/res/sample/AntCodeGenJpa_test1.xml
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/res/sample/AntCodeGenJpa_test2.xml
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/res/sample/AntCodeGenNullable_test1.xml
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/res/sample/AntCodeGenNullable_test2.xml
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/res/sample/AntCodeGenProps_test1.xml
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/res/sample/AntCodeGenProps_test2.xml
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/res/sample/AntCodeGenReveng_test1.xml
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/res/sample/AntCodeGenReveng_test2.xml
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/res/sample/AntCodeGen_test1.xml
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/res/sample/AntCodeGen_test2.xml
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/src/org/hibernate/eclipse/console/test/CodeGenXMLFactoryTest.java
Log:
https://jira.jboss.org/browse/JBIDE-7071 - fixed - now attributes and properties are
generated in alphabetic order for Ant codegen functionality
Modified:
trunk/hibernatetools/plugins/org.hibernate.eclipse.console/src/org/hibernate/eclipse/launch/CodeGenXMLFactory.java
===================================================================
---
trunk/hibernatetools/plugins/org.hibernate.eclipse.console/src/org/hibernate/eclipse/launch/CodeGenXMLFactory.java 2010-09-17
13:53:12 UTC (rev 24987)
+++
trunk/hibernatetools/plugins/org.hibernate.eclipse.console/src/org/hibernate/eclipse/launch/CodeGenXMLFactory.java 2010-09-17
14:18:00 UTC (rev 24988)
@@ -360,10 +360,17 @@
}
expProps.put(ad.name, val);
}
+ // to add attributes and properties in alphabetic order
+ Map<String, Object> expPropsSorted = new TreeMap<String, Object>();
+ for (Map.Entry<Object, Object> propEntry : expProps.entrySet()) {
+ Object key = propEntry.getKey();
+ Object val = propEntry.getValue();
+ expPropsSorted.put(key.toString(), val);
+ }
// list2Remove - list to collect properties which put into attributes,
// all other properties be ordinal property definition
List<Object> list2Remove = new ArrayList<Object>();
- for (Map.Entry<Object, Object> propEntry : expProps.entrySet()) {
+ for (Map.Entry<String, Object> propEntry : expPropsSorted.entrySet()) {
Object key = propEntry.getKey();
Object val = propEntry.getValue();
AttributeDescription ad = attributesDescrAnt.get(key);
@@ -383,8 +390,9 @@
}
for (Object obj : list2Remove) {
expProps.remove(obj);
+ expPropsSorted.remove(obj);
}
- for (Map.Entry<Object, Object> propEntry : expProps.entrySet()) {
+ for (Map.Entry<String, Object> propEntry : expPropsSorted.entrySet()) {
Object key = propEntry.getKey();
Object val = propEntry.getValue();
Element property = exporter.addElement(CodeGenerationStrings.PROPERTY);
Modified:
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/res/sample/AntCodeGenInternalProps_test1.xml
===================================================================
---
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/res/sample/AntCodeGenInternalProps_test1.xml 2010-09-17
13:53:12 UTC (rev 24987)
+++
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/res/sample/AntCodeGenInternalProps_test1.xml 2010-09-17
14:18:00 UTC (rev 24988)
@@ -20,9 +20,9 @@
<property key="jdk5" value="false"/>
</hbm2cfgxml>
<hbm2dao/>
- <hbm2ddl export="false">
- <property key="ejb3" value="false"/>
- <property key="jdk5" value="false"/>
+ <hbm2ddl console="false" create="false"
delimiter="@" destdir="outputdir/test_test_suffix"
drop="true" export="false" format="true"
haltonerror="true" templatepath="outputdir/test"
update="true">
+ <property key="ejb3" value="true"/>
+ <property key="jdk5" value="true"/>
</hbm2ddl>
<hbm2doc>
<property key="ejb3" value="false"/>
@@ -33,6 +33,9 @@
<property key="jdk5" value="false"/>
</hbm2hbmxml>
<hbm2java destdir="outputdir/test">
+ <property key="keyAAA" value="valueYYY"/>
+ <property key="keyCCC" value="valueYYY"/>
+ <property key="keyDDD" value="valueYYY"/>
<property key="keyXXX" value="valueYYY"/>
</hbm2java>
<hbmtemplate>
Modified:
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/res/sample/AntCodeGenInternalProps_test2.xml
===================================================================
---
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/res/sample/AntCodeGenInternalProps_test2.xml 2010-09-17
13:53:12 UTC (rev 24987)
+++
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/res/sample/AntCodeGenInternalProps_test2.xml 2010-09-17
14:18:00 UTC (rev 24988)
@@ -17,6 +17,9 @@
<path location="${build.dir}"/>
</classpath>
<hbm2java destdir="outputdir/test">
+ <property key="keyAAA" value="valueYYY"/>
+ <property key="keyCCC" value="valueYYY"/>
+ <property key="keyDDD" value="valueYYY"/>
<property key="keyXXX" value="valueYYY"/>
</hbm2java>
</hibernatetool>
Modified:
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/res/sample/AntCodeGenJpa_test1.xml
===================================================================
---
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/res/sample/AntCodeGenJpa_test1.xml 2010-09-17
13:53:12 UTC (rev 24987)
+++
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/res/sample/AntCodeGenJpa_test1.xml 2010-09-17
14:18:00 UTC (rev 24988)
@@ -21,7 +21,7 @@
<property key="jdk5" value="true"/>
</hbm2cfgxml>
<hbm2dao ejb3="true" jdk5="true"/>
- <hbm2ddl export="false">
+ <hbm2ddl console="false" create="false"
delimiter="@" destdir="outputdir/test_test_suffix"
drop="true" export="false" format="true"
haltonerror="true" templatepath="outputdir/test"
update="true">
<property key="ejb3" value="true"/>
<property key="jdk5" value="true"/>
</hbm2ddl>
@@ -34,6 +34,9 @@
<property key="jdk5" value="true"/>
</hbm2hbmxml>
<hbm2java destdir="outputdir/test" ejb3="true"
jdk5="true">
+ <property key="keyAAA" value="valueYYY"/>
+ <property key="keyCCC" value="valueYYY"/>
+ <property key="keyDDD" value="valueYYY"/>
<property key="keyXXX" value="valueYYY"/>
</hbm2java>
<hbmtemplate>
Modified:
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/res/sample/AntCodeGenJpa_test2.xml
===================================================================
---
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/res/sample/AntCodeGenJpa_test2.xml 2010-09-17
13:53:12 UTC (rev 24987)
+++
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/res/sample/AntCodeGenJpa_test2.xml 2010-09-17
14:18:00 UTC (rev 24988)
@@ -18,6 +18,9 @@
<path location="${build.dir}"/>
</classpath>
<hbm2java destdir="outputdir/test" ejb3="true"
jdk5="true">
+ <property key="keyAAA" value="valueYYY"/>
+ <property key="keyCCC" value="valueYYY"/>
+ <property key="keyDDD" value="valueYYY"/>
<property key="keyXXX" value="valueYYY"/>
</hbm2java>
</hibernatetool>
Modified:
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/res/sample/AntCodeGenNullable_test1.xml
===================================================================
---
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/res/sample/AntCodeGenNullable_test1.xml 2010-09-17
13:53:12 UTC (rev 24987)
+++
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/res/sample/AntCodeGenNullable_test1.xml 2010-09-17
14:18:00 UTC (rev 24988)
@@ -11,9 +11,9 @@
<property key="jdk5" value="false"/>
</hbm2cfgxml>
<hbm2dao/>
- <hbm2ddl export="false">
- <property key="ejb3" value="false"/>
- <property key="jdk5" value="false"/>
+ <hbm2ddl console="false" create="false"
delimiter="@" destdir="outputdir/test_test_suffix"
drop="true" export="false" format="true"
haltonerror="true" templatepath="outputdir/test"
update="true">
+ <property key="ejb3" value="true"/>
+ <property key="jdk5" value="true"/>
</hbm2ddl>
<hbm2doc>
<property key="ejb3" value="false"/>
@@ -24,6 +24,9 @@
<property key="jdk5" value="false"/>
</hbm2hbmxml>
<hbm2java destdir="outputdir/test">
+ <property key="keyAAA" value="valueYYY"/>
+ <property key="keyCCC" value="valueYYY"/>
+ <property key="keyDDD" value="valueYYY"/>
<property key="keyXXX" value="valueYYY"/>
</hbm2java>
<hbmtemplate>
Modified:
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/res/sample/AntCodeGenNullable_test2.xml
===================================================================
---
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/res/sample/AntCodeGenNullable_test2.xml 2010-09-17
13:53:12 UTC (rev 24987)
+++
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/res/sample/AntCodeGenNullable_test2.xml 2010-09-17
14:18:00 UTC (rev 24988)
@@ -8,6 +8,9 @@
<path location="${build.dir}"/>
</classpath>
<hbm2java destdir="outputdir/test">
+ <property key="keyAAA" value="valueYYY"/>
+ <property key="keyCCC" value="valueYYY"/>
+ <property key="keyDDD" value="valueYYY"/>
<property key="keyXXX" value="valueYYY"/>
</hbm2java>
</hibernatetool>
Modified:
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/res/sample/AntCodeGenProps_test1.xml
===================================================================
---
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/res/sample/AntCodeGenProps_test1.xml 2010-09-17
13:53:12 UTC (rev 24987)
+++
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/res/sample/AntCodeGenProps_test1.xml 2010-09-17
14:18:00 UTC (rev 24988)
@@ -12,9 +12,9 @@
<property key="jdk5" value="false"/>
</hbm2cfgxml>
<hbm2dao/>
- <hbm2ddl export="false">
- <property key="ejb3" value="false"/>
- <property key="jdk5" value="false"/>
+ <hbm2ddl console="false" create="false"
delimiter="@" destdir="outputdir/test_test_suffix"
drop="true" export="false" format="true"
haltonerror="true" templatepath="outputdir/test"
update="true">
+ <property key="ejb3" value="true"/>
+ <property key="jdk5" value="true"/>
</hbm2ddl>
<hbm2doc>
<property key="ejb3" value="false"/>
@@ -25,6 +25,9 @@
<property key="jdk5" value="false"/>
</hbm2hbmxml>
<hbm2java destdir="outputdir/test">
+ <property key="keyAAA" value="valueYYY"/>
+ <property key="keyCCC" value="valueYYY"/>
+ <property key="keyDDD" value="valueYYY"/>
<property key="keyXXX" value="valueYYY"/>
</hbm2java>
<hbmtemplate>
Modified:
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/res/sample/AntCodeGenProps_test2.xml
===================================================================
---
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/res/sample/AntCodeGenProps_test2.xml 2010-09-17
13:53:12 UTC (rev 24987)
+++
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/res/sample/AntCodeGenProps_test2.xml 2010-09-17
14:18:00 UTC (rev 24988)
@@ -9,6 +9,9 @@
<path location="${build.dir}"/>
</classpath>
<hbm2java destdir="outputdir/test">
+ <property key="keyAAA" value="valueYYY"/>
+ <property key="keyCCC" value="valueYYY"/>
+ <property key="keyDDD" value="valueYYY"/>
<property key="keyXXX" value="valueYYY"/>
</hbm2java>
</hibernatetool>
Modified:
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/res/sample/AntCodeGenReveng_test1.xml
===================================================================
---
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/res/sample/AntCodeGenReveng_test1.xml 2010-09-17
13:53:12 UTC (rev 24987)
+++
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/res/sample/AntCodeGenReveng_test1.xml 2010-09-17
14:18:00 UTC (rev 24988)
@@ -12,9 +12,9 @@
<property key="jdk5" value="false"/>
</hbm2cfgxml>
<hbm2dao/>
- <hbm2ddl export="false">
- <property key="ejb3" value="false"/>
- <property key="jdk5" value="false"/>
+ <hbm2ddl console="false" create="false"
delimiter="@" destdir="outputdir/test_test_suffix"
drop="true" export="false" format="true"
haltonerror="true" templatepath="outputdir/test"
update="true">
+ <property key="ejb3" value="true"/>
+ <property key="jdk5" value="true"/>
</hbm2ddl>
<hbm2doc>
<property key="ejb3" value="false"/>
@@ -25,6 +25,9 @@
<property key="jdk5" value="false"/>
</hbm2hbmxml>
<hbm2java destdir="outputdir/test">
+ <property key="keyAAA" value="valueYYY"/>
+ <property key="keyCCC" value="valueYYY"/>
+ <property key="keyDDD" value="valueYYY"/>
<property key="keyXXX" value="valueYYY"/>
</hbm2java>
<hbmtemplate>
Modified:
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/res/sample/AntCodeGenReveng_test2.xml
===================================================================
---
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/res/sample/AntCodeGenReveng_test2.xml 2010-09-17
13:53:12 UTC (rev 24987)
+++
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/res/sample/AntCodeGenReveng_test2.xml 2010-09-17
14:18:00 UTC (rev 24988)
@@ -9,6 +9,9 @@
<path location="${build.dir}"/>
</classpath>
<hbm2java destdir="outputdir/test">
+ <property key="keyAAA" value="valueYYY"/>
+ <property key="keyCCC" value="valueYYY"/>
+ <property key="keyDDD" value="valueYYY"/>
<property key="keyXXX" value="valueYYY"/>
</hbm2java>
</hibernatetool>
Modified:
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/res/sample/AntCodeGen_test1.xml
===================================================================
---
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/res/sample/AntCodeGen_test1.xml 2010-09-17
13:53:12 UTC (rev 24987)
+++
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/res/sample/AntCodeGen_test1.xml 2010-09-17
14:18:00 UTC (rev 24988)
@@ -14,9 +14,9 @@
<property key="jdk5" value="false"/>
</hbm2cfgxml>
<hbm2dao/>
- <hbm2ddl export="false">
- <property key="ejb3" value="false"/>
- <property key="jdk5" value="false"/>
+ <hbm2ddl console="false" create="false"
delimiter="@" destdir="outputdir/test_test_suffix"
drop="true" export="false" format="true"
haltonerror="true" templatepath="outputdir/test"
update="true">
+ <property key="ejb3" value="true"/>
+ <property key="jdk5" value="true"/>
</hbm2ddl>
<hbm2doc>
<property key="ejb3" value="false"/>
@@ -27,6 +27,9 @@
<property key="jdk5" value="false"/>
</hbm2hbmxml>
<hbm2java destdir="outputdir/test">
+ <property key="keyAAA" value="valueYYY"/>
+ <property key="keyCCC" value="valueYYY"/>
+ <property key="keyDDD" value="valueYYY"/>
<property key="keyXXX" value="valueYYY"/>
</hbm2java>
<hbmtemplate>
Modified:
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/res/sample/AntCodeGen_test2.xml
===================================================================
---
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/res/sample/AntCodeGen_test2.xml 2010-09-17
13:53:12 UTC (rev 24987)
+++
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/res/sample/AntCodeGen_test2.xml 2010-09-17
14:18:00 UTC (rev 24988)
@@ -11,6 +11,9 @@
<path location="${build.dir}"/>
</classpath>
<hbm2java destdir="outputdir/test">
+ <property key="keyAAA" value="valueYYY"/>
+ <property key="keyCCC" value="valueYYY"/>
+ <property key="keyDDD" value="valueYYY"/>
<property key="keyXXX" value="valueYYY"/>
</hbm2java>
</hibernatetool>
Modified:
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/src/org/hibernate/eclipse/console/test/CodeGenXMLFactoryTest.java
===================================================================
---
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/src/org/hibernate/eclipse/console/test/CodeGenXMLFactoryTest.java 2010-09-17
13:53:12 UTC (rev 24987)
+++
trunk/hibernatetools/tests/org.hibernate.eclipse.console.test/src/org/hibernate/eclipse/console/test/CodeGenXMLFactoryTest.java 2010-09-17
14:18:00 UTC (rev 24988)
@@ -66,6 +66,9 @@
public static final String HBMTEMPLATE1 = "query"; //$NON-NLS-1$
public static final String HBMTEMPLATE1_PROPERTIES =
HibernateLaunchConstants.ATTR_EXPORTERS
+ '.' + HBMTEMPLATE1 + ".properties"; //$NON-NLS-1$
+ public static final String HBMTEMPLATE2 = "hbm2ddl"; //$NON-NLS-1$
+ public static final String HBMTEMPLATE2_PROPERTIES =
HibernateLaunchConstants.ATTR_EXPORTERS
+ + '.' + HBMTEMPLATE2 + ".properties"; //$NON-NLS-1$
public static final String OUTDIR_PATH = "outputdir/test"; //$NON-NLS-1$
public class TestConsoleConfigPref extends TestConsoleConfigurationPreferences {
@@ -456,10 +459,30 @@
expProps2.put(ExporterFactoryStrings.OUTPUTDIR, OUTDIR_PATH);
expProps2.put(CodeGenerationStrings.DESTDIR, OUTDIR_PATH + "_test_suffix");
//$NON-NLS-1$
expProps2.put("keyXXX", "valueYYY"); //$NON-NLS-1$ //$NON-NLS-2$
+ expProps2.put("keyCCC", "valueYYY"); //$NON-NLS-1$ //$NON-NLS-2$
+ expProps2.put("keyAAA", "valueYYY"); //$NON-NLS-1$ //$NON-NLS-2$
+ expProps2.put("keyDDD", "valueYYY"); //$NON-NLS-1$ //$NON-NLS-2$
+ //
Map<String, String> expProps3 = new HashMap<String, String>();
expProps3.put(ExporterFactoryStrings.QUERY_STRING, "from testQuery");
//$NON-NLS-1$
+ //
+ Map<String, String> expProps4 = new HashMap<String, String>();
+ expProps4.put(CodeGenerationStrings.DESTDIR, OUTDIR_PATH + "_test_suffix");
//$NON-NLS-1$
+ expProps4.put(CodeGenerationStrings.TEMPLATEPATH, OUTDIR_PATH);
+ expProps4.put("export", "false"); //$NON-NLS-1$ //$NON-NLS-2$
+ expProps4.put("update", "true"); //$NON-NLS-1$ //$NON-NLS-2$
+ expProps4.put("drop", "true"); //$NON-NLS-1$ //$NON-NLS-2$
+ expProps4.put("create", "false"); //$NON-NLS-1$ //$NON-NLS-2$
+ expProps4.put("delimiter", "@"); //$NON-NLS-1$ //$NON-NLS-2$
+ expProps4.put("format", "true"); //$NON-NLS-1$ //$NON-NLS-2$
+ expProps4.put("haltonerror", "true"); //$NON-NLS-1$ //$NON-NLS-2$
+ expProps4.put("console", "false"); //$NON-NLS-1$ //$NON-NLS-2$
+ expProps4.put(CodeGenerationStrings.EJB3, "true"); //$NON-NLS-1$
+ expProps4.put(CodeGenerationStrings.JDK5, "true"); //$NON-NLS-1$
+ //
testLaunchConfigAttr.put(HBMTEMPLATE0_PROPERTIES, expProps2);
testLaunchConfigAttr.put(HBMTEMPLATE1_PROPERTIES, expProps3);
+ testLaunchConfigAttr.put(HBMTEMPLATE2_PROPERTIES, expProps4);
testLaunchConfigAttr.put(HibernateLaunchConstants.ATTR_REVERSE_ENGINEER, reveng);
testLaunchConfigAttr.put(HibernateLaunchConstants.ATTR_PREFER_BASIC_COMPOSITE_IDS,
true);
return testLaunchConfigAttr;