You can subscribe to this list here.
| 2003 |
Jan
|
Feb
(28) |
Mar
(48) |
Apr
(182) |
May
(54) |
Jun
(4) |
Jul
(42) |
Aug
(38) |
Sep
(49) |
Oct
(54) |
Nov
(70) |
Dec
(76) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2004 |
Jan
(249) |
Feb
(417) |
Mar
(898) |
Apr
(436) |
May
(463) |
Jun
(454) |
Jul
(444) |
Aug
(829) |
Sep
(424) |
Oct
(409) |
Nov
(464) |
Dec
(624) |
| 2005 |
Jan
(696) |
Feb
(561) |
Mar
(686) |
Apr
(630) |
May
(613) |
Jun
(577) |
Jul
(511) |
Aug
(389) |
Sep
(374) |
Oct
(357) |
Nov
(891) |
Dec
(819) |
| 2006 |
Jan
(413) |
Feb
(190) |
Mar
(255) |
Apr
(83) |
May
(229) |
Jun
(125) |
Jul
(219) |
Aug
(394) |
Sep
(62) |
Oct
(153) |
Nov
(86) |
Dec
(97) |
| 2007 |
Jan
(239) |
Feb
(97) |
Mar
(60) |
Apr
(73) |
May
(77) |
Jun
(73) |
Jul
(67) |
Aug
(16) |
Sep
(15) |
Oct
(12) |
Nov
(6) |
Dec
(12) |
| 2008 |
Jan
(8) |
Feb
(7) |
Mar
(42) |
Apr
(45) |
May
(16) |
Jun
(1) |
Jul
|
Aug
(3) |
Sep
(5) |
Oct
|
Nov
|
Dec
|
| 2009 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(4) |
Jul
(31) |
Aug
(6) |
Sep
(1) |
Oct
(102) |
Nov
(83) |
Dec
(114) |
| 2010 |
Jan
(132) |
Feb
(83) |
Mar
(62) |
Apr
(63) |
May
(91) |
Jun
(40) |
Jul
(99) |
Aug
(90) |
Sep
(27) |
Oct
(38) |
Nov
(14) |
Dec
(36) |
| 2011 |
Jan
(62) |
Feb
(162) |
Mar
(43) |
Apr
(55) |
May
(60) |
Jun
(30) |
Jul
(22) |
Aug
(3) |
Sep
(3) |
Oct
(37) |
Nov
(8) |
Dec
(2) |
| 2012 |
Jan
(8) |
Feb
(6) |
Mar
(1) |
Apr
(10) |
May
(12) |
Jun
|
Jul
(2) |
Aug
(1) |
Sep
|
Oct
|
Nov
(1) |
Dec
|
| 2013 |
Jan
(1) |
Feb
(5) |
Mar
|
Apr
(6) |
May
(3) |
Jun
(10) |
Jul
(7) |
Aug
(10) |
Sep
(8) |
Oct
(2) |
Nov
(7) |
Dec
(3) |
| 2014 |
Jan
(5) |
Feb
(12) |
Mar
|
Apr
(3) |
May
|
Jun
(2) |
Jul
|
Aug
(2) |
Sep
(4) |
Oct
|
Nov
|
Dec
(1) |
| 2015 |
Jan
|
Feb
|
Mar
(2) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(7) |
Dec
|
|
From: <wal...@us...> - 2014-02-17 20:39:49
|
Revision: 15398
http://sourceforge.net/p/andromda/svn/15398
Author: walterim
Date: 2014-02-17 20:39:45 +0000 (Mon, 17 Feb 2014)
Log Message:
-----------
Added a new global property 'shortenSqlNamesMethod' supporting 'trunk' (default) and 'removeVowels' that remove the vowels from the end.
Modified Paths:
--------------
trunk/andromda-documentation/samples/timetracker/core/src/main/resources/META-INF/persistence.xml
trunk/andromda-documentation/samples/timetracker/core/src/main/resources/applicationContext-manageable.xml
trunk/andromda-documentation/samples/timetracker/core/src/main/resources/hibernate.cfg.xml
trunk/andromda-documentation/samples/timetracker/core/src/test/resources/META-INF/persistence.xml
trunk/andromda-documentation/samples/timetracker/core/src/test/resources/hibernate.cfg.xml
trunk/andromda-documentation/samples/timetracker/mda/src/main/config/andromda-md115.xml
trunk/andromda-documentation/samples/timetracker/mda/src/main/config/andromda-rsm.xml
trunk/andromda-documentation/samples/timetracker/mda/src/main/config/andromda.xml
Modified: trunk/andromda-documentation/samples/timetracker/core/src/main/resources/META-INF/persistence.xml
===================================================================
--- trunk/andromda-documentation/samples/timetracker/core/src/main/resources/META-INF/persistence.xml 2014-02-17 20:39:27 UTC (rev 15397)
+++ trunk/andromda-documentation/samples/timetracker/core/src/main/resources/META-INF/persistence.xml 2014-02-17 20:39:45 UTC (rev 15398)
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
Attention: Generated code! Do not modify by hand!
- Generated by persistence.xml.vsl in andromda-hibernate-cartridge on 12/11/2012 17:46:07-0500.
+ Generated by persistence.xml.vsl in andromda-hibernate-cartridge on 02/17/2014 13:44:56-0300.
-->
<persistence
xmlns="http://java.sun.com/xml/ns/persistence"
Modified: trunk/andromda-documentation/samples/timetracker/core/src/main/resources/applicationContext-manageable.xml
===================================================================
--- trunk/andromda-documentation/samples/timetracker/core/src/main/resources/applicationContext-manageable.xml 2014-02-17 20:39:27 UTC (rev 15397)
+++ trunk/andromda-documentation/samples/timetracker/core/src/main/resources/applicationContext-manageable.xml 2014-02-17 20:39:45 UTC (rev 15398)
@@ -1,8 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
+<!-- Generated by: applicationContext-manageable.xml.vsl in andromda-spring-cartridge. -->
+<beans xmlns="http://www.springframework.org/schema/beans"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:lang="http://www.springframework.org/schema/lang"
+ xmlns:tx="http://www.springframework.org/schema/tx"
+ xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
+ http://www.springframework.org/schema/lang http://www.springframework.org/schema/lang/spring-lang-3.0.xsd
+ http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd">
-<beans>
-
<!-- CRUD Service Transactional Interceptor. Generated by Spring crud/applicationContext-manageable.xml.vsl -->
<bean id="manageableServiceTransactionInterceptor" class="org.springframework.transaction.interceptor.TransactionInterceptor">
<property name="transactionManager"><ref bean="transactionManager"/></property>
Modified: trunk/andromda-documentation/samples/timetracker/core/src/main/resources/hibernate.cfg.xml
===================================================================
--- trunk/andromda-documentation/samples/timetracker/core/src/main/resources/hibernate.cfg.xml 2014-02-17 20:39:27 UTC (rev 15397)
+++ trunk/andromda-documentation/samples/timetracker/core/src/main/resources/hibernate.cfg.xml 2014-02-17 20:39:45 UTC (rev 15398)
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
Attention: Generated code! Do not modify by hand!
- Generated by hibernate3/hibernate.cfg.xml.vsl in andromda-hibernate-cartridge on 12/11/2012 17:46:07-0500.
+ Generated by hibernate3/hibernate.cfg.xml.vsl in andromda-hibernate-cartridge on 02/17/2014 13:44:56-0300.
-->
<!DOCTYPE
hibernate-configuration
Modified: trunk/andromda-documentation/samples/timetracker/core/src/test/resources/META-INF/persistence.xml
===================================================================
--- trunk/andromda-documentation/samples/timetracker/core/src/test/resources/META-INF/persistence.xml 2014-02-17 20:39:27 UTC (rev 15397)
+++ trunk/andromda-documentation/samples/timetracker/core/src/test/resources/META-INF/persistence.xml 2014-02-17 20:39:45 UTC (rev 15398)
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
Attention: Generated code! Do not modify by hand!
- Generated by test/persistence.xml.vsl in andromda-hibernate-cartridge on 12/11/2012 17:46:07-0500.
+ Generated by test/persistence.xml.vsl in andromda-hibernate-cartridge on 02/17/2014 13:44:56-0300.
-->
<persistence
xmlns="http://java.sun.com/xml/ns/persistence"
Modified: trunk/andromda-documentation/samples/timetracker/core/src/test/resources/hibernate.cfg.xml
===================================================================
--- trunk/andromda-documentation/samples/timetracker/core/src/test/resources/hibernate.cfg.xml 2014-02-17 20:39:27 UTC (rev 15397)
+++ trunk/andromda-documentation/samples/timetracker/core/src/test/resources/hibernate.cfg.xml 2014-02-17 20:39:45 UTC (rev 15398)
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
Attention: Generated code! Do not modify by hand!
- Generated by hibernate3/test/hibernate-test.cfg.xml.vsl in andromda-hibernate-cartridge on 12/11/2012 17:46:07-0500.
+ Generated by hibernate3/test/hibernate-test.cfg.xml.vsl in andromda-hibernate-cartridge on 02/17/2014 13:44:56-0300.
-->
<!DOCTYPE
hibernate-configuration
Modified: trunk/andromda-documentation/samples/timetracker/mda/src/main/config/andromda-md115.xml
===================================================================
--- trunk/andromda-documentation/samples/timetracker/mda/src/main/config/andromda-md115.xml 2014-02-17 20:39:27 UTC (rev 15397)
+++ trunk/andromda-documentation/samples/timetracker/mda/src/main/config/andromda-md115.xml 2014-02-17 20:39:45 UTC (rev 15398)
@@ -67,6 +67,7 @@
<property name="sqlMappingsUri">${sql.mappings}</property>
<property name="jdbcMappingsUri">JDBC</property>
<property name="maxSqlNameLength">30</property>
+ <property name="shortenSqlNamesMethod">truncate</property>
<property name="foreignKeySuffix">_FK</property>
<property name="ejbJndiNamePrefix">${application.id}-${project.version}</property>
<!-- masking properties configure the way your model element names are generated>
Modified: trunk/andromda-documentation/samples/timetracker/mda/src/main/config/andromda-rsm.xml
===================================================================
--- trunk/andromda-documentation/samples/timetracker/mda/src/main/config/andromda-rsm.xml 2014-02-17 20:39:27 UTC (rev 15397)
+++ trunk/andromda-documentation/samples/timetracker/mda/src/main/config/andromda-rsm.xml 2014-02-17 20:39:45 UTC (rev 15398)
@@ -66,6 +66,7 @@
<property name="sqlMappingsUri">${sql.mappings}</property>
<property name="jdbcMappingsUri">JDBC</property>
<property name="maxSqlNameLength">30</property>
+ <property name="shortenSqlNamesMethod">truncate</property>
<property name="foreignKeySuffix">_FK</property>
<property name="ejbJndiNamePrefix">${application.id}-${project.version}</property>
<!-- masking properties configure the way your model element names are generated>
Modified: trunk/andromda-documentation/samples/timetracker/mda/src/main/config/andromda.xml
===================================================================
--- trunk/andromda-documentation/samples/timetracker/mda/src/main/config/andromda.xml 2014-02-17 20:39:27 UTC (rev 15397)
+++ trunk/andromda-documentation/samples/timetracker/mda/src/main/config/andromda.xml 2014-02-17 20:39:45 UTC (rev 15398)
@@ -96,6 +96,7 @@
<property name="sqlMappingsUri">${sql.mappings}</property>
<property name="jdbcMappingsUri">JDBC</property>
<property name="maxSqlNameLength">30</property>
+ <property name="shortenSqlNamesMethod">truncate</property>
<property name="foreignKeySuffix">_FK</property>
<property name="ejbJndiNamePrefix">${application.id}-${project.version}</property>
<!-- masking properties configure the way your model element names are generated>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <wal...@us...> - 2014-02-17 20:39:30
|
Revision: 15397
http://sourceforge.net/p/andromda/svn/15397
Author: walterim
Date: 2014-02-17 20:39:27 +0000 (Mon, 17 Feb 2014)
Log Message:
-----------
Added a new global property 'shortenSqlNamesMethod' supporting 'trunk' (default) and 'removeVowels' that remove the vowels from the end.
Modified Paths:
--------------
trunk/andromda-documentation/samples/demo-ejb3/mda/src/main/config/andromda.xml
Modified: trunk/andromda-documentation/samples/demo-ejb3/mda/src/main/config/andromda.xml
===================================================================
--- trunk/andromda-documentation/samples/demo-ejb3/mda/src/main/config/andromda.xml 2014-02-17 20:29:42 UTC (rev 15396)
+++ trunk/andromda-documentation/samples/demo-ejb3/mda/src/main/config/andromda.xml 2014-02-17 20:39:27 UTC (rev 15397)
@@ -29,6 +29,7 @@
<property name="sqlMappingsUri">${sql.mappings}</property>
<property name="jdbcMappingsUri">JDBC</property>
<property name="maxSqlNameLength">30</property>
+ <property name="shortenSqlNamesMethod">truncate</property>
<property name="foreignKeySuffix">_FK</property>
<property name="ejbJndiNamePrefix">${application.id}-${project.version}</property>
<!-- these masking properties allow you to configure the way
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <wal...@us...> - 2014-02-17 20:29:50
|
Revision: 15396
http://sourceforge.net/p/andromda/svn/15396
Author: walterim
Date: 2014-02-17 20:29:42 +0000 (Mon, 17 Feb 2014)
Log Message:
-----------
Added a new global property 'shortenSqlNamesMethod' supporting 'trunk' (default) and 'removeVowels' that remove the vowels from the end.
Modified Paths:
--------------
trunk/andromda-documentation/getting-started-java/src/site/resources/timetracker-completed.zip
Modified: trunk/andromda-documentation/getting-started-java/src/site/resources/timetracker-completed.zip
===================================================================
(Binary files differ)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <wal...@us...> - 2014-02-17 20:27:29
|
Revision: 15395
http://sourceforge.net/p/andromda/svn/15395
Author: walterim
Date: 2014-02-17 20:27:24 +0000 (Mon, 17 Feb 2014)
Log Message:
-----------
Added a new global property 'shortenSqlNamesMethod' supporting 'trunk' (default) and 'removeVowels' that remove the vowels from the end.
Modified Paths:
--------------
trunk/andromda-etc/andromda-dotnet/AndroMDA.VS80AddIn/AndroMDA.VS80AddIn/Solution Wizard Files/mda/conf/andromda.xml
trunk/andromda-etc/jdbcmetadata/mda/src/main/config/andromda.xml
trunk/cartridges/andromda-ejb3/conf/howto/andromda.xml
trunk/cartridges/andromda-ejb3/conf/test/andromda.xml
trunk/cartridges/andromda-ejb3/conf/test/andromdaUML2.xml
trunk/cartridges/andromda-ejb3/src/site/resources/howto/org/andromda/test/howto17/a/andromda.xml
trunk/lib/org/andromda/bootstrap/cartridges/andromda-meta-cartridge-javadoc.jar
trunk/lib/org/andromda/bootstrap/metafacades/andromda-metafacades-emf-uml22-javadoc.jar
trunk/lib/org/andromda/bootstrap/metafacades/andromda-metafacades-emf-uml22.jar
trunk/lib/org/andromda/bootstrap/metafacades/andromda-metafacades-uml-javadoc.jar
trunk/lib/org/andromda/bootstrap/metafacades/andromda-metafacades-uml-test-javadoc.jar
trunk/lib/org/andromda/bootstrap/metafacades/andromda-metafacades-uml14-javadoc.jar
trunk/lib/org/andromda/bootstrap/metafacades/andromda-metafacades-uml14.jar
trunk/lib/org/andromda/bootstrap/repositories/andromda-repository-emf-javadoc.jar
trunk/lib/org/andromda/bootstrap/repositories/andromda-repository-emf-uml22-javadoc.jar
trunk/lib/org/andromda/bootstrap/repositories/andromda-repository-emf-uml22-test-javadoc.jar
trunk/lib/org/andromda/bootstrap/repositories/andromda-repository-mdr-uml14-test-javadoc.jar
trunk/lib/org/andromda/bootstrap/translationlibraries/andromda-ocl-translation-testsuite-javadoc.jar
trunk/lib/org/andromda/bootstrap/translationlibraries/andromda-ocl-validation-library-javadoc.jar
trunk/lib/org/andromda/bootstrap/translationlibraries/andromda-ocl-validation-library-test-javadoc.jar
Modified: trunk/andromda-etc/andromda-dotnet/AndroMDA.VS80AddIn/AndroMDA.VS80AddIn/Solution Wizard Files/mda/conf/andromda.xml
===================================================================
--- trunk/andromda-etc/andromda-dotnet/AndroMDA.VS80AddIn/AndroMDA.VS80AddIn/Solution Wizard Files/mda/conf/andromda.xml 2014-02-17 20:20:33 UTC (rev 15394)
+++ trunk/andromda-etc/andromda-dotnet/AndroMDA.VS80AddIn/AndroMDA.VS80AddIn/Solution Wizard Files/mda/conf/andromda.xml 2014-02-17 20:27:24 UTC (rev 15395)
@@ -57,6 +57,7 @@
-->
<property name="maxSqlNameLength">30</property>
+ <property name="shortenSqlNamesMethod">truncate</property>
<property name="foreignKeySuffix">_FK</property>
<!-- these masking properties allow you to configure the way
Modified: trunk/andromda-etc/jdbcmetadata/mda/src/main/config/andromda.xml
===================================================================
--- trunk/andromda-etc/jdbcmetadata/mda/src/main/config/andromda.xml 2014-02-17 20:20:33 UTC (rev 15394)
+++ trunk/andromda-etc/jdbcmetadata/mda/src/main/config/andromda.xml 2014-02-17 20:27:24 UTC (rev 15395)
@@ -80,6 +80,7 @@
<property name="sqlMappingsUri">${sql.mappings}</property>
<property name="jdbcMappingsUri">JDBC</property>
<property name="maxSqlNameLength">30</property>
+ <property name="shortenSqlNamesMethod">truncate</property>
<property name="foreignKeySuffix">_FK</property>
<property name="ejbJndiNamePrefix">${application.id}-${project.version}</property>
<!-- masking properties configure the way your model element names are generated>
Modified: trunk/cartridges/andromda-ejb3/conf/howto/andromda.xml
===================================================================
--- trunk/cartridges/andromda-ejb3/conf/howto/andromda.xml 2014-02-17 20:20:33 UTC (rev 15394)
+++ trunk/cartridges/andromda-ejb3/conf/howto/andromda.xml 2014-02-17 20:27:24 UTC (rev 15395)
@@ -25,6 +25,7 @@
<property name="jdbcMappingsUri">JDBC</property>
<property name="sqlMappingsUri">HypersonicSql</property>
<property name="maxSqlNameLength">30</property>
+ <property name="shortenSqlNamesMethod">truncate</property>
<property name="foreignKeySuffix">_FK</property>
<property name="ejbJndiNamePrefix">howtomodel-1.0-SNAPSHOT</property>
<!-- these masking properties allow you to configure the way
Modified: trunk/cartridges/andromda-ejb3/conf/test/andromda.xml
===================================================================
--- trunk/cartridges/andromda-ejb3/conf/test/andromda.xml 2014-02-17 20:20:33 UTC (rev 15394)
+++ trunk/cartridges/andromda-ejb3/conf/test/andromda.xml 2014-02-17 20:27:24 UTC (rev 15395)
@@ -27,6 +27,7 @@
<property name="jdbcMappingsUri">JDBC</property>
<property name="sqlMappingsUri">HypersonicSql</property>
<property name="maxSqlNameLength">30</property>
+ <property name="shortenSqlNamesMethod">truncate</property>
<property name="foreignKeySuffix">_FK</property>
<property name="ejbJndiNamePrefix">ejb3test-1.0-SNAPSHOT</property>
<!-- these masking properties allow you to configure the way
Modified: trunk/cartridges/andromda-ejb3/conf/test/andromdaUML2.xml
===================================================================
--- trunk/cartridges/andromda-ejb3/conf/test/andromdaUML2.xml 2014-02-17 20:20:33 UTC (rev 15394)
+++ trunk/cartridges/andromda-ejb3/conf/test/andromdaUML2.xml 2014-02-17 20:27:24 UTC (rev 15395)
@@ -26,6 +26,7 @@
<property name="jdbcMappingsUri">JDBC</property>
<property name="sqlMappingsUri">HypersonicSql</property>
<property name="maxSqlNameLength">30</property>
+ <property name="shortenSqlNamesMethod">truncate</property>
<property name="foreignKeySuffix">_FK</property>
<property name="ejbJndiNamePrefix">ejb3test-1.0-SNAPSHOT</property>
<!-- these masking properties allow you to configure the way
Modified: trunk/cartridges/andromda-ejb3/src/site/resources/howto/org/andromda/test/howto17/a/andromda.xml
===================================================================
--- trunk/cartridges/andromda-ejb3/src/site/resources/howto/org/andromda/test/howto17/a/andromda.xml 2014-02-17 20:20:33 UTC (rev 15394)
+++ trunk/cartridges/andromda-ejb3/src/site/resources/howto/org/andromda/test/howto17/a/andromda.xml 2014-02-17 20:27:24 UTC (rev 15395)
@@ -28,6 +28,7 @@
<property name="sqlMappingsUri">${sql.mappings}</property>
<property name="jdbcMappingsUri">JDBC</property>
<property name="maxSqlNameLength">30</property>
+ <property name="shortenSqlNamesMethod">truncate</property>
<property name="foreignKeySuffix">_FK</property>
<property name="ejbJndiNamePrefix">${application.id}-${pom.version}</property>
<!-- these masking properties allow you to configure the way
Modified: trunk/lib/org/andromda/bootstrap/cartridges/andromda-meta-cartridge-javadoc.jar
===================================================================
--- trunk/lib/org/andromda/bootstrap/cartridges/andromda-meta-cartridge-javadoc.jar 2014-02-17 20:20:33 UTC (rev 15394)
+++ trunk/lib/org/andromda/bootstrap/cartridges/andromda-meta-cartridge-javadoc.jar 2014-02-17 20:27:24 UTC (rev 15395)
@@ -1,3314 +1,3323 @@
PK
----+++------++++++ --+------\x96H\x9F8L\xFCд8\x8B\x82\xE0\xCE6\xA3\x99\x86\x8A\xF2\x82\xF9\xC2u\xF5\xF0^C\xCD4\x87\xF5\xD5Ͽ\xF5`\xDCH9`3\xBAn\xD8U}o[\xE4\xA1X'LJ(TxͣR_ILޠ\x97\xCB\xED\x9A\xC7\xDA$\x8C\xC8"\xD2X\xCA2n3 ́c\xC9,\xF9K0\xF2 \x93\x94K\x9E"ͫ\xB544>%P\xB1~\x9C\x85\xB7IYtL\xA2K\xB3\xEA"_\xF6\xBAy\xD3m\x96=\xFD\xB1%Y\xFA\x98\xD2\xC4\xE3TF\xB1\xDE\xBEr\x8B\xB2C\xED\xDF\xE5\xFD\xFF\xC6NS\xC4=ޟ\xEBOy\x91(y\xBD<IT{\xFC̢b{ܖb\xBD\xAA\x8A8%\xA2*[yҏ\xFEs\xCE\xEE\xDC8\xC52\x8D;Y\xB3\xDFe\xECЌ\xBD\xDEd\xFD\xAC\xAD\x99b|\xD0Ö\xF5\xB4T\x8Et\xADf\xD9\xB4\x97;#\xEB\xC6Bi\xF5\x82\xB0-+\xCDg_\x96~\xABs\xB6\x9F\xB4:\xE7l3\xB7Α\xFBH\xB0W;4\xD3C\xAA\xFDk[\xA6\xFA\x88I\xABQ\xE8k\x99\xE9Z\xF8yH\x83\x92\xC64\xA1y|ٗ㻼\xBDAJ[\xF6\xFD\x8D\xD8\xCE\xF6Vӎtm\x96\xB3#h\xAB本=\xAC\xA3\x97\x84\x97[\xB9͊\xF2\xAE\xBD\xE1۔\xEF\xF1߷A\xCA\xE21\xCDh\xAB\x9B\xBF=\xE6\xC53\xB7*\x92\xCEv\xFE\xCF\xF0\x97\xC9\xE6\xAEx\xAC\xA1\xBB\xAC\xA7<\x97\x89S\xB4\xEE\xAA\xC3\x96\x96EwV^e\xBAL\xFC\xC2u\x8E\xB5\xA5\xB3\xA4\xFE7ə\xE4\xE6\x9CO\xC5Q}h\x8B\x9B\x93;\\xF65\xE7~X/֍\xFB\xDE--O\xF0\xF9L\xD22\x817\x9B,O\xA1\xA7\xBEW\xB5\xBF\xAF\xAE\xDFBY\x80\xC73\xBA\x86\xFE-{"\xDF\xF4l\xA5\xDCI\xE3\xC0\x8Fm?6\x90\xC0V\xB4?\x95\xFE-w\x83+\xB9\xEE\xCF\xC5/Ǿ\xCD\xCB\xF2\xA25\xCB9\xE5N\xEBe\x97\xB0*\xB3\x9C\xBExQ\xB2{\xFE\xE2\x88,\xCBTʪ\xF2Y\xEA2\xA4p\xE6\x89ˆ@V\xCFk^ެ\xC7jr\xBA\xF4LQ2\xA0\x94\xBE\xFC\xAE\xEAe\xA0s\xCF=\xF4\xB8\x94"\xFC\xB7\xE0 ^\xBB\xBF\xA3\xE3\xB8٬\xC3\xED\x8E
-n6y\xDA\xFD,\xB6\x95\x9A\xC1\xDD\xCE\xDE7PK
--\xBF\xE7ZůmX\xC5stI\x9AF\x87\xE8\xF6\xFDA\xEE\xC80
-\xD1\xC9\xED<\x8A\x87\xA8\xAA\x9E\xAB\x95\x9B\xFA\xABS\x94&\xA8:C\xB53T\xA9\xBD\xA9\x9C\xBF9\xAB#\xDB
-P\xADR\xAD!\xA9\xBFo\xE2\xE8\xFA\xE7<\xBAӱ\x99&\x8C&L \xEEg\xA3P\xDE\xE9\x98\xD1L-o
-\xA0A4q@q\x94\xBC\xCFq9<0Z=\xB5\߲\xC1\x96
-F\xEF\xBAV\xD0\xD1q\xB5R\xF92\xCD\xEE\xF5<ò\xBA\xCE%t\xC9\xFB\x81g\x98\xE2\x84W\xFD\xBE\xE1_\xEBX\xE6\xBF/\xFE[\x90\xA0\\xCA\xD1k+/\xD9p\xB5۠\xA2g:v\xC8]\x8Bd&\x8D\xE3*\xDEo\xE9\xCD(\xCAr\x96\xA5\x8B\x93w0o\xC0\xACl\xC1\xACo\xC1D\x80"\xA3ttBZ\xD1\xA3\xB7Ž𰔱\xCF3i\x85\xF4\x8Efw](\xF9|:%ٽ\xCAkІWvstJ
-\x8Cn\xB4\x9An1\xA6\xA1\xB5\xC0B.)}\x99\xDC\xE6\xB3\xA8\xD6\xD7-4k\xC2~\x91lg\x81%\xC3([͂ZKS\xAF\xAD\xEFu\x9B+"\xDB\x95p.7\xDC\\xBFS,]#\x86\xADټ9\xE6\xB3|\xA1\xFA9\x8ES\x98\xE3\xACU.\xAE\xB5\xCA\x90ۘv(F\xC9\xD8L\xE34\x93#:e9\x89\xE9\x88m\xBE\x87?\x89\xF7p\xDB\xC42̝}a\x86\xB6WT\x98m\xB3\xBE\xC1\x92\xAD,,\xCCo2f\xC9\xF4`\xBA\xCDH\x85%\xFD\xCE\xD5)\xD0q\xF1oDB2\x84\x8E\x839\x91\xBF\x8C\xD3[\xE7[\xEEX\xBFY\xF3t?]\xAC0\xEFˑC\xA7U=\xDF\xF5l?\xB8\xBE\xB9\xB4\xDB\xDB7\x82\xAE\xEB\xDCp\x957\x9E@\xB2;\x9B \xB7\xB3~lV^IwM\xDEx\x8DX\xCA\xFA6\x8A`'\xB4U;\x8B\xDD2T2\xB1\xB7-D-Bi\x86"N\x80\xC1r
--\xB1\x8BV\xB9ܔZ\x84A\x9A@\xBB\xBB\xEAl\xA6\xB5Z\xD2)\xD8ۗ\xCE\xD6V\xCEָ\x9F\xB55gk\xEB\xCE搏\xF3\xF8!R\xE0\xF7\xAF\xEDl<g q\xF4\x97\xD8#9P\x9D=¸\xDF\xF0\x96\x82\xFF,\xFF\xBA}\xAFg\xF7\xA1\xBAJ;y\xEFS&\xFEK\x99x\xA0\xEF\xBFL\xFE\xB23\x9A\xCEbʹ\x8B\xC8NwƏ\xBDJ\xD3\xCF3\x86\xD5R\xE2}\xF2\x98buH\xD1r\x83\xC0\xEDo\x92\x85\xFD\xC7\xB7)c\xE9\x{1304CA}B\xF6}X!mx:\xAFx:\xAFx:\xAFx:\xAFx:\xAFx:\xAFx:\xAF\xF8\xCA\xF3\x8A%u\xD8=\xB2(O,\xF6\xF1\x90\xAD#3\x9Dw\xBD<\xAA\x9E\xBF\xBE@\xB5J\xA5\xAE\x88\xCF}
-\x82\xF8\x87(}\xFDS䒔s\xAA(h\xEC*\xBDp\xB3\xFC\xACğ64\xD2T7\xDF\xE7\xEAs\xE4\xD3\xCA0\xAA\xDC2\xFE]H\x98X|\xAD\xFCPK
--\x8C_fgFV%\xD5\x9E\x90\xDE\xD3'\xDDg\x9A\xE6\xD1\xCD4\xBE\xA6\x9A&\xFAB\xAB|\xBB\x96S\xCD\xC3\xCD)\x8B9M\xE0\xEA\xFE\x8A\xD7qR̠qu\x93f \xB4\xF4Wz\xF3C\xE7\xE5)9L\xF0\xD2\xB4Ϡ\xD9~\xD3|\xF5\xE6\xEC%\xB8N\xEDf\xAB
-J\xFFč,\xE84\xFA\xF7M\xBA6\x89]\xE4\x9C\xE6\\x8BnW\x94\xC0L\xF5L\xC2\xE9'.\x9F\xC3l\xB3\x92r\xF32h\xBFJ\xD0\xD1(\xBB\xD8p\xE8\x8AљD6NK
-+OX1q,\x98P\x833\xCE\xD2\xE4\x9ABG\xA9\x85\x9E5
-\x87~\xD6tt\x8AJ\x8CZK\x8Dʳ&\xAEITG\xC0\xF6\xBD\xC8\xF5"\x93\xE8Z\xF3\xB5\xD6>#Jt<\xF2~\x87\xC0\x83IJ~\x9B\xD1rA)' bU\xA1\x9E\x95%\x81a\xE0v%t9*\xB74I(\x86+}\xA1\x8C\xA6p4\xBFZ/<\\xCEX\xBA\xE2Bd~\x93\xCFDha\x93\xE6I\xB1\x89R\x9E\xD1\xE2\xFF\xE7\xE9\xC0'\x9DC#+\xD0(\xA2/\x9D\xEB(F?\xF9\xF3\xC6IZj\xA8\x8E2\xCC
-\x93\xB3zr
-\xA6 Z\xEB\xAA\xB5\xE2Y\xC5\xFD\xADcDo\x96\xA2\xC1\x85~\x93|\xBFgɹR\xFE\xF9\xE9\x93\xCF\xC2\xCB\xCA>5Ͽk;ѭ\xD2
-\x9B}\xDFy\xFD\xDB\xFB\x81I6\x8BT\x84\xA3ȳ"N\xB0\xBB\xEB\x83s\x99\xC3@\xAE\xABRլ#+\x88\xC0@\xE4O1\xB4o\xFBVP\xCFV\xA9XG<\x8F\xD7W1\xFB\xC0\x8B\xE9I%8\xDD5,%\xA2\xE2\xF8\xBC\xFC\x98\xAE\xB4A\xA8\xFC\xE28\xE0xz-#-\xB2\x9A3v\x84\x83*\xD9\xCE\xA0%C\xCBq\xD5\xEA\x8A4+S/%a7\xE4\xEBK\x84\xE8\x8E\xF5\xFD(\xF2'\xFB\x80&DW\xE7\xC5\xF2q\x9C\xA8\x92\xFD_\xD3"eÑ\x99ё\x99ё\x99ё\xFD'3\xDA\x84CrTs\xA3\x87\xD8\xC6=rd\xAB[\xF9-\xC0\x8B\xE7\xADW\xAFϡ\xDDlv4ye؍A\i\x99\xBBי\xB1\xB8\x88Z&\xB1\xBC\xD4D\xB7\x97\xC6]z\x91^}M%f\xBBF\xDC\xD3A\x98\xF5%\xB4\xC4bK]X&\x89Ս\xE7\xBFPK
--c_\x88\xBBRr\xE1"\x98\xFC<^\xBDt\xD1I\x85\xE6\xD0JU&_C\xAB\xF5\xD3c\xC8\xD7\xD2'
-\xED\xA2*\xB35=\xA4\x84\xBF\xE5|\x83H\x9D\xB7\xEB\xEF\xCF~\xF8\x9D\xC4k#=\x8D\xC6\xE5s\xA3\xF2B\xAF\xB9\x81\xE1cg\xDC\xFB\x9Dw\xDD\xF1p<m9\xDBU@z\x88\xA30s|\xAD2\xFF\x96\xB55\xE5u\xB9q\xB6\xECf^{\xEA\xC1\xF8\xBC\xF1u\xFA\xBEӞ\xDA\xD9\xDC\xF8\xAC\xAA#\xB1\xB9\xEA\xD74N\x9CF\x82\xD3\xCDFۀ>ן\x82\xA4^\x84\@3\x96,z\x83\xE8\x93v\xECr\xAF\xDD\xF6\xA13\x9E\xF6\xFA\xC8ˉ=\xEF\xAA圞\x9C\xFC\x8D\xAB?Nڽ\xDE`\xF4\x87\xCC\xFBl\xD2\xEE\xF2;\xCFn\xAE\xAF\xDBӏ-\xC7X\xF9\x94\xFF\xF7\xD0& j\xD4:+\xA5\x{13C3DF}\xCBKD1l\xCFf-g$6\xA1\xBA2O\x9DÜ\xFE\xBA\x94NU\xBC\xBD\xC7\xF2=\x9Aw\xC8<\xD9#\xF3|\x8FL-\xAD\xBF\xEF7\xFA\xCF\xE1\xE1\x9E\xE6R%\xE5ר\xCDC\xB8?Ue\x96\x92\xB9L\x94\xF4)}\xD5\xC3@\xA7_CK\xAFX\xF2](\xE2@]a\xF85\xB4\xF8\x8F\x90qɟCdL\xE5)\xC9?\xB0'\xC3ඔ*\xBB\xEE\xEF\xD80\xC1\xA9\xC1\xB1\xC3<\xF5\xF2h\x95\xBB\xBE
-\x96\xABt7\xC0t\xFC\x81\xD9\xF9E\xB3ͫ\xF2/\xB3\xD8 \xADF\xBE\xFD\xACp\x8F\xA73+\xBD\xD9\xE0\x9F\xEE\xEAgn\xB1\x93i\xFF\xBDy\xB2#\xA3\xFE?\xBCB\x8A\xBD߶Ǿ:Y\x95[\xA1\xD4\xEA\x98R\x8Db!j\x89\x85\x8B\x93g\x9A\xCE\xC5\xE5\xA3\xF2\xCCȵ\x8DF\xB1K_\x81\xF114\xA31<\x82\xE9\xB1\xE2\xC9\xC7$@\xDF\xC1\xE2\xC8\xE4\xD8V\xD1%BQlJ%\x8C\x8E^ԡ\xE1\xFA\x90\xA4\xAEG\xF1B\x89u\xE1ߝ\x8BvB\xD7LZ\xDA^s}\xF0;\xFDk4L">\#Td\xFA\xF7\xB8W_\xD0\xC0\x8E\xA2\xEF\xAC͐\xFBy\xDE\xE2ۭ-\xFA\xA3\xDE\xE1\xCA\xC2\xD6\xB6.iv\xB1z\xEC\xF3\xD3\xD5)\xFE\xBF\x8A\xB7\xE0\xADM\x95\xF4r\xA1\xC2@\xC3X-E\xFC\x9BB6\xC5\xCA\xFE\xA8\x9D$a`j<\x98\xA8x\x89\x82X\xD1\x94fDž\xA2`%4uK\xA9\xB1\x88VJ\xEA$\x8E\xE6\x9BƐ\xAE$\xA0\xD7\x82\x88_*\xF5\xF2]\x83\xB9$Ӹ\xC5
-\x91,\xE20\x8C\xB7\xDAm^\x9D#1e:\xE5\xD7fg8\xEE\xFE\xF2\x{1DBC57}W\xD0&X>\x9A\xB3K<h\xAED' \x93D\xCBBa\xDC1#\xF1Gr\xDE\xBED4\x87Dś-RT\xA0\xB1nf=\xB0\xAAֵ\x87\xD9\xDC\xE5\xD22\xB8\x883\x94Ɩ\xB1
-\xA4~Ӽ\xE1\xD6n8\xB8(\xECG\xC3Q\x90
-\xB4\xB1c\xB6^\x85\x8F\xFD([\x9B\x87Ͼd\xC1\x987\xA5b\xC5O\xED(\x8AScBԺ\xA1+\xEC\x87\xC4\xC4xŦ\x8F\x8A\x8B\xF9\xAF\x95\xAC\xD7 \x92\x9A\xFAO\x9E`\xB1\xE4\x8B\x96do#\xD4v7\xC87\x8B\xC4\xC6iԪe\xEE#\x9Eb\xDBD\x8A\xE66\x8B\xDC\xBBh\x9D\x92ϐ}\x99\xCD\xE5#\xA9:H\xC5mH\xAA!\x9A\xE6\xD8(!R\xB5\x96\xEB[\xA9\xAA\xAA\xC2gi \xE5+\x89\xA1UD\x849\xE4\xDA4\xD9\xB0\xF2Ha\x96\xDD\xFA\xA52(\xE2\xFDg8^\xC4\xEE\xD4`\x9D\x84\x92<\x86\xA8h\xB2{\x8F
-ĬXs\x87\xA7\xA2s\x95\xD4Ȉې>3\xBC\xD3\xF8e \xC3yu-b\x83\xA0ǒ\xDB__\x8E\xE6\xCB\xF3ci\xACU\xABd\xFF\xEE\xC4q\x85\xFA\xD4.(\xF8f\xD6<^h\xA9\xEA\xF4\xE4J\xEC\x91&ɟ\xE4ꀜQI\x8C\xC9J\xDC\xCAcr\x88\xEE\xB8B<\xE24+\xF2\x80\xAB\xB9\xA4\xE4\x88$\x91B\xD9 \x8D>\x8A\xD4\xF9\xF1\Z7\xC6؍\xA1R.\xC2xI\x9B\xC1R\xC5Y\x82\x9AՀ\x9A@\x9B\xF4ʜ\xC7P\x92\xA7\xA9C\xEE\xB8纏\xBA\xA3(᩠x\xD8\xD5L\x80b\xE1s!K\xB4\xEEUq\x80\xBD\xFD\xF7-\xF2\xFEt!S\x9A\x9E\xD2\xC1\x91B\xE6\xFB\xC6ܫf6N\xCC)ء9;\xB4cD_#.
-\x85\x8F\xCAH"\xD0\xFF,\xDAi_\xF9؎x\x8C=E\xEC\xF1\xB83\xF1EN\x99\xEE\xFAp\xC6,\xD9\x8C\xA2\xCE\xF3W\xAD\x80G\xDEm\x83n%'\xD9\xEA\xF34\xB9\x98M\xA95\x9B\xE7j0ɿi\xA4t\xB3͂\xF1\x8A\xE8\x8EN\xADR\x9B\xA1\x97\xC1FF9E\xE8\xBE9Z\xDE\xF1\xB8(gJR\xDB5\xA6\xD4R\x893~\x98Q]\xA1\x8BxK\xD8,\xDF\xD7(\xC3\xD4E\xED\x82N*\x94L3\xD10j\xA7\xE8y\x87V=\xD9BH\xC5\xF8ً\xDA(\xA3\x8Fqf\xEAù6\xC5\x86\x8Em\xE2\xD72\xAE\xD4p{j\xA8\xB2V#-\x9725ݣ\xE3q\x91\xA9Х\xB4ʢ\xA4D{\xC2t\xEC\xB68!\xF9\xC0\xB1\x98u~\x83\xA5"\xBE]\xEDU\x95\xE9Xދ0\xABZ41c)\xB9h9~X\xDF0\x88\xCD\x87\x97\x8B\x9DP\xC4
-9\xB0\x8FZ\xA22\xB6\xA2+\x9C\xE48-e\xD5cIs\xF1\xC3\xAA\xACN:DD\xA8A\xA7H\xD4O\xC4;'+F\xAE\xCB\xE2r\xB7TQ:jN\xA0\xA1L\xDD✖\x8F\xD4(tL\xBC\x88+\xAF\xE1:c\xCF_\xBE\x88\xBB\x8D\xD34^\xDD]\\xFB}gxx\xBA\x91{\xBA\x91{\xBA\x91{\xBA\x91{\xBA\x91{\xBA\x91{\xBA\x91;|#WT\xF7/\xE5\xEC\x9Dܡ2c\xEFR\xAE'wl\xFD\xF0\xD3\xF3\xD3\xD7?\xBF\x85\xB3\x93\x93\xF3:\xFF*\xAD(\xDB*\xBF\x98\xF4˧\xF5\\xF0\xEF\xE6P\xECt<n
-ʹ\xB0\xBF\x8B\xA2Y*\xE0\.\xFA\xA7\x84^\xC3Ԝ\xDD\xCE]nhǽ\x8F\xCCb\xFE\xA3\xBA\xFFPK
-\x85\xF3\x85O^x\xE7\xD2k\xBE\xA9\xBC毕\xD7$\x84\xBD(靝~\xBA8\xD8tY5\xA2\xD1&\xF9\x9A\xFE\xE6\xE7-\xF9\xF2P\x93r
-{\xFB\xE1=\x8D\xEE=:ߍg\x93\x89=\xECA{\xC0>ᄩi\xF9\xFA\xD6l\xB0\xEB?~\xBCL\xAF\xF9\xB0Ⱦ\xCE\xE4\x9F\xFAKpOc\xDA\xF4\x9CWj|\xE0\x95\xE3~gMg\xFA E\xE9\xFBN\xAB}ė\xB8\x9Bo\xA8a\x97D\x94.n\xC0\xCE\xEBZ\xF1.C:\x8D\xA8خ\xEF\xC5\xC92os\x94_\xF2\x94w:\xE1\xFFԽ\xD35\xBDg\xAF\x95^\xDC\xF0`~{6o\x83\xA5\xC7v%\x861\x{167EEC}\xC1_\xE6\xFB?\xB3s\xF9\xF2}\xD1F\xED\xF3&D\xFCu\x946Ziy\xA3qRn\xC8\xF5\xE5\xEF\xBC=\xFB\xF5\xE3\x87\xE3s~U\xFAq\xB1\xB8\xA9\xDC-?WOY\xE1i\xB5\xF0\x9C\x9EW/Y\xE1e\xB5\xF0\x8A^U\xAFY\xE1u\xB5\xF0\x86\xDET\xACpP-\xFC\xC2
-\xBFT\xBF\xB2¯\xA2\x90[x9.?\xD9f\xF9\xF0\xF9?\xA1p\xF1\xF3\x88\x8FY\x8Ec\xA9b\x83\xEC\xD8\xC9\xD0\xD9w36ޟ0\x93\x96\xFF\xEB\xCEq\x9D!+`6\xEE89\x89\xC3+\xD6+g8\xECE#^\xED\xB7\xD9M\xF6\xB2\x9B\xEC7ك\xEB\xF7\xA4\x9B\xECeW\xC0m^\xF3\xBA)ߦt4\xD7\xD6]\xF2\xA7
-\xF1p\xE2\x84Wr\xB2\xF4;\xF8\xD2ܮ\x8Ff\xEF\xB0\xEC\xD3Y\xCAo\x95*\xC9\xD1\xD1Ǭ\xF1\xE9\xC4\xF1\x97N\xC1\xD6ކ\x86k\xCFw\x82\xD1\xDE
-\xBBA0ʅ\\x9C\x92\xF8)߆דk\xE1\x8B_TP\xBA\x9F$\xF4~v\xB3\xE7\xBC\xE3TX\xD4\x93\xD9\xD7\xE2-D.\xA9\xCE\xE4\xF4J.Y\xA8\x89;\xA4\xBEn\x96.\xCAN\xAD\xAB\xA3\xFD0`\xA3\xB3\x99\x9B\x84\xB9c\xFF\xD7PS;\xAD
-\xE5z\xB0P[\xF7E\xEB\i\xD8\x9B\xF6Ce
-;\xF7X\xF5\xC7N\xE4\xB8l\xA4\xCAF\x9E\xFBW\xFA\xB0-h5\\xD9\xD6\xE4>8&\x89\xBDQ\xE0$\xB3\x88f\xFE\xBAc\xE2:\xB9\xA5d\xD3!q\xE0\x84\xEF\xF4\x81=. ٟg\xBA\xD71Q\xD8gf\x9ELB.]\xBCU \x8C:c\xA6I\xF0\xC3a \x98y\xCBĞ\x8C)\x99\xF0\xCB\xD5\xC8\xFE\x88\xB2Kk\xFB6}\xEA$\xEA\xCEYW.\xC3B\xBC\xBDN\xC6^,\xAAo\xEF\xFAM\xED]\xFFE\xED8hs\xFF\xEC\x97\xC4\xF3㽓\x99\xEF?\xFCm\xE6\xF8ޝG\x87l\xC0\xD4'Sx\xE10\xEC]\xFE\x9BJ=\xD9\xE5\xED?\xA8\x9B\xC8=\x99(\xF5 ;?;+=\xF6|\xFE*\xBF\xEEi\x95\x81W\x80\xA7<\xA3Ss7\xFD\xFB,y\xEE\xE9d\xEA\xDF\xFB^\xBB\xAE"\xEA\xD2!
-\|;\xD0\xE0\xE7~\xFC\xB5\xFD\x8FU7\xC4I\xB9\xC2\x92%n\xEC8b\x987\xD9^\x87\xAE\xC7aC\xCE9\xF6\xF4a\xE0\x8CFt\xF8\xD5\xF1g4.\x8F\xEEe\xF9\xCC&\xFE\xDEy8\xA4\xFE\xB1O\xC1\xB2=\xE1\xE5\x92\xCA]jNĠWMb\xE8F}j\xEE^\xB0\xEC\x87S\x8F\xB2\xFE\xCC.)r\xCFEE\xEE\xD83\xB893\xF2\xEE)\xCCW%'\xCC\xE8N\xE1\xA1\xE2\xCF|\x99\xF5\x93\xBDx\xC2N\xBA\x9D%t}+Ƣ:\xAA\xA5\xDBQʍ\xFF\xDA։&1tS1j\xEEnG\xEDX\xDB\xFA\xD0u
-\xB0\x88\xF9\xE5\x94F\xEB\xDD\xD4H\xA0\x9BZP\xBE1\xE6\xEApus?\xF9Y=\xA8\xFF\xF4\x97T\x80\x85;j!_\xEF\x869irÜt\xE9v^\xEC>\xEE\xBC`\x98\xDBG
-\x93Y\xE5s0\xCCf\xE9\xE9
-\xAEi2\x8BN\xDB\xC9>?\xF5E΄\x92\x89\x93\xB8cV'\xE0\x91\xB3\xBBҨsݶ\x90\x90VU\xD5L\xA9\xBDCW\xD9CZ`\xE7\x87e\xB0=a\x92\xA8\x80\x81pm\xDE|\x86\xD95d\xEC܃\xBBht\xEBD\xA1t!\xBB\xE6.\x9C\xC3\xCC|~G\xBCjP\x90d\x9CP\xE7\x85\xD3\x8F\xB9q\x80\xAB\xD4}\xB6З\xCFB\xC4ߠg\xA6\xA8 rwK\xE6^2\xE6\xA5\xF1\x94\xBA\xDC\xE9M\xB6\xD8 \xE0\xF9\xDER\xE6uy\x8C\xE3)MF\xD5-NBAV\xB7k\xE5\x86:Q\xDE\xEA
-\xAD\xBD\xA3b2W\xCCL\xC9HQc0\xF1+\xA5nt\xA6T\xB1\xD1\xE3e=B\x83N,S0W\xBB9U<\xEEh\x80N\xC5R:\xF3\xC65\xB3\x89`\xFA\x9F5\xAB^0\xA6\x91\x978\x81K\xC9\xD8c5\x82\x9D\xF2-\x9F\x8Ep̦\x93(_6\x83\x926\xAF\x8F1/\x9F.\xB7\x80\x95du;\xB0\xF0\\xD6Q`#T\x83\xAE,xW\xA8\x96)J\xF3Ж\xA6\xD8HO\xFB\xB0\xC4,\xCF\xE5lW{@\x98\x87~1\xBA\xFA\xF0\x90OM\xE1!\x9FԆ\x87\x8Chһ\x8DX|\xC8*k\x9C\xAE\x84[(Š\xAB\x8A[\xDA\xC18\x8C)q\x8A\xCF&C:\xA5\xAC\xC8\xF0R\xCC"\xE8\x80\xCF^\xF3'X>/
-\xA4]߃|\x9D+'zBZ\x95\xD08\xA5%F\x95\xC0f8\xA4`%\Em28n쉸\x9Dx\xE6%έ/\xFCq\xB3bzh@\x9C\xE1\x9C;\x9Dg\xA1uqq\xE7w%\x8C9\xBC\xDC4
-G\x913\x99\xC05n\xD8\xD5R\x8D6\xB2\xA3QDE\xB6\xBF\xB2\xFEP\xE2[=\xB0攳\xEE2\xEF*Ix\xC7lI\x92ڒB\xBA\xB6\x830\xA0;$;\xEEX\x81\xC6^B_w=\xEA-V&T<\xFE\x99\xFAՆG\xE4\xD3%\xDB^\xE0\xFA3n~B\xC3)2ǯ\x95\xB4w\xCFA\xB0J\xED\xDB /\xCCM/\x8D\xEFOo\xBA7!\xF9\x9D\xD5t9W\x84\xA0'^\xC5f\x90\x8B\xD7-\xA0F\xA3\xBC8p\xB7\xE8\xF5
-Ld4\xFA\xC7\xD6Aw\xB4\xB8\xFC\xDDl\xC89\xF7ԏ\xC90\x9C\xA6|\x98\xA6\xCCb #\xED\x831\x9C\x8AzS7sH\xD2ܥ0# \x93*cP$\xEDs\xE4\xD0NN&\x89)O\x83\xC6E\xD8=\xDA>h)\x9DTB|\xA1\x9B\xC6\xEED5x\xD6͍\x98\xCE\xDB\xFFp"A\x84'nM`\xC9.0\xDBM\xC4y<\x87+\xEB\xD4\xC2Y\x92^\xE3\xF7\xA1t\x93
-rKap\xC8\xC6\xE4Y\x9Cv\x879Gqô#\xBB\xDD#J\xDBh5\xB4eҡ\xB5T\x9A\xF6\xF6\xF6Ȉ\xE1u\xDCq\xAEL;\xE2%\x864Ra\xCEE\x91\xF3 s\xE2?1\xB0Ql\xB4}\xA2\x89\x98\x90t\xE0\x93\xB9\xE8\xCFlaT\xAB\xB1ϐ ]\xAB\xA6^\xF0\xADu\xBD\x89Q\xADA\x9D0\xA9\xF3x\x8B\x9A\xB1c,\xFAo&uU\xA1\xEC5G,)\x96c\xCDo\x99\xC74/\xAEMĜxΠqN|Ue1$\xA0\x89\xE8\xD4K\xBC\xCCTM\xAFT\xA3.\x96-\x94\xA2p\xA9\xB6\xC1\xFAcϗV\xE5\xA7?1\xF01h
-\xAA\xFA!\xFC'\xF9\xF6\xD2|\xBAt(=_'ǔ\x8D
-\xEB\xF3@Z\xDA\xCD\xFCL\x93\x86\x85\x81;\x8B"\xB8R\xC0L\xA9O\xA3\xFD\x9E[H\xC8
-7KQS\xA8ܶ\xB7\xA7>'\x86h\xAF]Y*\xC4\xC0ˠ\xC7"w\x93\xB9\x85P\xCA\xD39\x8A\xFCKB\xAB\xCF\xF7U9\xC9x\xB6/(+J\x98\xD3L\xAD\x90<\xFA;\xB3\xE4DS:v\xEE)\x83M2\xF5Ҡ\xB4\x85\x9CJϔ%\x9A\xA9\xDB}dL\xA7d\x9D*\x9At\xFD!R\xC0V\x9B\xD4
--4h\x9F\x9A\xD2\xC7e\xA1٦\x94H\xFC\xB0\x88\xD4\xD3F\x85\xD4J\xA1Y\xE9VG\xCD4\xBA\xBA\xA9R\xF3\xA0\xDD\x9D\xD2>h7\xA5eKP\xB2M\xDDL;\\xCC*`\xF3,f\xCD3\x8D\xA4Eזb\x87\x92\x9B\xD11\xAEV\x8F;\x95\x80\xE8\xBDsf~R\xA8W^\x80\xA1a4\xE8\xFBr~\xF6\xEE=i\xCE\xF5\x9B\xCAI\xCA\xF3\xABґ\x92>M\xEC\xADUe\x95\x96\xA2-\xC10^ x\xD4E\xA5\x912\x9C\xF0T4"t\xBA&\x86g\xE2\xA5\xEA\xB6Gm?k-)\xCB\xE1\xE4uh\xA7\xB9\x80 \xA8\x99\xE9\xE7\x90\xDC>\x90\xC4\x8D\xD8_"\xBC\xB6V\xA9\xDDvK\xF0J\xFA⑵;\xC8\xD7\xE4ͺ\xA4\xCAw\xC4K\x9Az\x875\xE3\xACia\x9B\x8F\xB9+u\xFFp\xE9Thd,-\xFA\xA8c@\x88e3\xBB\xCAv\xC64\x93T\x9A\xA9\xBB\x92\x95(G\xE1\\xE9ޝeT\x8D\xB6\xF2i\xC6l\xB9fmn}\xAB\xC9\xF7',\x98\x82\xAD\x89
-\xF3\xD4\xEB
-\x97\xF0|}R¾-VE\xCF\xF1s\xB9o噻a\xD7P\xCA\x9D/\xEDz\xE9x~\xF9Z\xD7(9\x92\xDE\x86\xE7۔\xA7\x9BT\x96\xF49\x82]\x93\xA1\xC3-)u\xB7\xAE.\xD4d\xECذ\xB5\\xD5\xCB9Ekv\xE6k<\x83(\x9Fm\xCF-*oe\xA0x\xCFD9i\xDFOQ9+\xA8)\xFD\xAC\xECK\xE2\xF9q\xA0b\xF7\xE3y\x8BsOxi\xD2\xCA-\xAE*q\xBE7\x89\x9B\xB9Q\x96\xC3\xFDB!<\x8D\xABк\xF2mJVG\xE4\xD1{Z\x9FX.\x8F\xBC{T\x96\x8D\x93m\xDE
-y\x81\xEBφ\xE2>\xFCF\xE5J\xC1\xCCS\xFA#\xC9s\x9C:|ey\xE9>\xCC꘏=w\x83f\xDF\xF8\x8D_wb{4\xD4^\xADO'S\xBFM\xBD+'5\xA88{}\xB1\x87Q]\xCDq\xB9\x8Ffk\xBC\x84rg\xD3\x93-\xBC\x83Y\xEE\xE7\xE2\xCDT\xF7\x9Cb[\x8BT+\xB86f\x8F\xF2\xFA\xA9bQ\x85 \xD9\xE4\x82\xD95U\x8Fj\xBD\xD3Z\xA9\x94RPm\xAB\xADk\xF6'h \x86\x96\xD1U\xD4mkuj\xCB\xBD\xEA$e\xCB)k\xCE\xDD\xDEcVꢉy\xDD\xB84.۔\xEF\xE7^o\xB6\xEA\x9D\xE1H4k\xE0\xE9Y\xA6\x86HR<\x9B\xDCj\xCFF4\xEA\xC8V\xA2f\xAB\xA6X\x8A \xA1\xDB\xCE\xCCF-2\xB0A\xBB^-\x8F\xCB2[\xE3\xFD"\xED\xD15DSzjד\xC8X\xA1Vk\xB2\xE7\xD3\xFCYWN2nS,qC[\x88ٓ\xC5Ch\xA7LT;\xFC\xA2_\xD8\xFAs\xE7!&q\xC2^%\xD1\xF8\xE1,aW\xC4\xEC\x8D\xC7dkK\xAF\xC5"\xE8\xE8<(8P?m\xC0no\xCCCu\xE4W\x87\xB5\xE9\xD1#\x9EK\x8F]\xEC\x8Bo\xD4b\xF5Si\xEC\x8Cq\x99\xD0&\xA9\xF6ҕإH\xEC2\xB0\xC1Ô\xB6\x8D[\x8B\xE3\xE6\x80.|\xC6KX\xCA7S\xA5]\xEE\xCC!W\xCB1\xB4\x88\xDA2\xD9yu\x93b+\xFAʺ\xE0\xA2\xFC֧J}\xF8\xE1J\xF8\xA0PQc\xC8\xF4\xC3Y\x904\xE1I\xAEE\x98_\xB1\xEE}\xEAD\xE9"h\xB1\xAE*=\x9D\x8Ca}\x9D\xE1X\xA5\xF6\x903/\xF87I\xAE\x90\xBC\xFDr܄\x99/\x90\xE8Ỽ\\xB5ҞeK K
-{@\xDC\xF6ؐ\x8Edԃe\xC9b\xF1\xCF;Q\ǚ\xC1\xF2\x9D^\xB2\xAA`\xD9\xCE 7b3ݔE\x98\x97\xD5㸱]ųB]\xB17\xACGOg"\xEA\x86Xq\xB6\xA8\xB5\xCC\xEB%\xED\xEE\xF2j\x89\x97\x98V\xA5DAm9-\xBB\xC3Ff\xE2\xD8h/Y\xCBx\xC7L\xB6!\x99\x8Fi@\xC2a\xB6\xFF,\x8A\xBD{ʐ݅\xBE\xCE9\xC3J\xB3
-
-2\x9Bf "&8
-\xFA\x86\x99\x9D\xF6vD\xFC\x96ӼFf=\xECS\xE1*\xACk\xF3ȶ\xB84N\xC2(~M\xEE\xD83T\xB4\xF3\xF5\x8C6\x93\xCA߿CZp\xCF\xCB6k8\xC5m\xC0\x8F\x8EB9\xDAbS\xD8\xE0#\xA1Q\xD9a.\x97aP\x831(=1\xE7ϼ\x84c\x9F\xE1,\xA6\xA2sr\\x861\x86\x8CR"QXq#B.\xA6i\x8E"g2\x81sܰ\xA35\xC4
-'V\x904\xB1\xAEJ\xFC\xC8D9\xD5h\xCFÙϓ|\xF2d\x95\xC4o[\xB1\x98\xDCRC\xF2Rz\xDA\xDD\xC15\xAFߝs\xB8|\xF32\xC5\x86\x80\xC9l\xBC2\xAAr\xAB<\xD6\xC7U3\xBC\x94\xCA,\xAER_\xBDػ\xF5|/y\xA8c&]{U\xBBυ\x915\x9B2M\xE8+=\x9F1\xF5{1\xD4uRIX\xE2\xAE\xB3\xFEoa8/\x86q\xB4\x9D\x83\x81\xAE\xA1\xF8+R\x816\x93\x99\x9FxS\xDFsq\xE2|\xA7\xBC\xD1
-+LbjKB\xED\xFCp\x913\x9CyC\xB6O\x80\xC9-R\x9E<
-\xAD
-\x83\xB2\xF1\xCA^\x81\xC1N\x9CD6d\xE3B\x86\x90sz\xC2\xF3M{\xC1\x86\x98\xE2y0i\xA9r\xA8\x86XX LMlB\xDF\xD2\x9C\xDA\xF07
-\xB6\xE6<\x9Fܝ\xDE3f\xAE\xC1\x8E2"\xF9c\xCA}i\xE4?@\xAF\xAB-\xC9JH\xBA\xD00\x9A6#\xFBۛ!\x85\x9F\x8D\xAE@$3\xF2o4`anoS\x9Dh\x9A\xA7\x81\xF001\xC2eXA
-\xA5d\xA6e\xBC\xEE\x9FW\xF9K\xBAsw\xE5\xF7-\xDBߕ\x9C\xAF\xA5䕕\x821{\xA4\x9F\xA6\x81\xF6\x81~F\xB6\xA3\xFDi\xEB\xBA\xE1\xB9\xDAm!N\xA2\xE5\xE1A\xD1\xFC\x93\xDA\xD0VN¢\xB35؝\xE2\x96o\xDE=\xEBʤ\xEDF6S\xE1\xF8\xEAGʪj\xC0\xBA\x8C\xADm\xA9\xD9\xF8su\xBF\xF4m\xAA}v_\xB4\xF3\xFD\xDCa^I-7\xE1\xC5L{)\xC8\xF1\xA3\x841\x85\xAAO
-\xC1p\xEC\xFBb _\xBA\xD0\xC5\xE5\xF17\xB7s\xD8*7]-e\xC1\xD8Yj\xCEY³U3٨\xB3\xA7T\xBE\xB6\xBA\x99\xF0\xFCZ\xBE\xBF+2e.\x8F\xB3\xDBУ\x8C\xA8\xF1!PG\x8BZ\xD76\xB9\xFCW\xFA0\xA3\xA1d\xF8%4\xD0\xE0\xB4\xF1\x97\xF3\xB3w\xEFIyc\xF7\xEF\xA9p
-\xA4\xA2\xB0\xD13\xD2=駟L[6v<\xB2\xF5\x83\xB2\x8Db\xFBB\xBF\xF8\xC2\xB1s\xD0\x82\xA8\x8BL\xB3\x87\x89V\xDB\xCD@\xDFb\x89\x9D9\xB7\xD4/h\xA4?1h"\xCC!~\xE8r\xCFѐ\xF8 \xA1\x82\xCC\u\x98c\x88A\x996Ĵ\xE2i\xB3\xC9\xF02Bd\x8Di\xA5e\xCD&\x99V
-\xD6^\xC6\xED2
-x\x9AM4l\\x8Cgz{\xFEV;-͜=w\xA6S/\xC52\xA0\xEA:dxᅟ
-\x85LR\xA9d\x81\xD8\xF7\x94\xDCR\x90\x98&Jm\x99
-\xAC\xA3h"\xB0\xDE4\xBBv\xCF.\x80\x86\x93z\x99Fi7<\xE5\xD14\xE65چv\x912\xB2\x98\xD8\xBB6\xC3\xD1h\xDA\xF7
-0\xADbx\xB7ϗV\xF6IEX\xD6l*\xDD\xD1m\x8B\xF0\xB9c\x9F\xCC-\xFB\xCE\xD6\xD1WT\xE19\xA2^\xB5\xBEE\x9D\xB0\xCBr\x86\xB565\xB2.\x8AתjW\x96\xA5j\xA9\xE9\xCF%\xB0\xAA5^9\x83E\xF1\x97WlW\x8A\xD7B\xE4l\x95
- \xE0\x95:\xF0\xAB\xA6:1\x94 \xD4HM\xABqA\x8E@\xD5Z\x95gI~\x95\xEB\xBCRٗ\xC5~\xE5\xB8\xDF\xD9\xC0\xA2F\xFA\xA5#kQ\xFD\xA7\xE2\x8B\xF3-\xE6c\xCF\x97! \xDE\xFD(ۨ-\xA1CU\xCA\xF12J\xAB\xA6*H8\xB5N\xB5\x84sɨ\xF8O|N\xAA\x88\xD45LD./g\xEF\xDE \xBBa\xE0?g
-\xF9\x8ET0\xA7\xA6rN/.ݳ' 59t\xD1B\xD2\xEE\xBAE-\xE9,\x86\x9Eۀ\x82|H\xC8\xEE\x89\xC3\xE1,\xEA*\xEDRT\xA3\x930\xBA\xBA9\xAFB\x94\x8F\xAC|\xEF\xC3\xF5^M\xB2\x8Fc\xCD\xD8D\xC0sxg\xFA>u\xB3\x8E\xA8\x90\x90\xD4\xE3\xE4\xC6C\xF1\xBAj\x81\x95>Y\xF2l\xE2\xEF\xBD\xA9h\x97\x9B\xE9.\x9C\xB9>\xB4\xBD\x80\xA9\x98\xC9\xCD:\xE0>\xF2\xEEi\xB0A\xE2S\xFB\xF3n\xEB@]\xC3k\xAE"\xAC\x92ѲjU\xE1\xE9\x8D\xF8J\xD2\xC4\xB7y\xB9\xCE!\xD0DB'~b\xE0e\xD0˕nZ\xC9Q\xF0@7\xC7\xF2MGK\xE19d;\xB3\xA7g\xB3\xC3\xCE\xA4V\xF0C\xF6\xA0!\xDF
-o\x85\xB07n\x88<\xB3\x94\xC4\xDC\xF3\xE9M\xE8k\x95\x91ƈ\xF1\xEA\xF6\x8AY\xB5-/Y\x83\xC1\xC62\xB6\x85\xAA\xE2\xEE\xD3BrM\xBE \xB4Mm\xFE\x8Cjs436\x9A2\xE9[\xC0\xAF\x8Df\xF0
-%\xCFl\xD9k\xDA\xBB\xF0\x8A/a&߬\xC0\xF5KpOS=b\xC0%Vㅅ\xE0] Ѳ0\xBDO\xB9\xDE\xE5\x80X1^\xF6\xA7D\xD9\xDA%oe`\xE0 *:
-;\xF4@w짮\xF5\x91X\xE5md\xA4"\xD5\xF9~t2\xD72\xB7_ mf'*m\xE1\xAE\xF65\xA2j\x91\xAA\xA8\xEF\xBD\x84\x94\xF5\xC3 \x80y\x89`\xC4\xDBX\x96~\xC3 Z
--\xBA\x88\x81\xA0\xEC\x93kv؊\xAB\xB2\xC6i3)\x99\xE84r\xBB
-C\x9F:\xC1\xA3\xF8\xB2\xF3ր"k\xBDD0L$\xB9\xF7»#[w\xA1\xEF\x87\xF3\xAD
-L\xA2%\xA3\x90\xC6d6\xE5OJgr\xF9\xF60cvs'r\xC7\xFC\xD2Q֒\xF2\x89\xD9\xC5G:\xEC\xA9\xD4W\xB3g\xA4\x8D\xAA\xAE\xBD\xED5\xAC\xEEO\xA7g\x8F\xC2ke\xB9^J\xDF\xD8K\x84A/\x8A)<\xB2(Y\x83\x96\xBFdz\x89\xF0R\xA7n\xE6\x82=\x8F\xF0h&\x8Ctà\xB9\xE7\xFB\xB0\xF5r\xE6\xEC\xC2\xF4\xB8\xD8(AXd\xA5\x84 |r\xA3\xB0\xD3\xD4(>J\x86z7\xB8\xB0\x87c\x93&\xE6C־\xE3\xFB'\xEC>u;X\xB6\x9E\xB4\xFA:\x976\xB1\xE4\xC1\xC9\xD5=KҠ~\x88\xAA\xE2[\xC4R\x903\xEC\xF6E\xB6E\xC6\xEC,3'\xF3t\x8Fg\xBE\xF2\xB66y\xFD\x9Elm\xA7\xFB\xA5\xE4Ϻ\xE8\xA9桚\xC9D\x9B\xEB\x82v\x83le\xEAã-C\xFC\xF5\xD1{i\xC3\xCDpKn\xAA\xAC\xD5*#:\xF1\xEB\xFB(EP\xD0o\x9BV\xBE{\x9D\x95J0\xF2\x9A`xzYg*#\x88
--VRب\x9C{\xB8\xBC\xA7\xBBxH\x83\xFC ]\xDDA\x8D\xCCL\xFD\xC7T\xFC\x85\x98h\xBC\xC37l\x83\xA1f\xE5H0&ى\xACWRMp\xC9j\x93\xB4:;\xFD\x89\x9B\xF6x\x82|\xE2C28\xE6㐏\xFF\x81(\x88&\xF3\xD4\x86\x8AR}CG\xBBN\xE5p$\xB2֨\xEE\xAA҄-\x8C\xBC-\xBB.1C\xAE\x8Ch\x96\xB4(V\xCBeI٢\x9B\x98\xD2ص\xD4F\xBDԺ\xC4F\xB1\xEEٯm\xBA\xDD"\xD85\xAAݝ\x82\\xB5\xAF\xA6R\xAClK\xA0\xB1E\xEB\xCC\xFB\xBFp\xEA\xE1\xA3~3\x94
-hp\xF5\x97\x95[\x8En]3\xEB\xD3ĩ]\x8F{\xA4$\xC6WN2^\xD04Q\x88\xA15\xE8S\x93\xB3'g\xC0y\xDE\xC6)\x93\xCE/\x91\xE5\x99\xC8\xD8\xEF\xF8s\xE7!&q\xB1\xE7ɘ\x84\xB3³\x97\x93\xAD\xFD-
-\xEC@\xCDd\xF9C\x88q\x89=r\x96\xC6\xF3\xFA!\xA4j#GŃC\xB4\xAC\xDAGȡ\xDDM-j\xD6K\xB3\xC6J\\xB4nmA:\x9B\xB1\xE1.\xFB\xB8aypR)\xC6\xD0\xE6\xD4\xF9r~\xF6\xEE=\x91'\xBB\xC4dV\xAA\xDD[\xB9\xB4\x88k\xABHϢ2\xC7"r\xBA#r\xCC\xF2j\xF3\xCE\xD9͠\x8F\xCE,>[\x81)\xB6\x89\xCDBi\xF2\xDBCG\xFB\xDF\xAFf;(\xAD\x96\xA9as\xA2\xC5\xBC\xA6\xC8\xFBW\x86T*ĠK-\xC1\x9E\xF0U\xC73f\xE0ð \xB3\x98\x8Ai\xA1\xC3\xC0,ڢH"\^\xC0\xBB\xB1A\xC0(r&<Ut^\xD7\xF4\x8F\x99\xD1a\x9F;ggnFuP\x8F\x9C\x86\xB9Aw\\x94J\x86p\xEC\xD5\xD9og\xB8\xCB\xE7
-\x8C\xF4m'\x8A\xC6Kc\x80\xEA\xA3\xE8rP2\xCE\xCA*\xA9ݢن~\x93\2FJ'Յ\xB0SZ \xCA\xD6R\xF6\xE5\x9C\xC2\xD9~\xB0\xC3EG\xF1\x9F\xD5=\x89W\x8D\x91r\xF9z\xED\x83(^\xF8'a\xDD\xE6K7G\\xD26\xC3Ťs\xA5B\x9A\x81!EVĄ\x92\x87\xC3gndmt[\xC2\xC9X\xE2$Mtڼ\x80v ?G,\xF1\xE8J\xB8\xA2 A\x935fsi8\x94\xD2i\x87"\xC6b&c\x83\x91\x96\xEA\x86F\x9E\xE3e\x83zVE\xBE\x9C,\x8F`\xD0\x8D\xEB\x80c.-,\xA7\xB2\xE4\xE1-bfmDԜ\x8CWj\xA4\xB3\x9C%\x88\x91\xE9\xC8I\x8D\xB0lģ#H#\x82G\xAD:\xCC,\xCC\xC4<*\xA7\xB3\x8C\xED\x86\x8B\x99\x84\xF3fZ*\xC8߇ג(HetC\xF9x4\xF3\x9Fn\x89t\xFA\xFC\xEF\x9D\xD2z\xB6\xCAo\xDE\xF1\xF8\\xA2C\xB8\x9C\xF8\xA7~\xF3\xCC|\xA3X\xA7F{\xD0b\xD3<\xDE\xC1\x8An\xB9\xD1\xC0\x8D\xE8\xF0+,\x8A\x96@\x96K1h\xA0\xC11\x91\xB4zY\x96K\x9E$\x80\xC5\xD3\xC5\xD6rG$\x83\xA8\xB6\xAD*GN\xD6\xF0\xD4=v\xC2I\xB1m\x84eJ\x83c,\x9CP\xEDĨ%\xC56T
-#6[\x98\x99\xCC\xE4a\x9Cb\xB3m\x8A\x9F\x81\x9CU8\x80-k\x91F\xEC\xDF\xF5\xAB\xEB\x8Ea\xD0C\xD3\xFBg\xADFL\xB80\xD5\xA3\xA2\xB4'cB\x87-\x93p\xBB}e\x97(\x9D\xD4c\xA2f[yqR\xA6R9\x84\x91\xF6\x8E\xA7G\xDCp2qvc
-\x8D\x84&\xC3a\x9F\x89\x85\x90\xED\xD26O\xB0\xBA\x98\xEF撟\xF6:M\xA7\x96'\xB0\xD1K\xB4\xD9ϱp\xAAq?\xC7jqAlN\xB0\x91o \x9D\xA0Pu\xC82M\xEE<V\xF6\x9A\xDCR\xD6I\xD2\xCA\xDD^VI\xB2#\x87 \xC1BE\x97_\xFD\x85\xC8\xD3[\x90g\x9E?\x845.1\xAF\xE9E2C\xF8\xE1\x88@\xEAj+++++++W/B\xA5\xE7\xD1\xE41J\xED"{eJ&6\x9C\x9C}\xECN\xAC\xF8\\xB0 \x80\xA4a\xCF\xE7\xA3Aa\x91"<\xF1\x84?\x89\hnE¦k\xF6+_\xF2D\xC5\xECp)\xB4\x81\xAD\xD9I\xF8*<\xFE\xF8\xFD\xC9\x83\x87w\xF0{#\xA6\xEC\xE4;9}\xFD\xF2\x87\xD7/\x8F\xD9\xC5ㄝ\x9F\xBCt-\x84\xE5\xC5ĿJ\xB9
+.UnEn\x83ɺ\xBB\xA7\xD1\xC0\x8AO\x96$\x87\xB1\x94k#`\xEC\xFD\xE4&\xF8
+g\xA5\xCD\xC4\xF9\xF8ᖽY\xC1\xC7y\xA2ջ\xAB1{\x87\xDC/\xB9\xB6Z&\xA0ڋ\xF0\xFB\xE0\xE9n\xFC\xF0\xF4\xE6~\xFC\xE8,rK\xBD9_\x88\xD1 \xDDZ;\xA3\xAC\xC1\xF1ip\xF2
+\xB7\xCAd\xFE̴\xC8Fcי0\xA9v\xC0,\xEBe\x8C\x8D\xB0T\x8BY\x9B"\xA4Q\xDAk4x\xC2a\xE4y\xA3NU\xB2\x86&ֲ\xB0m^h\7:8G\xD30\xF8\x913v\x98\xA9\x98\xA3\xA3C\xDC(\x94y">\xDD\xCF\xBF\x93&\x80eBC+\xAEA\xAD|V.\xF0\x83\xEA+\x8C7\xF8\x91\x98\xFEvE\xE4\xCAȉ
+\x9FrUL\xE4\xF2\xFC\xA0ƓSN\x96HçD\xC4\xC6Z\x95\x9AM\xB5Z\xA1ó\x89\x81Ok9\xC6ۨ\xFAaO\x931\xCF\xFD
+\x9B\xDC?\xB0\xBB\xF1\xCF\xE3\xC7j\xD6E0`qƍ\xAA\xE2\x8E/\xC1n\x95[s\xBE\x9Cr\xFDƫ\x88gnQđȹ\xEC[\xF3,\x8B\xA0EZ;
+Ɓ\xD1R\xCE\xC9\xF0\xE3\xC0+5\x9Aiƍ\xA8\x8Cx\xD6\xD6\xE1y\xC2
+\xAD\x96Te\x9C!"!\xC4,"\xF85l%m
+s~G\xB0\x83f\x82\xC7iȜ/\x89y\xCCsXd\xF5\xA0<0f(+2rV,Ȭ$\x84`\xD0\xF7\xE0\xC7j\xB0i\x81݀\xCEM\xD3\xD4\xC1[\xE6\xA4\xA8x\x90\x9F\xB9Ʀ\xDCV\x82\xB4\xB5\x92\xD60\x9F\xB4\xA4\xB8\xAC\xC2\xC5w+\xD9ձR\xCF\xC8O\xEB\xC3\i)\xCCk'?\xA1
+\xE8P\x87\xA1a\x87\xD2rգ\x8D"&Ze\xEC:/\xED\xC7O\xB1 [\xB5ǴV\xBA\xF5<\xCEse]\x9Cbi\xBA\xF5\xE4V$\xA2ZƮ5iͰ\xB1̐\xE5\xC2`\x8FLd5?P\x93\x90\xE5ѴjvИ\x81]\xC8b!#\x9E\xCE\xE7F\xF84DrьQ\x93\xA2hUbZb\xF0\xB9͢f\x87V
+kYl\xBF@V\x94)\x81Ob3\xB6\x8B\xA9\xD0\xED\x9B\xCE!\xF5A\xFATh\xF0M\x8E\xDC%Gi\xCC{%\xA1\xF8[\xF6TN\xE3Mga\x9D\xF9g\x8E\x9A\xC2l?}\xB7\x8B\xC2Tk\xCB\xEB\x97[*\xC2^\x9A|\xFA9\xA2Z\xAD\x8D\x92Z5\xE4\xA7⓳S\xC3\xEDF\x8A,\xD9\xB8\x82\xAF\x8C-\x84\xFC\xD6$4ϩ\xDA\\xD4\xDDԱ\xBD"\xF4sݜ\xF3L;Î\xA7\x8F\xC2\xCA\xC5`<\xF8[g2v\xA49\x88\xB41\xE1ۂ\xC6\xEBh\xA3
+f1\x81\xA2<\xA6\xB2谖\x88Z+%%$H\x81\xCFN\x9En\x85\xAFJC\xA5\xC3OkƋBp]M8\x80t\xB1JD\x85 Pz+҆\xC0\xB5c\xDB
+^\xBB\xB9k\xB5}u\x99v%\xA0\xA6҈\xE0\xFE\xE0\x81nh7Ω\xA5\xC6O\x88hg\xF2\xEEb\xFA9C\xBCW刺BޟE4\xEC\xF87\xFBA^1+\xF0\xE5\xDDU\x9E\xAD]6Un\xFD]\x98\xD5\\xC9\xE0 \xA6\xFFt\xF4\xA5\xCB\xB7\xB2\x8AD$1d\x8F2x2"S\xBE\x84\xBC`\x96\x86c\xC8ƭ'\xA2\x85,@\xEF\x82*\x9D'0\x8C\x8A\x80
+ٜn\x973P9)&\xB5\\xE09\x8B*\x94oZ9\xACcŮjy\x86\xA5)i!^Ⱥ\xB2\xB6\x803\xFFT\xC0\xC2\xF0Bdf\xB3\x92\xA2TV\xDD&\xE5\xFB\xBE'*m\xD5g˝7\\xAD\xC4\xCB[\xADS\xE7\xECX\xA3}\xFB\x88Ն\xCAVh\xA0\xDFc\xA0\xCB\xC8\xDDy5\x82\xE1\xEE2\xE1X\xF0,\xF0B\xB6\xD2\xA9f\xC0*\xA9J\xD3sĩ\xC3ȴȸ+\x83\xA0\xFB\xC8\xE3֍W\x8FX&U+R5\x85\xA36 Fo<\xE8p\x89\x8D)7\xE7UG\xBA\x84\x92\x8E\xE7: \xFEW\xA5\xAD\xEC\xD9\xB6o\xC5\xFA\x9C\xBC\xEF}\x9A++\xA8\x83i\xFBw\xE3\xCD\x9D]!)\xF2\xC0` \xC6\xD5a\xAB\xE0\xBEB?T1\xF9F鍶\xCC\xF8I\xB2
+\x96 \xFF\x9E\xC0\x8F8\x9CrW\xD7\xD8ԫ\xDD\xE9\xC0\xD5\xFDVE\xF7\xBD\xBA\xCC!\x8D\x8EH\x9A\xBA\x84\x80*TZu\xB2Q$#\xC0x"\x96"S\xD6\xFD\xD2Tx
+I\xB2Չ\xC2U\xCE\}\xA6J)v\xB1Q\x98\xEBbxC"(Tu\xA7\x80}\x92i\xECմl
+.o\x98sPm\x82\xAElU\xE7Z\xC1\xA0\xE3\xD22ߞ\x8E\xAB;Rw"\xFC\x99g宸\x8B=i\xB0$\xA2\xAAg\xE8g\xD0\xC5k:^\xB9\xE0\x9AI<\xB4\xDCsR3ϳ-\xB4+1b\xE1\xEE\xF1\xE2\x96\x81O8^$\xE2\x99Lu\xAEŜ\xA1\xE7\xF5\xC2Ɵ(_\xC2u\x82\xA4\x99\xB0\xB0 0\xED\xB93m\xDE\xF1\\xDCO&\xF7\xEF\xBAצ[w\xA6Se\xADZ\xF4\xBE\xE8qS\xFB\xBE\xEB\xF1\xD4_\xF1\xBAǭ\xFC\xF3\x8Dϟo|\xFEo|\x9AX\xFF\xA3\xBC\xF4\xF1\xFF\xA1\xDE\xFB\xECD\x94\x9EW?՛\x9F>\xF30VT\xCE\xCDĜg\x97\xAAX\x83e\xCD\xC4?\xC7-\xE7\xA9e\xF9\xF6\xE4\xAF?\xFC\xC8N\x8F\x8F_\xF4\xAD\x89&\xA6\xDCw;8\xBE\xAE_$<tWgP\xEE\xA0\xFFʅ\x8D\x9A\xC0\x87\xFBw\xFA\xF8\x948\xA4\xB6\xE9w0\xEC\xD1]\xB0%\x80\xC9nw_++\xE5\x9Fn"\xFC\xAB\x9E\xD8\xF2\xC0\xF6\xCF\xFE+8A[c\xDCe|+j\xFD\xB9\x96k\xDB0Tr,\x84y.\x98\xBD<\x9D]ŵ
+\xAE\xEFZ\xAE\xE4\xFD\xDA2"\xA7A++
+ۛ\xC6\xC4B\xBE\xBE\xABY\x82|
+9\xB4
+q\xC2 \xB4\xDDy\xF6\xDF$8A#\xF5k`\xD5ĉHh0 w\x822\xEE\\x8C\x9B\xFEc\x8C\xEDS\xB4\xF1\x884\xA3Q\x8C}\x94\xA0\x9DF$\xD1u\xAB\x81$%\xCAHё\xF3\xC1\xEE\xB67\xDD/5n.wO]=\x82\x81\x9F\x9A\xC0+W\xEF\x98f\xC9\xE22\x87\xFB_\xC1p\xCC\xDD\xE8\xD6M\xDDN\x9A\x84\xB1\x83[+ٔ\xCD8\xAB\xEE\xF6\x98\xB7\xA2\xACw\x9C<\x81Y$\x84\x98\xCE\.\xE9]\\xA3\x80\xC4 \xF1\xA5\xF9\xB3\xAC\xB0!ne\xAD\xCF`\xA1\x94\xCFƌ\xE2Ky\xFF\xBA!a\xB1
+ZhȾ\xC0m\x81\xCA3\xF9WKzA\\xF9\xB8\xA7\xC4u\x91x<&\xE0,\xB0T\xD8Q\x80]?]z\xEEJ\xB8h;\xB4m6⦆A4D\xC0\xC5I\xB989Gr\xE713\x9C \xD5\xE1+)\xA5
+\x94\xF0\xB1\xCEC\x9FE\x9C\x86=\xEFE\xD3\xD8tx6\xCFf\xFD0\x91ɨ\xFC\xF1o\x9DH1|ԧ\xB0Bzh!x\x9E\xF8\xB6\xB4\xD2,\xB6!A"\xCE\xF1\xD1"|O'\xE4Hrà\x80\xEB\xBB\xEAm\xAE\xAD[4\x95\xE6a{e\xB9\x95\x9B\Rf\xAD\xC8D+@"B<J\x8AbY\xF5\xE6\xB2@t\xEAG\xA9\xF7\xE7\xF6\xE5\xD4U\xF2\xDC\xFC\x89$\xC68\xFD\xAA\xA3\xE4隝v\xBDkz\x9D[Խ\xBB\xBEn\xDC\xFE6\xE3\xE9\xAA0ϼ\xF4\xC2\xC0f>;\x99xA\xF5D&\xD2Ot$KX\xB2r\x91\x92\xE6ᦋ\x85zQ^\xB7f\xED\x83\xF3\x83\xAC9\xC6A@em\xEEH\xDFC\xE2\xAB{xn+pr\xBF\xB5\xF4\xCB:\xB8\xFB\xDD\x9E#\xD3S|\xA1\xCAh<Fi\xC0/\xB92U\xEA\xAA |\xF5\xF2\xD5=ٙ
+|\xF7\xD0l(\x96\xE9\V\x98\xB7+%U\xE0\xA54\x807\xC4|\xD89\xAF/\xA5\xD9+\x8A\xE1\xDB-Ь%`x\xC6\xF9f
+>\xF7͋$b\xE9\xF5\qH\xBFS\xE1/+\x95\xABC\xADs\xAFqy\xB5\xEE\xE2P\xFA\xF2\xE7\xC9ڐ~Qe\xB63\xE5\xB4BI\xE1\xB1#"X\x9D\xC6-]\xA4\xE1q\xF5\xCA\xD0\xE8\x8A\xF0z˿O煪6\xFC\xE1`\xA5b\x8A\xAC\xA1\xE8\xE72\xD1+M\xF2\xB2Ɍ\xB4\xAC\xA3hL\xA1\x94Tʌ\xD7$Y\x82\x9D\xED{<\xEE1\xEAk\xBB \xEAoR\xC3\xEF"\x9FJ\x80\xBFN\xDE\xFF\x96\x81\x9Ee\xAA\x92\xBE\xBEJ\xEB?ݘ\xF8jCPoz\x92U[
+/\xB36\xE3\x9CR-\xF0\xF6\x90W\xC1#\x95*E\x85\xA2\xF4\x9A 63\x8F\xD5\xE3Oի:\xB5=\xCE0u A
+ƣ\x93\xACP){n\xE0\xC5\xE9\xAAۣ\xBD\xC0=哚8cز雷\x95\xE6ee\x85\xE8\xE2\xB1c\x8EI\xCC\xAB\xC8OU\x9Cu<\xAFs]>\x881w\xAC\xA2 \x8D+Տ\x9E{\xB2\xD4\xF4^\xE1p\xA9\xA6|?_\xFA~\xBE\xF4\xFD|\xE9\xFB\xF9\xD2\xFF\xF3\xF3\xA5\xB9Q\xFD+15\xE8\xDFO\x99\xBE\x9F2]\xF7)ӥ\xD1Ƃ\x88(
+\x88E8&ĉ\xD3Ubd\x80Y3\x8A\xA7\xD2ލ@\xCA\xEA\xF2&\xA1\x83\xA1@?n\xFC\xFC\xE93:\xDC\xDF?\xB2\xD5/\xC3f\xE3\xCF\xCCv\xF2h\x9C\xF8\xA4&\x8C8!\xB3zi~]$\xE6&;Hj\xEA\xAD\x81\xA3[\xC2!\xC6 \x81ªF\x87\xFCEN\xCC\xFC\x8EJ\xFD\xB2\xAC\xBE\xF5?PK
++\xCF"\x92\xE3;!Ek\xCD\xEB\xBD[>q+\xE7\xD6x)\xA2'P(}G\x9B\xB9D=F4r\xBF\xF0z\xA0\xB5c\x85C\xDF\xF1<\xB6\xFEY1x٢L\xB5\xEF\xDC[\xB2͊\xAC\xF5\xE3pNz\xA0Db\xD6E\xDB\xEC\xE5T\xA7fs{t\x88!\x94d<\xE0I\x9E\xD5\xEB\x89(\xC4ϝa\xE9\x9D\xD0.\xB1\xA1"\x84\xF9F\xA5\xF8\xEE|\J\xF6\xDF\xAB=(f\xE4\xA5G\xA0H'\xF6\xA40\xEA\x91\xE7cf\xE6\x97#\xC62\xF4\xB1\xDCy:\x8B\xE2\xE5i(\xA6\xB5_)0\xF7y\xB8\x84\x86Phޗx\x82\xF3<N\xF4U<Ө\xBC*\xB3\x8BI\xCE\xBB\xDD"\xFE\xE2\x80\xFB\xA0Nx\xEF\A\xD0\xE9B\xBB\xFE{\xA3\xDE[\xDC\xCD7+\x88\xE8E@;\xB5\xF4\xB6\xAEų\xC1U\xA5\xAC\xF4\x90rO\xDB\xE4\xE50\x85X\xC4 \xA0\xD3\xC3b\xA2p`k\xB6+){kI=LJV\.e\xC1c\xAFc\xA3L\* \xE75]\xAE1\xB2T\xDA\xDF|/\xADm\x9D\xF6\xB3
+\xB1\x80\xB9\xBE\xAE\xC2\xE9J{\x9B\x8Aӆ\xC8}l/z\x98\xD9\xF8\xF3\x8B\x98Ʉ\xBA\xA9ƯEW#\xDB\xC1\xF2\xAD}\xA5h\x8D\xDE\xC8o\xA1\xA0Ö\x8E}\xFA\xE58#\xA3~ܬA/\xC4n\xC5\xE3F\xF1Ъ+\x92]\x972\xAF\xFA;\xF4\xE7)?\xA81\x91\xFCBʭ\xED\x98>,;yz)ў6\xE67ai\x8F\xF5Ƕ\xF6\x8BaiFI\x8Eg\xBEO\xB4E\xDB\xDA\xEDemգ\xA2\x9FH>'EN\x9F\xDA\xE1S\xD6;\xBE\xD0\xA5\xC6\xA38\xC2%\xDFV\xCF)++nܟlpF\x89\xB5'\x8D\xE2!4%\xD74P#\x8FG\xA1\x8A'!\xF7\%\xC2j\xCF:\xF4\xE8\xA7YȞ\x8C\x90Ju;\xF9\xA1U{\x96W\xE1\xDC\xFB\xE8>\xB6\xEB\xDD\xC7\xDBN+\xE0|N#\xF9z\xC2X\x8A!\x96\xE5G\xA3(^C1\xAB\xFDJ\xB9?f+"4\x84B\xF3\xBE$\xD8(\xF1TA_\xC5s\x8Dʫ2;\x99쬩[\xA0\xFB\xC5\x8FA\x9DP۹\x81\xA0Ӆv\xFD\xB7F\xBDW\\xCD`L``ӦU\x8F\x936\x9F\xD1bЈ\xF8\xAC\xCF\xD53ɋ\xAD\x99\xE3vRV\xF6\xF7\xFAE$\xEE\xDA\xD4e\xA5IN\x86fb\x94V,\x964Yϔ_{x
+\xA5
+\xE5\xB5\xED\xEA\xA4:\x95E\x8C\xA4p/\xB4Y:i/\xEDgp]\xC5\xF5
+\x8E1m\xF3\x99\xC0\xB9\xAB\xA7\x93 W/ݒ\xB5N.N\xA3b\xA4\xBFe$\xE1\x83\xEA.\xAF\xF4\xBA\x99t\xBFچoj_\xA0\xD8
+P\xCC\x8Am*sQd\x98&":K\xA7\x96Bw#\x9C\xB5%kp\xD5D)+=\xA4\xF2\xD8gjb\x9Ef@\xC3\xE3r1Q8\xB0\xCDՕT\xA0\\xBF\xB5\x94g%\xDD\xCC.\x972\xB3\xE7ǩ\x8EQ&.m\xEC\\xF3\x96N\xD7\xD9T\xDA\xDFl\xBB\xACa^O\xFB)\xE6wa,\xF3\xD7U8[yoS\x8B\xD90\xB9O\xED`\x86i\x8C?\x84Ejԝj<+wI\x90\xFD\xDCʽe/\x96ݞ2\xBD\x96h\x87\x8D\xC5]X\xDA\xFD\xA9m\xD2bX\x9AS\xA9\xE2\xB9\xA0\x90M\xD3^Jqu\xE7D\xF29r\xFADM/i\x93\xFFJ_\x94\x8FT\x8C\xE2\x97z[\xE4\x90öh\x9A\xAF\xEEvo\xCE6\xA9\xE0\xBA\xDD\xDAM;\xA8\xC0r3\xAA\xF4\xF6\xE9\xFE\x92t\x96$c\x8D9\x9B\xB7<վ\xAA}\xA3=\xBA}8۹\xA1\xD3?\xB2n\xEFƸ\x88l\x84ꩶ7\x88\xE4\xEF\x9B\xDDl\xAD\xE4\x8AR\x9D \xE8<l.\xE6\xD6J\xF6cc\xE2\xC9N^\xCD.K\xAD\xF9\xEC\xC1\xAE\x99\xE6w\x82\xFDN\xB0\xDF \xF6\xED\xEC\xAAk\xBCQ\x8E\xCDxS4\xBB\xB7U\xEF`ڂhw\xD1C\xCEIQk\x89#.\x9Bq\xB2\xA0\x95\xD5
+\xBFfO\x94\x8D
+\xFC\xF0\xBE\xF2\xE3\xA7\xCFpV.\x9F\xBB\xE9k\x87e\xB1\xF3\x97#\xCB^\xA5\xE9\x99p\x80C\x82;z\x9A\xB5-@ϟM\xED;\xB1=\xEBAC\xE9)r\x86!=Hfޫ,\xB1\x89\xE5\xCF\xE4\xE9k\x8B\xDA\xC9?PK
++trO\xDFk@\xE5*\xD5\xCB\xF3O\x97\xE7eh\xF6\xA8\x96+癣)6L\xBF\xCC\xC4\xDCwZqd02n\xB0LЁav\xE6;\xBF\x9A4r\x92M\xB8\xD2H\xB2\xC7\xE0\xDA\xFD\xC9g\x84\x91XԨ!AKrM5\xF6x\xAAxroȕQ"\xA3\xF6\xACC\xEF\x9E~z* \x89Pj\xD8Y\xF7\xEDX)\xB4\x8A\xA9p\xE6}t:\x8D\xDE\xC3M7\x80F\xEF\xF6\xB4\xC62Gy\xD4\x9F\xA2q\xDA\xCC\xDCrխ\\xD8\xC0\xA4\x88\x9EA\xA1\xF4m\x96\xF5\xD18`(\xB5<\xA3\xA1\xD6L\x8E|\xC7\xF3\xD8\xE6g\xAD॓R\xF3`\xC5\xD64\xCB+2\x88\xC3%\xFD\xE9\xA1\x89\xD94m+\x93I\x9D\xBA\xAD\xDB \xD0!FP\x92\xF1\x90[\x94x֯'\xA2\xBFvG\xA5B\xBB\xA4\x86\x8A\xD0\xE35\xC3\xA7\xE0\xFB\xE0R!\xFFJU\xED\x91pEYzT\xF0\xD9\xD4\xF2\xA0\xFE\xF7\x95w>\xA7!|;a,E
+\xCB\xA3Q\xAF\x86\xA1\x98\xD7\xA5\xA4\xB2\xA5B\xA1\xF9@P \x86\xCBx\xA6`\xA0\xE2\x85F\xE5\x9DLv6\xD4-\xB4\xFD \xA0A8\xED^C\xD0\xEDA\xA7\xF1[\xB3\xD1/\xAEf\xC0%0\xB4\xF9\xD2r\xC7I\x87\xCFi\x95LD|>\xE0\xEA\x89\xE4\xC5\xE6\x82L\x89q;)\xAB\xF7{\xFD,wc\xEA\xAA\xC4$'Cs1N\xCBD\x9A\xACg\xCA/=<\x8D\x84҆\xF2\xDAuuR\x9B\xC9"FR\xB8ڬ\x9CtV\xF63\x9C\xAE\xE3z\x81Ø6\xF6\\xE0\xC2ճ锫\xA5\x97n\xC2z7\xA7Q1\xD2\xDF1\x92\xF0\xE13\xF5\x93z\xBDLzXm\xCB75\xACIl\x8D$f\x91\xC46\x90\x94\xD9.RK3\xBD
+D\xA7\x9E\x82u+\x8E\x8D\xB5jr\xD5B)+}\xA4\xBA\xBC_O\xD1(\xCCc\xA84<.\xB9\x85C\xDBG]I\x95\xC9\xF5\xDB+\xE9qV\xD2\xED\xEBr)s\xFD[{~\x9C\xEAe\xE2\xD2V\xCE5o\xE8tC\x91ͤ\xFD\xCD\xF6\xC9\xD8\xF5l\x90\x82}\xB82=\x85\xF3\xB5\xF75\x95-\x93\x87\xD4^\xCD0\x8D\xF1\xE7W\xF1\x90ug\xF7!\x83\xAB\xB1e\x8ClK^+\xDAC\xFA\xC0"\xFD\x93r'\x86\xFDC\x89\x81}\x87j\x93\x8AQ?m\xF7\x85Wr^\xEB\xB8Q<\xB2\xEE\xF2"5\xA4̺\xEC\xFFY\xA9\x8E"\xB2\x9F[\xB9\xB3\xE5ê\xA3S\xA6W\x{DC39}\xBC
+K\xA2?\xB5\xFDX\x8CJ*N\xBC\xF0}\x924\xB1m\xDAKịF\x9CH\xBE$G\xE8\xE79\xED\xE7\xDF\xE8\x8BR㑊Q\xE1Jo\x87r\xA0\xFD\xF1eo\xDDmù\xC2v\xEA\xB4\xF7\xF7\xFC=]\xDF\xF2/\xAA\xF4ި
+\xFF\x89\x9D\x91X+\xCE\xF6\x8DLm\xA0\xEA\xC7\xA2\x9B\x82\xEA\xDEM\x9B\xFE\x91Y{s\xC5Ed\xC3&ϴ\xBD\xDF#G\xC7\xDB\xDFY\xB45Q6\xBBAн\xDF^\xB7\x9DE\xC4\xC6\xC4ӽl\x99]:\x960\xF3\xD9\xFF\x8233\xCD\xEF\xB4\xF9\x9D6\xBF\xD3曢\xCDu\x83x\xA3̙'\xF0\xA6\xC8\xF3`W\xDEß}\xEEc\x82\x9C
+\x92\xA2\xD6\xC7\\xB6\xE2dI+\xAB\xA7~ݞ(1\x9E\xF8\xE1}\xE5\xC7O\x9F\xA1Z.\x9F\xB9雂U\xB1\xF3\xF7\xAB\xEE\xA4\xE9\xA1n\x88#8z\x9A
+\xD0S\xC1\xF3\x87K\xFB\xDA\xC3F쁅@\xDFz\xD0\xD0Gz\x9CcHO\x82\x99\xF7Klb\xF9\xD3t\xFA\xA6\xA1~\xF27PK
+++1u\x8E\x85\xAC\xB1\xD3\xF7\xAE\xBBX,\x9Cʼn\xB1\x91ۿu\xC7bBߺ4\x8A8q|\xE1[\x8D\xBD\xB3lu\xC8\xE2\x8F\xB2mh\x90c\xC5\xE1\xA8nM\x851&\xD87\xFFIB° >,\xD1\xEFx\x8E\xFD\xC8C\xB59aH\xA3#\xE7\xD49\xBC\xFF\xF9\xE8+\xF7Àq\xF3Z%\xB5w6\xA31\x8F+B$\x9C\x98\x84\x93\x92p$ \xD0{>\xC5a21\xD0\xF4pd5:\xE0\x86b\xF6eceQ\xAA&^-\xC5ݯ\xDB\xCE\xD7L \xB3\x91\x8C#\xDA\xE6/L\x9BWHwC\x9D\xAD\xA0\xA9\x9A
+\xFC\xBA\xBA\xA5\x9A \xBF\xCF\xFB\x9F\xAAI\xA7+\xC1\xBD\xF1\x93R\xAB\xB9\xF1&\xF2\xCF"\x82ˀP\xBF\xA2/EY\xD8\xC9\xCC\x8BKq\xB7T\xE3\xDC)<\xA8\xFA8\xF2S\xD0k\xF5\xBEFW\xA0
+:Е\xF9oϾ\xAF=\x84\xFB\xB2\x82y#\xCA8\x9Ec\xF1j\xD86+~\x97bѠ:\xD3&\xF2B\xAB\x8D-ih\xDF\xCFH/@\x99\x97\x81\xAA\xD4G"B<b\x81\xA0\x98R,.\xB7\xBD\xF4\xAAW\x88l\xE9^\x85ZV->W\xE9p\xC1i\xE4,\xBD\xD5\xED\xF4\xFA\xB7w\xAD~\xF7\xF6)
+\xBD4\xB5,\xB5\xF3V:\xF2\xD9ͼ\x84V\xD1\xCA3\x8Coh\xE3\xA4Oe\xE1](.\xF2\x86\x9Aa\xFC\x91\xE6*q?\x87\x85\xA9\xB0\xBF\xDA^;\xA8\xCAs\xA8\x8EWh-\xBD\xBE\xE8\xEC\xB6W\xB4\xF7q
+\\xACmJuW\xD7Ϯ\xB6y2E\x8D՜n\xA8\xAC\xD5ˋDf\x8AO\x8AL\xE0yl\x86\xD9\xB5\x85\xE0\x91\xA6Ƣ\xD5~\xF7\xD1O\xD9戈|\x84\xD2NrZ!\xC3H-\xEF$&\x98\x94\x96ܙM\xA8\x93\x8E\xBDT\xAD`\xD5_\xC1\x977\xF1\xA2B<\x9A1\x8F@&
+\xF9rHD\xD2ag8H\x81\x95\xF2\x8EL\xA3$e\xA8d\x99[\xA9,\xA4T\x9Cԃ\x84\xBCn\xD9bǝ\x92Hw&\xBC\xA4\xE7`M>pK@\x8Edņ,4T\xF0G\xC4\x8ER\xCAk\xA1Q0'\xA1\x99驉q \x8F\xCE|\x8DgO!\xD2 \xD10/\xB7\xE7\xD1\xDBm\xCAx +Y\x8Co\x8C\xE8\x9EN)T@\xA5IGj\xA8,Z\xEC\xC4PeIҤ\xAA8u\xF5Pc\x95\x88\xA4\xD0bLJ\T|x\x91\xEA\xAE\x96P\xB3?\xFAl
+\xBCJD\xAD\xC9H|\x934^92\x99\x9F/W\xB3\xEDZ"B'\x95 8\xAA\xAA\xF1\xEB=ԫ\xFA\xBDl\xF5\xD3^t\x92\xE9\xE7\xEBi\x94\x80#5<vr\xAA\xAA'\xB0\xC7*]\xE3\xFA\x82\xEAI%\xBF7\xBB\x85Ŀ¼\xCDvHq\xB3qm\xCE)\xBA\xC1\x81$\x8El}\x9D"zy\xBBk*C\xD6~\xE1y\xDB\xF7h(=6\xE6QH\xDF<\xEB\x96\xE4>\x91:\xC6kEYo\xC1\xA9ưV\x87<\xFF\xDBjc\x98\xB0\xE9\xA7ھچ\xBDf\xEC\x8D1\xB7@Ϸa/\x86\xD9{a$\x82\xE1r\xE64\xC4\xCEXkR\xBA=w+S\xE5E\xBE\x97C\x98G\xB9\xAC\x94H\xD1_%āMM\xB8`fMԘ\xD8q>\xD4gU9\xE2\xF2o\xDE\xD6V뾿-\xF9\x9Ev\xF5\xFB\xDB\xF4\xF3\xDB\xF3n\xBF߽\xCE\xB1\xBB\xF2\xFD\xED "\x9A\x94\xDE\xEB\xD1]\x9B^\xED1\xA3p\xBBGC\xBE^\xF0y\xBD\xE0\xF3z\xC1\xE7\xF5\x82O\xC9-\x99\xD4}\x8Fw|\xF7\xAF\xD7|^\xAF\xF9|\x8Bk>\x95Q\xBC$ӈ\x8D\xB2\xCC\xC1\xA4\xD3x\x95(aڊ\xA6K\xE9\xD9&\xA0\x89
+\xF9\xD1X\xA0\xF7\x8F~y\xF7\x9E\xD8\xEA\xE2\xFAƙ{\xEA\xC0\xC0vͽy_r\xEC iͷ\x92G\xB7\x84C\xEC&>\xE4Y\x9A:\xE4\xBFrb\xE6\xB8\xBA\xF8\xDE\xD8\xFBPK
++\xC2H\xF1\xA1 F\xDFV\xC9\\xC2P&K\x85ҫ3\xB3\x99\xE4l\xC0
+\x87\xFD\xE2\xF7A\x93ٻ\x82\xA0ׇn\xF3\x8FVsP\xAC\xE6%0\):\xE4$\xED\xF2\x9DmA\x83\x98/\x86\>\xD2|\x91E\x90\x837\x9B\xF2\xBFWOQ\xEAnl-K\xF3$hM\xB2\xE0\x80\xE1\x8D"\xE99\xF8\xB9\x86\xC7q$\x95&\xBFvU\xD5碰\x91+4\x8F\xAD\xD5MX9`\xFA\xB1)zѸ\xB2\xA4x$Kߧ\xB9\xA2o\x8B\xF6\xB2\xE1Q\xB5K_\x91"gH\x95\xFD)+\x9A\xDF\xE8\x8BB\xE1+\x81qc\x89\xDB)\xB6\x96\x98Ez^\xC0vk\x9Dl\x97\xD6\xCBnga\xDDSZMkC\x99\xBDi\xD4\xE0;z\x8CS\xD6h\x83u\x9E\xBFԇ\xB2\xF1\x9CzkmoB\xDAo\xDEJx\x89\xAFs\x95\x993~Ѣ=g\xB2n6\xAD^\xF4e\xE7L\x86\x89\xD6\xC9lo\xC7ɗ^\xDBt\xEC\xEE\xEF\xE8;9\xF2\xAD\x{17CD5E}\xB7ֳ\xB7\xF5\xAC\xF1G\xEC>\xD6\xFA\xAA,}{zPт\xF6\x95[[o\xD3"\xD0'\\xB4\x93tE'\xABfd~\xC3d4\x99j\xF8\xE9}\xED\xE7O\x9F\xE9\xDAZ=u\xB3\xBBki{\xC3.\x9B\x80\xA2\xDB\xC7\xC7\xC4i\xF4b\xD4<\xA7\x80\xDB[\x90\xB9\x88\x8B=0
+H\xF7\x95\x86teɵ\xD7Yj\xB3\x97\xBD\xEC\xEE\xDB8\xFAPK
++|\xE6Z\xF8_`\xFA\xB6\xAA\xA4\x99\xE0Ej\xA3ú\xE5\x82?\xF6\x9DQ\xD7\xC4L \xC6װ\x8B|\xCF\xCF\xFEbM\xA8F|P\x8Ev\xE8\xAF\xC9_\xCEQ\xBB\x8D\x9A\xD0O\xFF\xE2U\xD9\xFB\xD0J\xFAs\xBDb?$\xA8}\xDB\xF8\x99s\xF8\xED]\xAB\xC5\xFB\xBC%p\xC3/ǍZ\xF6s翠M\xD1R;@\x96\xE05%ڸk\xCD|\xF7% \xBE\xF1\xA5\xC5
+\xA5:S\xCCv\xF4M\xA6]в\xF1-\x9A\x8E\xEFѨ\xFB\xCBu\xF7!\xCAjoH\xD3\xF5F\xF8\x84u\xB9\x83\x9Fg\xD8\x82\xF4\xC84\x90\xA8\xD4¬\x90\xE8\xCE\xF7\xC17\xDBk*E\xE3\x84t \xF4l/x/ \xA6#P\x95\xB3\x9E\xE6\xB6\x84Ю<\xABw_\xD64\xC2\xEE\xEC \x8C\x99\x8Cb\xFAB
+\5s\xC1,\x9Fm\xF2\xD2֫\xF677\xA1\xCEX&sT-\xA8\x9F&\xE2a\xF3\xB8\x82L\xA5{\x91\x9A\xAA\xA3+\xDDV4Xϸ\x82)Ď\xDE\x87\x8F\x99\x95\xAE,\xDC2#
+ZL\xF0\xFC\x9F96\xB1 \xB9\xCE#u\xE3\xE9\xC8v4"\x82FB\xD0`\x95
+\x85 \xE8{\xE0a'nh\xB8\xB3+ч\xAF\xED'\xAER\xEC\xDF\xDE\xDEe\x89\xFD\xA0\xFB6@
+v\xEB\x83\xD3 JD]\x9D\xCC\xC8E9Je\xCDE\xB6\xD5n\x80\x89\xF0d<\xA5]\xEAI$u\x9A\x8E;g줭t)2/\xE0/,\xA6\xD2 \xF4%\x95;6v\xB7Q<\xD6AKo(a?\xAF7\xEB\xAC\xFD9\xCA\xEC\xF9\xD9t\x99\xFB\xD2nCZ4\x80\xA6I|\x807`\xF3(\xDE+\x9ElgI|*<\xCDAE\x9F8\xB3\xA7\xAA\xF6d\xE4\x94
+\x94\x93\xD1e=\xBA\xC4``\x81k3t\xFD'90\xC18\xC3+\xD5\xCEK\xD7J\xAA\xF9\xF3eΉ\xB0\xD8m\x9A\x93 o«\xE0[\x9C\xD0[\xD0G5K\xC0Ke\x88\xE2\x8Cl\x8C\x92gd\x85t\xF4t3\xEA\xC7NQ\xF4\xA4Ob\xAD\xDE]w2A\xFD\xDAe\xC1\x8Bj\x89\xDF\xC8
+pS\xE6\xA2\x9D\xAA\x9A\xE1^~\x8C\x9C;\xB7 T\xE8\xCDq\xA4'\x98l)
+a\xF7\xC7\xC21XN+\xBF\xC3\xA2|\xA4\x93S\x9D$N\xE7\\x98lqb!>\xBCÄriR\xF0l\x9D\xCF>\xAD}L\xD6v[\x90\xA6\xF6\xFF\xB2\xEB\xDB\xCD\xD6v\x95\xEB\xA3h_g\xD2sW0\xB3\xDF\x99p( \xA5\xB2CD\xDA\xB6X\xFB6{P Ko\xB7#SƉ\xEB-\xCEPY\xA1b\xA8\xD6d\x85\xF8dCP\xE5\xDF
+\xA7\xB4\xB7T\xADp\xCD"\xE6,\x8B\x96\x86XQ\x94:/\xA3pmr)gv\xC2\xBA\xA1\xBA%\x93g"cD\x8B\xC7D̙.}\xB6&\xC9\xFE\xF1|\xD2\xF1\xD63j\x9B\xC2\xF5\x96\xFA\x82\xC07\x9B\xEB\xA3d<'}O!\xF82./ŋ\xBD|ٌ\xC9ñ\xCA\xF1q\xB0.\x83\x99(S\x83\x9E\x98*v\x92@\x85Fv4\x84\x89\x95E\xD0\xC4w\x95\x99\xA7F\xE6x\x{250D3C5}\xCB\xDD5L1\xFC\xCF\xF1'b#\xE5\xB5;C|\xD2H\xDD(#1!uiঈ\xA4\xC6ړ7\xBE\x98\xA0\xFC\x99у' \xA7\xF0\xAET\xBB\xE5hM\xAC&\xF4\xC7Jh\xE9~\xE1R@\xA8rDc+\x94F\xB8k\xB9PNp_-\xA5&\x810w\xBB\xDC\xDC\xF5\xD1\xE4q8\xEC>\xFC=\x95\xC3gu\xAF!\xCFH\xF921\xBB潼\xF3i$\xD7+`Fv\xB53
+k娙?\x90\xCCc&ЉY}e\x8E\xBF\xC7ŻFX\x89\xCCl\xD9\x8B\xB9k\xA3\x93\xFCܥy\xAE\xDDhђ\xAD\xF3\xC8èE\x86\xC5\xEFz^4\xCF.И#5\xED=_\xD2\xF9>\xB8n\xB8W3:o
+ \xDC2\xEA.\xC4߫Q\x82D\x99\x9D\xA9\xBFSk\x81\xBD\xF1h2}x\xECM\xC7\xB9\x81c\x8FQ\xA3p\xE9\xB7\xD0\xDCzI\xC9\xCC\xB2p?b\xBD\x95Eh\xE6\xFA\xF1ۍ\x8B2 \xA5\xB6,\x9Bm~\xB8\xCF\xBD\x98\xFC\xF2%+\xA8\xAD\xC5\xEA\xC09\xF1\x88i\xF5Z&C?\xDFǛ\x88=\xFB]\xC7\xC8Z\xE5ʞ\xF5s.3\xDD\xFA\xEDVr\x84.\x86YL\x87LՏ"rc+\x96X҉5c`_J\x85@xN\xEDh\x82\xB0L\x90})\xA8{Y\x88\xA5\xE0\xA5n,\xC5=\xA4\xBFw\x96d<\xB0\xF4\xF3Jm\xCAJ\xD6$#%\xD9\xF5\xE1"V\xBC\xDDY\xD1Ӳl\xFD\xB8 \x90a;\xCBsqs>\xA36,\xF9^\xCBeԀE\xF6B\xC1\xF2La\x9EvD\xECk\xECyьD\x92J\xAByyq\xA2v\xFFM6/\xAEO/\xA3G\xED|\xEF\xF0\x8CPɔ\xFF\xAE\x81\xA3\xB3X\xE3b\xCF\xC91\xF3t\xB2v|r(\x99\xF3\xDF\xDA9*Ah-1\x9E\xF8|F L\xEBb\xB2w\xBA\xCA
+FI\xEE\xD1P\xA5"⣁su\x95-z\xD4\xCE7z\x98\xD2[\xA0\x94\xB7\xB6\x94\xA8]\x8C~\xDE\xF28\xC9X9\xA2\xAE\x8A\xC5*)\xB5rO\x99\xC5@(\xD3B%E?\xF7\xEC\xEB\x89\xDFM(\xBC\xD3үB\xD1\xC2E\xBDU\xDE\xCE\xF7\xD5\x9Bi\xA6\xBD\x83\x92\xA2\x9D\xBB\xF8x\xE2q\xD5\xE3\xA0/!d\x93\xF5\xE3\xE0\xBB}\xFB\xC4#\x8EE31\x98|\x86~,\x85o\xCA\xEA~M6\x81I0\x84\x91\xE6\xD2vHO\xEC\x8C\x90\xE4sjAc\x9B\xB9\xE1<\x9B\\x8E\xDCH\x9EM\xAE\xF1\x89ˎOan,\x81\x91J\xADEA
+\xDC\xD7 o\xFE\xFE2b'h\xE7\x9D\xDA'"\xB8-d\xCAO\xFB)\xF0W\xF9\xFDX\xC8ʣ\xE0\xE2A\xAB\xE45T\xAE\\xFD\xC8b)\xE52\xB4cŰ-\xEE\x94`$\x9DX#\x86\xF1\x8B\xFD\x94\xC1S\xF5\xA3\xB0{fS;\x8C\xE6\x87I\x82v\xFA\xD8'\xA1t\x81\x92\xA2\x97\xFB7߱\xA9\xB8\xC8";ɗҎJ\xAE\x92\x95\xA0\x91\xB9\xDAQ\xECK]\xB1;\xF42
+I\x9E4s
+\xD4\xE6ɓv\xAEla\x86} \xD9F\x8F\xDA\xF9&;\xE2!<\x9F\xAA\xDB\xC2
+\xA6\x97\xCA\xDE\xF5m\xF9ڑQw\x96tK\x{12476B}\x98\xA8+\x8C\x93ݼ{K\xCC\x9E\xF8 \xF7T\x92v\xFE,E9\x82e\xA5(%\xB9\xFAQ\xA9zЫIz.\xA5\x84\xBF\xB9Rx\xA7\xD2\xF4#\x88\xF7P\xA5,2\x9F\xAE ;\x9B4\x91B\xF4TW\x92\xE2Jj\xE1\xAAnyJɽ(G?\x9A\xF5\x8C\xAAR\x88\x9Fus\xBEY͈eE_(p\xE6\xA9$\xED\xFC\xB6o\xE0I%\xE8\xE6}k\xAB2\x8F\x9E\xB4s\xA5.\xB6ѣn\xBE\xE5L\xA5\xFD\xFF\xEEr\xBA\x91\x8BX\x94\xAE\x89\x92\x85:N+ u\xF0\xE6\xBB+\xCE\xFCQ7\xDF;\x82\xE7\x82%\xFB\xA5\x9D\x9B(\xC6=i\xE7\xEA:\x85\xAB|\xD2\xCDu\x88\xBD\x84\xA9|\xD0\xCE3\xB7\xA5=m\xED\xE5\xF9\xBA\x91~D[\x90\xACǽo\xAF`\xE6\xFB,?j\xE7\xABd\xA4\xFB\xA4(G7\x9A\x90\xB5\xFFL\xAC_\xD9\xFAG\xA1\xA6\xE8\xE6>!\x8A\x90\xDAy\xF2\x85m\xFC\xAC\x9Bs~M6e\xA5\xD9\xDAq\xD9+%\x8A\x9Ets勲\xDA\xC7'\x9Dтea\x86n,b\x89\xD4ʸ\x84l\xAA^\xAC\xAF\xC3a\.z#Y\xB0TX\R/\xBA\xD0Mv=F\xBF5sd\xF7G1{H&\xC4\xB5\x88\xA7\xA0b\xEDH?\x9C**wȪ
+Q3\xD6g\xF1\x92\x86\x9Cg\xEC\xDB8F\xBAmj$K3\x80-_R\xD3p\xA0\xF8V\xD5\xD4x\xCB|\xC3W\x9E\xA0\xF1\xC7|5\x9E\xC1\xC7\xCE'S7w\x86\xD7\xF9\x9Eg\xF2I\xBA:V;\xC9?טn\xA4 z"-ߨ\xCE\xED\xC5\xDAg8ߏ\xB7)\xF0\xC9\xFB4\xB8\x90\xC7鴿Ofk6\\xEF\xD9DN\xE6tZ\x95\x90\xF6n\xE1\xAEH\xEAȭ\xB6y\x98f&\x87\xF9\x9D@\xFB\x968X\xF6\xC0\xEF\xEFٴ\x88̉\xB4\x8A\xBF\xC0\xD1\xEBx\x8AX\x9CL\xEB\x93b\xB4\xDFH\xB9\xB8q\xF8\xF5\x99{\xF6\xF6n'"\x89\x8A\x93\xB9}dQax\xC4֗*\xBF:\xDF8D\xE0\xA1\xF0:\x95\xD6/\xD91\xDBĒ\xEB\xAB\xB42\xD4O\xB3\xCDe\x93\xB76\xFCTb\xCD\xE9\xD7\xC1dO\xAF\xC6H\x9CHk\xA2ɵ\x86\xFE\x8BH\xD77[\xCFޛ\xA7\xE4 \xA1l\xFBT\xE6m\xE8Cb{oR\xD7\xD9\xAB)y\x85b\xAD>(\xB0\xB9\xEDD\x9B+c\x8B\xEA\xD4+\xD2\xA0&\xB7\x90Ņ\xCCh
+\x9C\xCE/\xB8\xA5\xAC\xF4*\x87\xE42\x87\x8C]\xE2*\x87\xADF-b\xD0b{\xDEz\xFE|%\x8B\xDDn\xAD[\x8E\xB0O,6:\x9F_\xF4\xAE\xFC\xE0\xBDn\xFE\xF8Î\xF7\xCFT}\x93W\x8A\xF8\xF9\xE7\xC5\xEC\xB3x4\xDB|\x8E\xCF\xE5W.\xDC\xD5z\xC0\xFB>W(\xF7؎:+\xD1
+Y\xC39\xFAr\xE8\xDEzI\xE3 \x93\xF7\xF1\xAD\xDC\xE4\x8F\xC3c\xD9N\xB6\xFC͍FaI\xE5>\xC727\x955\xFF\xE2\xFD\xB1\xB1\xB7]\xF9qbN\xE0\xEAj\xD7
+%\xA7\xEE\xDEv\xEB\xCA~\xE0\xB4\xFC@\xE5\x8E\xCD\xFBYuK\xAD
+\xFEaǼG\xFE/=u\xB9\xF5\xD1\xF8\xF5 \xEAw\xA7]\x94 p\x94\xE2h2\xED>LY\xF1\xEB\xF1t:\xA2Q\xF7\x97\xEB\xEER\x8B\xAB\xD7\xBBa\xE8\xAEF\xF8Y\x89|\xFC<\xC3\xFE\x93\xC8\xCA\xFB\xAA\xB8;\xDE\xDFl\xAF\x99.\xE9\xDD\xB2\x80;\xE8\x8B_4Lّ\xAA\x8D\x8E\xAC_\xC0\xE7i\xCE.\xF2ݗ\xED\xCE\xEAp\xFF\xF1\xC5,\x84\xA7,Wy\xA5VSޏ%̤3\x96ɢ\xCBx\xA8D<q\xE0L\xA6\x92rM\Gx\x8D\xFD\xA1\xF4\xF2\x81<\xCB+\xD4(\xF3\xE2\xCD5\x84\xF7垳\xD1y\xC8d\xA1O\x88,<\x85\x9F%\xA53°8Z\x93\xB4\xDFd\xF7\x81\xC9\xFA\xFD8\xB5v\xD0\xFA\xF7&\xA6\xD8{\xAEVuI\xA8ׄY\x8D\xAC\xF9\x95\x8A\xE5\xD7ϸ\xA6)Ď\xDE?\x9E;-\x9E;\xF9\xE4IՐή\x8A\xD8*7\xE3qx\x87/\xEC\xDB@=\xAD\xC1ĭ\xACٷ\xD5\x{226B518}\xD4 \xF2\x80\xF3sGڍ\xA7\xD0\xF5\x9D[?:\xA6@\xD4\xD5Ɍ\\x94\xA3T\xD6\d[\xEC\xE69ʓI\xF0\x94\xF3\xAD[\x84\x91Tk:\xEE\x9Cq\x94\xE6ҥT\x88\xBD+-\xBFصN]tة.e\xE1\\xCE\xD9R]8\x80\xA1\xB6\xAF\x87\x8Dc\x89U\xB7rl\x80\xB0\xD2v\x8E
--\x95\x8E\x95f\xF1\xE6ZC\x85\x84\x9F\xBF\xD5\xE3\x9C*\xA7b-1\xB33\xE3\xC4 \\xE7\xA9G\xDE=
-6H<\x9BҨxG}\xF5\xE7\xB1*\xF1\xB3
-\xD4U\x81\xC0O\xC0\xAE\xEF ֲ\xC1\xB0\xCE\xE8Z\x86\x9D=\xCAj\x93\xF8\x8FT\xBB\x8A\xA8K\xA1c_v\xC8G0\x8D\xA2Ҭ\x86boڂ~\x9C\xC6\xFD\x90\xF5n\xD1\xCCM\xC2\xE8\x9A\xFE1\xF3"\xE7㌾\x97Cҗ94\xBB=&\xAB\xDFҰ=\x935<\xEC|'\x87\xB4w˄\xEE\xB8Uu'\xAC\xC92\xF5\xCEE\xBF\xA8\xB6\x8B\xBF\x93\xFA_{WM\xFDEް\xB1f\xC6M\x8Er\xB7I\x85C\xCByh#\x8B{\x88U\xC2`}\x9F\x90\xCE\xC5Wb\x87\xA1
-\x84\x9A㈚$\xCB{\xBB\x85o}\x90\x9C\xA7±
-~\xB2#\xEAӑ#bJ+0=M\xA3dq߰\xAAH\xF0\xF7\xC5\xCD[֮\xC4\xC7?\x98Uz\x93Ј\x860\x97ذg_͉v\xEC{\xE4\xFB4\xACV\xC9'\xA3\x85\xA4W\xDC!/\xEF\xCD_A)\xF9\x918 ٞP\x87\xEF\x94\x84r\xB1WT\xFD
->1\xEC|\xA7+MB\xE2\xB8.\xAC\xBA'\xF31+\x89\xA9\xB9c\xB8>\x9B(n\xF2z\x87\xDC9~LI\xC8ʣ\xB9\xAB\xCBͻ*UH\xF7\x8C\xB5\xAA8-\x8E\xF1\x95\xA8=\x9D\xE5kU\x8FV\xAF\xE6(6\xEF֪v\xD4/i_\x89j\xA2}Y\xFBT\x9CF?\x8A\xC55F\xAB?e
-\xEA\xC8rc\xA8\xBF҇y
-\x9B\xEBIv\x82\xF1\xFA\x81b\xCCtRQ- 6
-p\x85\xA0\xC8\xC4aO\x83r\xC8*<$\xA9\xD0\xFE#\xFB#&\xAE@`U\xB1M:\xCAN\x97\xEE\x88
-\xD4w6\xC8ԛ\xB2_1\x9Dxn\xE8CZV?>| ;\xC9\xDC0\xFE\xB1\xBF\xEE\xF1\x8E\xB5\xD0\xDB\xC6.6\x9278V\xB1\xB6\xD8O]\xF18\xC3Z\xB2
-ck#X\xBD\xD9\x87\xB6V\xFB\xDE2\xBE\xCB\xD9\xEA\xCB\xEB0\x8D\xE8PX\xECˏ\xF4b\xB1\xAE\x8D1/Fd*\xE7,Ɖw\xC6A\xC46[\xDA^\x92Vx\xFF\x951]\x8Ah<\xF1\xCAH5غ\xF6"C\xEC\xEFb\xB3\xEDj=\xA4\xEA&^\xF5{\x92\x9D6\xEDIv\xAA`O\xB2Fk\xD6\xBCă\x9E![\xB7$`\xD0O\x83\xAB\xDA4\xA4\xF8%ooJ\xD1F\xBD\xD0WbɤM\xB7&6\xB6\xCE\xF2B/]\xEBR\xE97IHm\xD5҇\xFA\xF6!\xAE,{\x930\xD4`\xC5\xED\xC3i0\xF4\'\xA1\xB10-+\xE0\xC6d\xCBI\xA5\xB1\xA5l\xF8\x86\x81\xFE=鹩/\x8C\xFA0;
-2\xEEP\x8FW\xFA*\xF7\xA6/\xAA\xFD|L!\xC6|\xF7A\x98Ȼ\xD3w$\xF0\xA6\xA7ܵ\xB6\xE8\x9A\x9F\xDAQP\xDC/\xFF\xA1\xA0\x90\xFD\xC6\xD0\xF4h
-r/\xD4\xFE\xEC$>2\xA9\x88)\xB1\xB6?\x8F\xFA\xE2\xDEh\xC1\x82\xA9bqU\xA5s\x9E\x812\xA5\xE2LB\x83!\x89\xE8T\xAC\xCBd\x87\xE2bcG|\xB1ps\xECM\xBB\xF6\x9B3@Q\xE4<\xC0A\x97#+J0-\x8D\xEC\xC3\xF3\xD6J/(\xE9\xE78N\xF8\xA9\xDC\xC6
-HU.JT\xC3(\x86E\x98\xE5:\xFE\xD2!\xF1*pa\xB9Ik= \x83F\xAD\xEE\xA4A\x9C\x976\xC1i:\x8E\x82\x8B\xBDS
--Js\xE8
-y.v\xC8\xF1s\x95R\xE27\xA7\xA7\xC5\xEAl:dcNHIl4\xE3
-\xF9\xDF\xD0ʖt<g\xFE\x908~fWpww\xC0E\xAA\x9B\xC2C\x8F\x8D\x8E\x83Q\x9E`ȣ\x95|,\x{D9EC}9o\xA9o\x8BX\xF6\xFFĉF4)Ғ{\x90~\x98=P؉\xD9\:Op\xA79\x8AY\xE5H-\x9A4\x85\xBE\x88U`n\xCEc\x81\x93t\xF3\\xF0*\xE068_\x8C\xFC\xAA\xA1\xD67LD\x89\xB3~\xEAj\xB8\x9A\xDE\xC2F\xBA\xD1q`-bS\xCEDP\x9BZc?\xBC-\x8DZ\x8B\xA9=\x8C\xE6\x9A!w\x81\xEC"% e\x8Ej\x94\xC7\xF5*\xA3Фa\xE8S'(c\x90\xCB\xD6@\xA7\xA0\xDC
-\x99\x88#"N@\x89J\xE0\xC5a8*@5\x92dž\xE5\xFD\xB1\x8C\xA8s\xEB`\xE4"j\x82)P\xE0\x96/P\xE0+\xBAo\xB4\x98\xE0!"\x84F%=\xA9\x94b \x82\xA0\xE1r\x99TvH.\xBE@\xB9X`\x93\x97\xABnؐ#C\xE9\xC5&\xA9z\xB33\xBA?\xF6\xFC\xA1\x84\x8E\xFF e]̙W\x89 \xDC\x83n\x9F\xA7\xEFz]\xA0\x93Fv\xBA E^ O?\xF0\xD36ȶ\xB7\xA7\xC0\xE2\xAB\xCE\xF2\xC2ie\xA5l<l\xE4k%\x9A@ž
-\xB1\xFD\xFD\xEA(\xB3\x8F`\x94\x89m\x9C\xDFW9\xCEGI-MZ\x90\xEF\xC3Z&Q)^\x8DX&4PV\x99V`'\x82.`\xB3C*\xCB\xBC\xE1d\xC6^)\xBDT\x86A[P\xC4W<\x81ٲ2\xA9u\x80\xDEJ\xF6pt<\xF6\xD5隺Ckγ4.u\x82ȑ\x96ɈOϤD \xE8_#%\xA7\xA0P\xE9{\xB3\xA3n_x-Q.4Ղ\x80\xA5\xED\xF4tz^\xCD\xAA\x8FE\xB1\x95\xF6\xD8c\xF0Z\xC6\x96P3\xE7'7\xA3de@\x8F\xEE\xBẺ
-\xF0\xD8Gш=\x94\xEAR\xBB2\xB9\xE2\xF1\xCFT\xB6\xC6\xE9
@@ Diff output truncated at 100000 characters. @@
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <wal...@us...> - 2014-02-17 20:20:37
|
Revision: 15394
http://sourceforge.net/p/andromda/svn/15394
Author: walterim
Date: 2014-02-17 20:20:33 +0000 (Mon, 17 Feb 2014)
Log Message:
-----------
Added a new global property 'shortenSqlNamesMethod' supporting 'trunk' (default) and 'removeVowels' that remove the vowels from the end.
Modified Paths:
--------------
trunk/andromda-andromdapp/projects/j2ee/maven2/src/main/resources/templates/j2ee/maven2/mda/src/main/config/andromda.xml.vsl
trunk/andromda-core/src/test/resources/org/andromda/core/configuration/configuration.xml
Modified: trunk/andromda-andromdapp/projects/j2ee/maven2/src/main/resources/templates/j2ee/maven2/mda/src/main/config/andromda.xml.vsl
===================================================================
--- trunk/andromda-andromdapp/projects/j2ee/maven2/src/main/resources/templates/j2ee/maven2/mda/src/main/config/andromda.xml.vsl 2014-02-17 20:15:27 UTC (rev 15393)
+++ trunk/andromda-andromdapp/projects/j2ee/maven2/src/main/resources/templates/j2ee/maven2/mda/src/main/config/andromda.xml.vsl 2014-02-17 20:20:33 UTC (rev 15394)
@@ -112,6 +112,7 @@
<property name="sqlMappingsUri">${sql.mappings}</property>
<property name="jdbcMappingsUri">JDBC</property>
<property name="maxSqlNameLength">30</property>
+ <property name="shortenSqlNamesMethod">truncate</property>
<property name="foreignKeySuffix">_FK</property>
<property name="ejbJndiNamePrefix">${application.id}-${project.version}</property>
<!-- masking properties configure the way your model element names are generated -->
Modified: trunk/andromda-core/src/test/resources/org/andromda/core/configuration/configuration.xml
===================================================================
--- trunk/andromda-core/src/test/resources/org/andromda/core/configuration/configuration.xml 2014-02-17 20:15:27 UTC (rev 15393)
+++ trunk/andromda-core/src/test/resources/org/andromda/core/configuration/configuration.xml 2014-02-17 20:20:33 UTC (rev 15394)
@@ -63,6 +63,7 @@
<property name="sqlMappingsUri">${sql.mappings}</property>
<property name="jdbcMappingsUri">JDBC</property>
<property name="maxSqlNameLength" ignore="true"/>
+ <property name="shortenSqlNamesMethod" ignore="true"/>
<property name="foreignKeySuffix">_FK</property>
<property name="ejbJndiNamePrefix">${project.groupId}</property>
<!-- these masking properties allow you to configure the way
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <wal...@us...> - 2014-02-17 20:15:32
|
Revision: 15393
http://sourceforge.net/p/andromda/svn/15393
Author: walterim
Date: 2014-02-17 20:15:27 +0000 (Mon, 17 Feb 2014)
Log Message:
-----------
Added a new global property 'shortenSqlNamesMethod' supporting 'trunk' (default) and 'removeVowels' that remove the vowels from the end.
Modified Paths:
--------------
trunk/cartridges/andromda-hibernate/src/main/java/org/andromda/cartridges/hibernate/metafacades/HibernateEntityAttributeLogicImpl.java
trunk/cartridges/andromda-hibernate/src/main/java/org/andromda/cartridges/hibernate/metafacades/HibernateEntityLogicImpl.java
Modified: trunk/cartridges/andromda-hibernate/src/main/java/org/andromda/cartridges/hibernate/metafacades/HibernateEntityAttributeLogicImpl.java
===================================================================
--- trunk/cartridges/andromda-hibernate/src/main/java/org/andromda/cartridges/hibernate/metafacades/HibernateEntityAttributeLogicImpl.java 2014-02-17 13:14:52 UTC (rev 15392)
+++ trunk/cartridges/andromda-hibernate/src/main/java/org/andromda/cartridges/hibernate/metafacades/HibernateEntityAttributeLogicImpl.java 2014-02-17 20:15:27 UTC (rev 15393)
@@ -111,14 +111,15 @@
String name)
{
String returnValue = name;
- if (StringUtils.isNotBlank(prefix))
+ if (StringUtils.isNotBlank(prefix))
{
returnValue = prefix + this.getConfiguredProperty(UMLMetafacadeProperties.SQL_NAME_SEPARATOR) + name;
// handle maxSqlNameLength
Short maxSqlNameLength =
Short.valueOf((String)this.getConfiguredProperty(UMLMetafacadeProperties.MAX_SQL_NAME_LENGTH));
- returnValue = EntityMetafacadeUtils.ensureMaximumNameLength(returnValue, maxSqlNameLength);
+ final String method = (String)super.getConfiguredProperty(UMLMetafacadeProperties.SHORTEN_SQL_NAMES_METHOD);
+ returnValue = EntityMetafacadeUtils.ensureMaximumNameLength(returnValue, maxSqlNameLength,method);
}
return returnValue;
}
Modified: trunk/cartridges/andromda-hibernate/src/main/java/org/andromda/cartridges/hibernate/metafacades/HibernateEntityLogicImpl.java
===================================================================
--- trunk/cartridges/andromda-hibernate/src/main/java/org/andromda/cartridges/hibernate/metafacades/HibernateEntityLogicImpl.java 2014-02-17 13:14:52 UTC (rev 15392)
+++ trunk/cartridges/andromda-hibernate/src/main/java/org/andromda/cartridges/hibernate/metafacades/HibernateEntityLogicImpl.java 2014-02-17 20:15:27 UTC (rev 15393)
@@ -855,9 +855,10 @@
final String sequenceSuffix = this.getSequenceSuffix();
// Implicit conversion from short to int
final int maxLength = this.getMaxSqlNameLength() - this.getSequenceSuffix().length();
- if (maxLength > -0)
+ if (maxLength > 0)
{
- sequenceName = EntityMetafacadeUtils.ensureMaximumNameLength(sequenceName, Integer.valueOf(maxLength).shortValue()) + sequenceSuffix;
+ final Object method = this.getConfiguredProperty(UMLMetafacadeProperties.SHORTEN_SQL_NAMES_METHOD);
+ sequenceName = EntityMetafacadeUtils.ensureMaximumNameLength(sequenceName, Integer.valueOf(maxLength).shortValue(), (String)method) + sequenceSuffix;
}
return sequenceName;
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <wal...@us...> - 2014-02-17 13:14:59
|
Revision: 15392
http://sourceforge.net/p/andromda/svn/15392
Author: walterim
Date: 2014-02-17 13:14:52 +0000 (Mon, 17 Feb 2014)
Log Message:
-----------
Added a new global property 'shortenSqlNamesMethod' supporting 'trunk' (default) and 'removeVowels' that remove the vowels from the end.
Modified Paths:
--------------
trunk/cartridges/andromda-ejb3/src/main/java/org/andromda/cartridges/ejb3/metafacades/EJB3AssociationEndFacadeLogicImpl.java
trunk/cartridges/andromda-ejb3/src/main/java/org/andromda/cartridges/ejb3/metafacades/EJB3AssociationFacadeLogicImpl.java
trunk/cartridges/andromda-ejb3/src/main/java/org/andromda/cartridges/ejb3/metafacades/EJB3MetafacadeUtils.java
trunk/lib/org/andromda/bootstrap/cartridges/andromda-meta-cartridge-sources.jar
trunk/lib/org/andromda/bootstrap/cartridges/andromda-meta-cartridge-test-sources.jar
trunk/lib/org/andromda/bootstrap/cartridges/andromda-meta-cartridge.jar
trunk/lib/org/andromda/bootstrap/cartridges/andromda-meta-cartridge.pom
trunk/lib/org/andromda/bootstrap/metafacades/andromda-metafacades-emf-uml22-sources.jar
trunk/lib/org/andromda/bootstrap/metafacades/andromda-metafacades-emf-uml22-test-sources.jar
trunk/lib/org/andromda/bootstrap/metafacades/andromda-metafacades-emf-uml22.jar
trunk/lib/org/andromda/bootstrap/metafacades/andromda-metafacades-emf-uml22.pom
trunk/lib/org/andromda/bootstrap/metafacades/andromda-metafacades-uml-sources.jar
trunk/lib/org/andromda/bootstrap/metafacades/andromda-metafacades-uml-test-sources.jar
trunk/lib/org/andromda/bootstrap/metafacades/andromda-metafacades-uml.jar
trunk/lib/org/andromda/bootstrap/metafacades/andromda-metafacades-uml.pom
trunk/lib/org/andromda/bootstrap/metafacades/andromda-metafacades-uml14-sources.jar
trunk/lib/org/andromda/bootstrap/metafacades/andromda-metafacades-uml14-test-sources.jar
trunk/lib/org/andromda/bootstrap/metafacades/andromda-metafacades-uml14.jar
trunk/lib/org/andromda/bootstrap/metafacades/andromda-metafacades-uml14.pom
trunk/lib/org/andromda/bootstrap/repositories/andromda-repository-emf-sources.jar
trunk/lib/org/andromda/bootstrap/repositories/andromda-repository-emf-test-sources.jar
trunk/lib/org/andromda/bootstrap/repositories/andromda-repository-emf-uml22-sources.jar
trunk/lib/org/andromda/bootstrap/repositories/andromda-repository-emf-uml22-test-sources.jar
trunk/lib/org/andromda/bootstrap/repositories/andromda-repository-emf-uml22.jar
trunk/lib/org/andromda/bootstrap/repositories/andromda-repository-emf-uml22.pom
trunk/lib/org/andromda/bootstrap/repositories/andromda-repository-emf.jar
trunk/lib/org/andromda/bootstrap/repositories/andromda-repository-emf.pom
trunk/lib/org/andromda/bootstrap/repositories/andromda-repository-mdr-uml14-sources.jar
trunk/lib/org/andromda/bootstrap/repositories/andromda-repository-mdr-uml14-test-sources.jar
trunk/lib/org/andromda/bootstrap/repositories/andromda-repository-mdr-uml14.jar
trunk/lib/org/andromda/bootstrap/repositories/andromda-repository-mdr-uml14.pom
trunk/lib/org/andromda/bootstrap/translationlibraries/andromda-ocl-translation-testsuite-sources.jar
trunk/lib/org/andromda/bootstrap/translationlibraries/andromda-ocl-translation-testsuite-test-sources.jar
trunk/lib/org/andromda/bootstrap/translationlibraries/andromda-ocl-translation-testsuite.jar
trunk/lib/org/andromda/bootstrap/translationlibraries/andromda-ocl-translation-testsuite.pom
trunk/lib/org/andromda/bootstrap/translationlibraries/andromda-ocl-validation-library-sources.jar
trunk/lib/org/andromda/bootstrap/translationlibraries/andromda-ocl-validation-library-test-sources.jar
trunk/lib/org/andromda/bootstrap/translationlibraries/andromda-ocl-validation-library.jar
trunk/lib/org/andromda/bootstrap/translationlibraries/andromda-ocl-validation-library.pom
trunk/metafacades/uml/common/src/main/java/org/andromda/metafacades/uml/EntityMetafacadeUtils.java
trunk/metafacades/uml/common/src/main/java/org/andromda/metafacades/uml/UMLMetafacadeProperties.java
trunk/metafacades/uml/common/src/main/resources/META-INF/andromda/namespace.xml
trunk/metafacades/uml/emf/uml2/src/main/java/org/andromda/metafacades/emf/uml2/EntityAssociationEndLogicImpl.java
trunk/metafacades/uml/emf/uml2/src/main/java/org/andromda/metafacades/emf/uml2/EntityAssociationLogicImpl.java
trunk/metafacades/uml/emf/uml2/src/main/java/org/andromda/metafacades/emf/uml2/EntityAttributeLogicImpl.java
trunk/metafacades/uml/emf/uml2/src/main/java/org/andromda/metafacades/emf/uml2/EntityLogicImpl.java
trunk/metafacades/uml/emf/uml2/src/main/resources/META-INF/andromda/metafacades.xml
trunk/metafacades/uml/emf/uml22/src/main/java/org/andromda/metafacades/emf/uml22/EntityAssociationEndLogicImpl.java
trunk/metafacades/uml/emf/uml22/src/main/java/org/andromda/metafacades/emf/uml22/EntityAssociationLogicImpl.java
trunk/metafacades/uml/emf/uml22/src/main/java/org/andromda/metafacades/emf/uml22/EntityAttributeLogicImpl.java
trunk/metafacades/uml/emf/uml22/src/main/java/org/andromda/metafacades/emf/uml22/EntityLogicImpl.java
trunk/metafacades/uml/emf/uml22/src/main/resources/META-INF/andromda/metafacades.xml
trunk/metafacades/uml/uml14/src/main/java/org/andromda/metafacades/uml14/EntityAssociationEndLogicImpl.java
trunk/metafacades/uml/uml14/src/main/java/org/andromda/metafacades/uml14/EntityAssociationLogicImpl.java
trunk/metafacades/uml/uml14/src/main/java/org/andromda/metafacades/uml14/EntityAttributeLogicImpl.java
trunk/metafacades/uml/uml14/src/main/java/org/andromda/metafacades/uml14/EntityLogicImpl.java
trunk/metafacades/uml/uml14/src/main/resources/META-INF/andromda/metafacades.xml
Modified: trunk/cartridges/andromda-ejb3/src/main/java/org/andromda/cartridges/ejb3/metafacades/EJB3AssociationEndFacadeLogicImpl.java
===================================================================
--- trunk/cartridges/andromda-ejb3/src/main/java/org/andromda/cartridges/ejb3/metafacades/EJB3AssociationEndFacadeLogicImpl.java 2014-02-10 12:38:59 UTC (rev 15391)
+++ trunk/cartridges/andromda-ejb3/src/main/java/org/andromda/cartridges/ejb3/metafacades/EJB3AssociationEndFacadeLogicImpl.java 2014-02-17 13:14:52 UTC (rev 15392)
@@ -1042,8 +1042,9 @@
*/
final String maxLengthString = (String)super.getConfiguredProperty(UMLMetafacadeProperties.MAX_SQL_NAME_LENGTH);
final short maxLength = (short)(Short.valueOf(maxLengthString).shortValue() - constraintSuffix.length());
+ final String method = (String)super.getConfiguredProperty(UMLMetafacadeProperties.SHORTEN_SQL_NAMES_METHOD);
buffer = new StringBuilder(
- EntityMetafacadeUtils.ensureMaximumNameLength(constraintName, Short.valueOf(maxLength)));
+ EntityMetafacadeUtils.ensureMaximumNameLength(constraintName, Short.valueOf(maxLength),method));
buffer.append(constraintSuffix);
}
else
@@ -1087,7 +1088,8 @@
UMLProfile.TAGGEDVALUE_PERSISTENCE_COLUMN,
((Entity)this.getType()).getMaxSqlNameLength(),
suffix,
- this.getConfiguredProperty(UMLMetafacadeProperties.SQL_NAME_SEPARATOR));
+ this.getConfiguredProperty(UMLMetafacadeProperties.SQL_NAME_SEPARATOR),
+ this.getConfiguredProperty(UMLMetafacadeProperties.SHORTEN_SQL_NAMES_METHOD));
}
return columnName;
}
Modified: trunk/cartridges/andromda-ejb3/src/main/java/org/andromda/cartridges/ejb3/metafacades/EJB3AssociationFacadeLogicImpl.java
===================================================================
--- trunk/cartridges/andromda-ejb3/src/main/java/org/andromda/cartridges/ejb3/metafacades/EJB3AssociationFacadeLogicImpl.java 2014-02-10 12:38:59 UTC (rev 15391)
+++ trunk/cartridges/andromda-ejb3/src/main/java/org/andromda/cartridges/ejb3/metafacades/EJB3AssociationFacadeLogicImpl.java 2014-02-17 13:14:52 UTC (rev 15392)
@@ -67,7 +67,8 @@
UMLProfile.TAGGEDVALUE_PERSISTENCE_TABLE,
((Entity)end.getType()).getMaxSqlNameLength(),
null,
- this.getConfiguredProperty(UMLMetafacadeProperties.SQL_NAME_SEPARATOR));
+ this.getConfiguredProperty(UMLMetafacadeProperties.SQL_NAME_SEPARATOR),
+ this.getConfiguredProperty(UMLMetafacadeProperties.SHORTEN_SQL_NAMES_METHOD));
}
break;
}
Modified: trunk/cartridges/andromda-ejb3/src/main/java/org/andromda/cartridges/ejb3/metafacades/EJB3MetafacadeUtils.java
===================================================================
--- trunk/cartridges/andromda-ejb3/src/main/java/org/andromda/cartridges/ejb3/metafacades/EJB3MetafacadeUtils.java 2014-02-10 12:38:59 UTC (rev 15391)
+++ trunk/cartridges/andromda-ejb3/src/main/java/org/andromda/cartridges/ejb3/metafacades/EJB3MetafacadeUtils.java 2014-02-17 13:14:52 UTC (rev 15392)
@@ -524,7 +524,8 @@
String name,
final Short nameMaxLength,
String suffix,
- final Object separator)
+ final Object separator,
+ final Object shortenSqlNameMethod)
{
if (element != null)
{
@@ -548,7 +549,8 @@
new StringBuilder(
EntityMetafacadeUtils.ensureMaximumNameLength(
buffer.toString(),
- new Short(maxLength)));
+ new Short(maxLength),
+ (String)shortenSqlNameMethod));
}
if (StringUtils.isNotBlank(prefix))
{
Modified: trunk/lib/org/andromda/bootstrap/cartridges/andromda-meta-cartridge-sources.jar
===================================================================
--- trunk/lib/org/andromda/bootstrap/cartridges/andromda-meta-cartridge-sources.jar 2014-02-10 12:38:59 UTC (rev 15391)
+++ trunk/lib/org/andromda/bootstrap/cartridges/andromda-meta-cartridge-sources.jar 2014-02-17 13:14:52 UTC (rev 15392)
@@ -1,48 +1,70 @@
PK
---\xBE\x89e\xA9y\xBC\\x8EE\xC9\x99e\xA9ESrR+J\x8B`\xBC\\xBC\--F\x8D\xCA\xC5ɜ\\x82\x8B\xB4Q\xA4\x98W#\x99\xB9\x97\xA1\xBFm
-\xA8Ew\xC3D\xED\xADc\xB7\x8C\x96֥\xC3\xED\xEEk\x8C(T\x90$C\xE8)\xC5p\xD8\xE0\xFBkO\xE1Ex\xCA$o6`\xB3g\xC5ץ"[\xAAB\xE2\xD2\xD0[\xAE \xE6\xA4\xFA\xAE\xAD\xAF!\xB4$\x9A\xA5\\xDDaC \xBA \xA4\x8Dpp\xCD~ψ\xF7\x8A\xC7+\x9E\xB1E\x80--+++s\x91\xD2\xEC\x95
+vY\x85!\xEE\xD1j\xB9\x82H\xCAu\xD4n\xA4(\x8B\xD3P\xE1\xA9yJPB\xA4\x96,\xDDP\xE2F\xC0Y\\xB6&\x89j\xB3$p\x978|gվ6\xE55\xFA3\xB8\xFE\xEF\xFC\xEA\xFA\x9Fw7!\xDE\xF7
+\xC4=\xBDH9\xD5\x9C
+v\x99ܒ
+\xE3\x9BhG\xA4Q\xD9|\xD6|Nr\x9D}\xF1\x9B\xF3E\xFA\x9D>˭%S\xAA\xC9
+$ѕi\x99P\xB5\xE8\xADdR(Įl\xBD\x9C)UҘp\xB2\xA1\xF9\xC0\xEF\xEA\x93\xD24\x8FvL\x92\xD7\xBB\x94Y\xE4\x84A{2&\xCC\xBC\x92\xE2\xA0(\x8E\xDFޜ\x87\xD8H7\xF4c\x86*\xE9\xE9O\xE7\x90\xC6V\xE0,՞/k\xB8
+hH\x89R&t
+\xA8q\xAA1Ф\xBA\xC2Z\x96\xFCw\x87\x8F{\xC7b\xC7AO\xE9\x9Ef\xA2\xA0\xF2\xC2o\x86zv;|\x88~w\xCF\xE2\xF6]\xDD\xF94\\x95,\xEBE{\x91\x95r\xCA!9\xE4u:\xAB\x82Q\xEB\xF2\xE5\xE2lN\xAE\xC0EJKR\x95\x86\x89\xCCe\xE8o_Zj\xD2\xFD0Q{\xEB\xE8MJ\xE3\xD2\xE1v\xC7\x95ɦ4\xF4\x84"8lp\x86\xF95\xA3\xCF\xE9\xF1\x9CIק\xC0dϚmJIf\xB6T\x85ĵ
+\xA07LB\xCC \xF9 \[\xB7!\xB4"\x8A\xA6L\xDEcM \xBA \xA4e\xFD\x81q\xBC#{X\xEF\xEA \xA4\x9E9\xEF%\x8B\xD6,\xA3KB&!\xD7m\x8C\xBF\x8F/\xCF4\x9B\xA7}PQ:)[3\x9A^lirA\xE6A\xD1\xD3}^=\xE67(\xE5)\xE5 \xA3\x93'\xD7\xCAL\xF9\xC3JyөM\x88#n\xA4\xEDQ}ȫ\xE9\x919V\xF9ov\xEB{\xEC=肾\xCA\xF3\xBD\xEA\x91`\xB2\xECg\xABK\xF5\xB6~\xFC\xDAT:[\x97\xA0X\xC0\xC6V0Sſ5\xB9\x9F~ L\xB2[R*\x94\x8B\x9Dxh\xD4\xD9liM?\xA8&\xF4\xA3\xD1\xF6CdI[R^\xC2^GU\xE5\x93j\xC2yi\xD7<\xEA\xA11\xBD\xDC\xC1\x8D\xF1m%\xE9\x99JK\x9B\x9A\xF1Ѵ\x93\x8FN;a\xB3m\xA4\xD8B\x9Av\xF5\xA6\xFA|\xCE\x98≅\xCCJ<\xA4\xB5\xC2t\xB6asj\xA7\xFE\xB6\xA1LN\xFE]6!{\xB4++-----LXV\x8D\xAA\xE5~@\xCB\xF2\x9Bu;\xB2ZAf<t.)ؿ#\x84\x84C\x95\xA6/\xF0\xBD\xE2\xA98L 癱\xC1\xAA6\xF7&\x83\x99\x83X7Ƈ\xB8M=\x87>\x85.@5kQ$\xEAJ\xE6V\xD1\x88\xEC\xA2ߜ\x9A\xD9\xFF\xDAGʳ\xA6\xBFK\x81\xDD
-\xF3\xF2\xDEb-_>?>5n<\x90\xE1+z\x9E;\x91\xE5u\xB13\xCBT\xE6$&m\xDEAN\xC4\xF3VO \xF4\xE3\xF4\xC6\x89\xDA#\xB3\x86x\xF8ڻ8f\x82\x8F\xCD=\xB8\xCEed:\xF4\xA4C\xC2ہ\xDC\xF0\x83y\xB9\xC6aԡ<\xB7\xBB:\xB9>\xBA;x\xFA%\xF9YQ\xF2\xEB\xFA\x80\xA2D6\x9B\xAA\xBC\x8Bɻ\xF7\x87\x81w3+\xF0\xEB\xA4.\x90\x83\xC8yZ߈k\xA6_\xB2\x94\x95M\xC0{\xD2KrJ)\x9E\xB9\xC6\xBCi\x9C\xB6d\xED\xE6]\xFB\x8DQ\xB4M)Ɛ\x82\xD3B\xB4[\x93;\xDBY\xBB\xBF鉚\xD1'\xA1XcS\xA8\xA9\xF7`~ԧ\xB05\xE9i\xFBq\xB3\xD8\xFE\xEB\xA5j\xC2.\xB8W\x88\xA3\xFB\xB7\xD8n1|\xDC\xA5\xA2\xBA\xF7\x8DzR\xDFYj\xB4ШyF\xBB8:(\xEC\xDF\xE2\xF6\xB5˩\xEFpJI8\xFC\xD5\\xF3\xD7\xF4\xF7W\x{15777C}\x9A\xD56\xB3n*F7\x8B\x9BiQ\xD1\xF0\xFE\x{D9CE}\xAE\xDD\xF0^m\x91&>\xA3\xEB\xCE\xFD\xD6\xB7\xA3\xD0vy8\x8Ag\xCC\xEB>\xDEJB\xE3e1N\xAB\xC4\xE14\xE0\xCE)R\xAF\xAF\xB5̣\xA2\xE9\xF8@3\xAA\x8FFw\xFC\xC7I\xC4'$.˔`41]\xBAZ>\xD19B\x93\xB5\x87\xF6LwVy\xE3\xE5\xDAPs{\xBF\xAB\xCAR\xA2R\xFFp\x99\xD3\xDCV\xE1[ӥ\xDFF#\xF3\xC7Mv\xA4\xE5\xF2\xB4\xB0 j\x85\xFF\xDE\xE88ҟ1N\xC1\xA1/+\x91&(]|\xDD\xF0a\xE4ϘNx^0\x8Ee\xA4\xDE\xEB\xF4\xD5\x89\xF4\x82iJp\xE5\x89\xC3ޜ\xE9\xDA\xDECz\xB0.\xEA\xBAGW[
-\xF4կe\x85\xFCޛ\xB6M4:o/&\xD4C\xA1\x97\xF4$\xFB\xED\x8A"O\xF7\xD7\xC0J[)T\xA9\x98'#\xEA\x8Cx2\xEF&\x8E鍼U\xD9\xC3b\xB3\xDE=-V\xEB/\xBB\xD5\xE3\xD3\xFA\xFD\xB6\x8B\xBF\xB7=\xA8s0\xEA'g\xA2#\x98U_\xAB\xAB\x99&{\xE7\xE0\xFCPK
-+++++\x8E\x85uFXi\xEE\xDD\xEF+\xD0\xDC\xE0r\xC7HMk\xDE\xF3Z\x9D\xE9\xE8\xE6\xCCXK\xB2\xB4\xC8\xE9\xFB"(\xEBC*b\x88S^U\xA0òiU
+w\xF0_+L 癶\xC1\xA8\xB6\xF7:\x83\x99\x85ضڇإ\x8A\xE3\x90BP5s(U-s\xA3\xA8D\xD6鷧\xE6\xBF\xF1\x91\xF2\xAC\xE8\xAF+\xB0\xBBq^>\xAC\xF5\xEB'\xEDǟ\xAD\xE4E\xF8\x86\x9E\xE7Ndxm\xEC\xF4ҕ9ˆ\x89\x8B\xC2ȉx\xE9\xF4\xC4B?N\xBF\xD8#\x91;ґ\xE85\xC6\xC3\xE0\xEE\xE2\x94 >~\xB4\xF4\xE0z\x97\x91i\xE8Г\x8E oGr\xCD?fw\x8DèGyq\xBB&\xB9>\xBA=x \x86%\xF9\xA5\xA2\xE47\xF5E\x89\xAC-\xD6Uy\x93w\x8F#\xEEF\xE0\xD7IS G\x91\xF3\xB4\xB9\xD7Lﲔ\x95m\xC0\xD2.9\xA5/\a\xDE6NS\xB2f\xF3\xC1}c'T\x9FMS\x8A1\xA4\xE08\xE7\xB11\xB9\xB7]\xB8\xFD\xF5H\xCFԌ:\x8B\x8A\xB5\x86\xB0
+\xF5\xCCO\xEA:\x93\x9E\xF6\x9Fw\xAB\xFD\xDF^\xAAf\xEC\x82\xFB
+q\xB2c\xBF\x8B\xCD\xC3\xC7\xC37*\xAA[\xB0\xFFѤ'͝\xA5F\xAD\x9Ag\xB4\x8D\xA3E\x80\xC2\xFC\xADn\xDF:\xB1\x9E\xC1\xF8^+\xFCE\xCF\xD4\xE1\xB1
+}]\x8B4Ai#hۼ'#\x8A\xF4\xF0\xC6\xB1,\xDD$\xA8\xF9H\xA4\xA6.\xB2\x8D'\x93\xA4o\xFB+\xB5\xA6G\xD7\xF7plW\xEF\xDFO\x99;\x8A\xE18\x8Ez\x99J\xA1J\xC5<\x99++غ\xEF}\xC7\xF3\x9A\xC47\xE4\x9A/\xAF#R$%\xCFŤ\x94%K\xAE\xA9\x88r*\x89\xFE\xB7"1I\xA88\x9BLX\xBE楄\x8F\xE4\x96Dɲ\xE8UY\x92ݯLȳ>\xEC\x82g\x8D%\xE3\x85x)iI$/= \xC3n2\xF2dO\xE0%\xD9Ȕ\x97\xF0\x82@Z\xD2\xD5"H\xA5\?\x9FϷ\xDBm\x94/y\x9A\xD1"Jhp~E\xA4L\xF0Z\xBF\x83srަ\xBFHI\xAFKT\x94\x9D\xF7\xBB\x92ep\xC1\xF3%կ+b
+OO\xA3\xA7Ϣg\xA7\xA7?\xE0\xCB\xF9d\xBDYf,\x868#B\xC0E\xC2\xE4
+\x91P\xF6\x8C洐BqX\x93\x92,3:\xB9\x9B+`\xE2\xD5RȒ\xC4\xD2K^\xF1-\xA9ܔŇ\xDDz\xF8\xE8\x84\xC7\xA51\xEEjc\xACXA2PNy\xF1\xAA\xBC\xD6XJ\xF7s \xD57(\xE8\x9AX\xE8\xE2\x85\xD3A~\xE6\xF0s\xA0\x9Fc\xBAV'\xF7YU(\x8A\x89梣B=\xE8*e\xEF\xDC1\xECeိQ{ k\xCF\xA8k\xB2\xB8\xF0\xBD\xECذ\x81\xF2&\x80l\xE8\x84\x8C\x8F7>.\x8B\x99\x8B\xD0V\xC4\xFB\xB1\xE1!u\xB5\xE9!\xFEFS
+\xBFk\xB00\xDFDԕ\xFD\xE7*r\xD6ŷj n['\xCF*\x84xm\xED\xBCZ\xF8\xCE\xEA\xEA\x8DX\xAE!\xFC\x8E\xBE\x88\xEE\xE8o\xB0\xEF\x87\xB1\xCE\x9F\xE3o9K\x80$I\x9Da;EJ\xAF\x81\x9B4\x8B\x90>lP\x851:\xDA\xEC\xF4\x89cK\xB3\x93\xD3\xD7T\xD6/D\xE8\x8ASq\xEEJ\xB5\xC7(\xB2\xB2\xF5\x98Q\xDE\xD6\xE9VqWy\xEDa\x8B\x856H\x83\xBB\xCF \x96n\x8FEꪄ\xB6h$7\x86e=$\xC4\xCFˤLi+;t\xC8F\x82+\xACBՑ\xCDW\x99O\xF8\xCAl(\xF0U'\xF9F\x85\xF65\xA4\xC1i\xB0\x8C\xED\x93=u\xAF\x80\xC5CŪ\x891"`\x85\xAD]q9@\xD66\xD9r\xFFѩ!\xA3\xF8o_\x97\xD7\x96%\x88\xBAZ\xAFK*0\xB7\xD4 ű\xA34%i\x9FV&\xE7\xC4f\xAD845\xF3\x8D\xE5Pc\xB6\xAE#\x97dٮ!\xD4f HE@\xCE\xB6b\xB4t\xADW\xA7+b'\xBD3|\xE6[*U\xAB&h º\x89\x8D\xEEP-\xE3,z
+\xE6\x8E\xE1x\xCEsa趘Ǐ\xE1h\xECt\xF8\xD1\xDAxA0f\xEC\xF4\x9D#lO\x9B,SL\xBCp-\xE6\xD40\xC5/\xB6\xAD! <\xAE\xF5\xB4\xB5=Y\xA8`T<\x9A\xA6\xA2\xA6z\xDA21\xA6\xE2%4W=p\xAB?,\xDC\xFERC\x90G\x83\xA5D\xBC\xA3\x9F_\xAB\xF0]Gu\xC3\xDF\xDB\xD0\xF0\x8CN\xA7\x9B6ló\xC3\xC8Q\xAF\xE9u*\xFAp\xF7\xFB\x86d*\x9B}h\xA3xFE\xF0a\xD7At
+۔a
+\x8Cq\x8C^R\xD8\xAC\xB3D!\xDC\xD0\xB0C\x89@N\xD6^t\x81\xD5Lt\xEFrJ\xFFN\xA9\xF9\xF3!\x8Df\xF5\x89\xAD[\xD2\xCCH\x91\xE8/\xAB\xE8S\xA4a
+_\xEB\xE1\xFD=L\xC9(S"\x81%*0\xD1E\xFB\x9A\xB3/\x82/R\xA2\xE6rZ\xA2^,\xFE\x85\xEE\x86Y\x9D\xB3\xF8\xDAC\xFA\xF7\x95\xCA$N.U\xDC/\x91\xD5qdz\xC1~`?ո\x9Dٹ
+\x84
+\xA5\xC6e\x91\xB0\xE7\x81\x81\xE1\xA3⹄\x82\xCBvD~\xAA\xAFs\x83\xAB\x81rC\xE7+\x92 o\xED\xEF]G7\xEE\xEA~d\xA3Ѻ\xBF\xEAT:h\x87a\x89\xF6l/\xFEnG\xE5u\x8A\x91\xB7\xBB4}\xC0ޥC\xB8G\xEC7m\xDCQ\xC9=\xBFd\xF4\x85\xFF@\xB3L\xA8nDŽ\xE1"@p\xF5\xBE\xF2\xFDxX\xD85\xD1o\xA6\xB1?`ST#\xBD\x96Ԛ4\x88\xE8'\xCCH\xE1+MÛOAi\xEBw\xA9G\xB1\xFEH?\xF0\xF0\xFD\xF2#\x8D\xABu\xB3\xA3\xF6
+\xB0\x88\xA6\xB2t\xE0-*\xABF\xEB\xE70\xAE\xD3
++\xAC}75D6\xDB
+Gu
+\x9Ae\x93I3X\xB8{\xCBȊ\xA0\x99F\x9Ci\xAB,\xCC\xE7\xF0\x97\xA0:\xAC\xE2N7\xA8\xFAրD\xDD78\xA4\xE4\x96\xEA\xADb\xE4\xAC0H:\xC3Y\x8C\x94z++ k\xA71\xA1t7\xF6G0\xA1I;\x80\x84\xE0\xDC\xC6m#R\xB7JR\xA6 \xED\xDD\xE9Ret+>\xE4`\xFB\xF3\xF7\xFBRa\xF2\x81Ai3\x89\xAClY(\x94 Zo\xB5\xCA\xC8ɂ<\x86'\xC5\xB9\x85\xD1d"`X\xFB\xBC\xB4\xB0D\xC8-\xA5\xABQ\xEE}uE\xFB\xFD^q\x99b\xA9h\xB4~F\xEFs\x8D6\xA1\xCB\xD7A\xEF4'\xB3\xA9\x9C\xCD\xE5|:\xBD\xEBݔ1l5\xE5\x9An$\xAA:6:\x81Ġs\xF0h\xB3\xBA \xF6O\xE8Q| h\xAA\xB2\xFA=\xC1[\x83\xCD\xA4\xB51\x87\xD7\x8DN5\xA9\xF7CE/XТo\x95\xC3 LB\xAES5Z,.\xDC\xD9\xF1\xD9w\x9BQ\xEB\xD2wQ\xC7W\xE1v|\xDBE\xDA\xF1M\xB8\xD3\xC6;U\xF3\x87N\xF6kau\xF1\xE8ⷞ\xDBm\xEE̎\xC3[\xF2\xB5\xE5k\x8E}Y\xE83\xF2\xDB^\xCD\xF8<ѰͿy\x90gН\xBB^G\xF1
PK
-+ \x9F\xE8'%a\xB4'I\x8F\xD9IOۻz\xD5Ϩ\x9F\xA2\xE8\xC1<קb\xFF\x8ELa\x97ߟ\xAA\xAE\xA9ю\x93\xA7\xD6\xDE\xCF!xf\xEB\xBF\xDC\xEB\x9B}2x}I\xE9)T8
K\xB9\xCDvh\x89o\xC6x\x8B\xC5\xD1ݖ\xA4(\xBC\xBF\xF1\xECݢo\xACf\xFD'\x9C\x8EUn\xE2\xAA\xF6\xBF\xCE\xEB=o\x91\xEF@5\x98m\x86\xB56\xFCV:N\x8E>\xBD\x91ec\xB1\x98[C\xECOq\x8E\xD1n\xE5^\x995\xE9|\x91\xCD\xE3E\xFEm\x95\xCC\xE6\xD3x\xA7y\x94'Y\xBAj\xB3\xFD)\x8Df\xF1j\xE5y\xBCH\xC30\xE4k#\xA5\x86\xE8W\xCB\xE5\xFE\xEDry\xB8\xBA\xFE\x87\xF8ޡ\x80ZzP\xF27\x8E\x8E\x9Aimm\xBF\xA2\xF0t\xEB\x87\xE0PK
-+ \x97\xB6\xEEaH\xEC\x90\xFA
\x85@X\xCBG\xAD,ImC\xFE\xFB\xAD\xEDKR_\xD3\xE8>\xB1\xB33\xB3I
\xE2;\x94Ȍ-9\xE8\xAA \xB5/\x8Dfc\xAFf\xC0\xCFXSOMy\xE3\x91ӎvͽ\xC3\xEB\xA5\\xEA@\xA0\xF1["\xF4\xDE\xE4\xEC\x93DU8\xCAN\x82\xBA\xC91
\x9CcF;a1\xE9
\xFE𨋿7\xFB\xAE\xAD\xB6r\x99k\x8Dl#5(\xA6\x8C.\x99C+A}A\xEBȠ\xC7\xF8#{\xC7\x9D\xDDuS\x9D\xA9m\xD9,T\xAC\x95\x95\xE6\xDFP\xF8X\xBF( \xA3=\xB1y\xCEN\xFA\xB5\xBD\x96\xA9\xF5=\xEE`\xC5\xED\xA9\xD8_\xFB\xB8$\xEC\xF2\xFBS\xD555\xDA\xD1`\xF2\xD4\xDAK9(\xFA\xDF\xBE*\xD1ǃ\xDFWJ,\xBAG\x8E\xF7\xE9-\xA1\xE3\xF3=\x8C'\x9EX\x85m\x89\x85kϲ-\xFA\xC6j\xF6\xDB?\x81ӳ\xCALT\xD5\xFE\xE7\xD9ٳ\x81|\xAA\xC1t3\xAC\xB5\xE1\xB7\xD2qR\xF4\xC1\xE8\x8D,\x8B\xC5\xC2\xDA\xFE\xE7\xAD!\xCA\xE4@K\xCBt-\xB3\xAF\xEBx\xBE\x98E\xF3(ɦY\x9C&\xEB6ۿ\x92\xE9<Z/\xA6Y-\x930\xB9\xC5Z\x81\xC0\xA9RC\xF4\x9B\xD5j\xFFz\xB5:\xDC\xDC^ \xDF+PKJ\xFE\xC2ё3\xD9\xE6\xD1\xF6\x85\xA7\x83\x82'PK
--\x96\xF9\x9F\x8BX\xA6\xD7j\xF14SڒG\xB6b4\xB7\\xD0%D\x96+\xD9\xDB.\xBEw\x83?\xAD\\xC0\xB7\xF6\xF6\xA3y*\xE8-4"BYe\x91\xC4d\x88\xCC\xD0d\x89[<D\xB6\xB5\xCD*,S9IWL\xE40^\xBFnG\xED^Ƽ 9\xAF\xA6w\x99\xF6=E\xAD*\x83\x9A\x85v\xC9
-E\xB9\xC43\x96$\xDF9\xA0`\xB3\xFE`^\xDE\xF5\xAFoÇA8
-\xA7\xFD\xEB\xE1\xFD\xD9p<z\x98LË\xF02]\x84\x9D=J|A\x82\xBD~\xA6܌\x94\xFD\x8Cm\xFEx\x9A\x9DNe\xBA\xAEѱ\xFAk\xED{}@\xF6\xC5\xF4ཚӦ\xF61-I0\xCA\xD39\xE8+\xA5Sf\xC3\xE72\x9C\xC0s\xE7\xC4\xEE\xDD.\xE1\x89T\xBB\x8C;
-B\x90\xC7\xDCXb\xD9`*\x81\xA6\xF1H\x8Fa\xC1ra\xE9.\xBBl\xAE\xE5^\\xFF\xBD\x8EQ\x88\xD5q)\xB1J\xC6-UB\xECӎXƭK-\xCC{ͪ\xB6\xBFM~\xF2\xBE\xFFg]\xEF\xB8\xE1s.\xB8\xFD\xFA\x8F+|-]/\xB2\xEB\xCC\xF6#\x86\xB0\x92\xBA\xB5
-QHR˔5\xB8Fݥ\xB5\x89\x84\xAB\xD2a\xC1s\xA6L\xD1\xD5\xFE\xE6!\x859aQ\xC6(m\xEA\xED\xBD{\x8A\xFDv<\xE6\x8F
-:\xC3\xF7R_\xC1\xDARS\x96.A\xD3}\x9B\xF2\xF6-i.R\xE3\xB4\xD9!\xC9\xFBΩi\x96\xB1\x94F\xFBtg\x94b\xDF\xBC^\xEA\xCD\xC7捊A\xD4\xF2\xF5\xA6jї\x84\<BJA\xD6=\x8E\x9DM\xBE\xA2\xDF}8\xF9,=\x85\x8E\xA9\xF3;\x8E\x9F\x83\xB4\x9E\xBEī\xEEQr\xC1\x93\C\x8C77\x87-뎋\x81Ps\x86Γ\xE9xNg\xBF7\xEF\xF0Q\xFF&|\x98\xF4g\xB3p:j\xA8\xA4>\xA8\x86L\xB0\xFAB\xED\xFB\xFB\xF5\xCF\xF7\xF7\x9B\xF6;\xB2w\xF4mZ\x9B\xBFPK
- rZ\x90)ۻ\xD13\xED\xECByY夸Èo\xD70`l\xB05Ζ\xBFZ\x81\x83\xC3o\xED\xEC\x96\xE3\xFF
^%\xBB\xAAIN3\xE7\xA6\xC6e3\xAF\xEA\xA9\x87H
@@ -71,40 +93,30 @@
\xE3.\x84lD\x97\xFD\x98\x960\xAB\xF3nd4y\x85H\xBDi\xB8\xE3\xB0\xD6\x8Aɶ\xACL\x9AA\x96J̈~~\xEDx\xF1>IB\xAF\x8EN$/\x81\x8Du\xE4Ʊ\xB7\xD6\xE8hN\xC8F\x92\xAD:ѯy\x8EՈB\xC2ʶ\x8C\xEE\xFE\x91/>\x8D<\xFC\x89\xEB@\xBF!\xE4\xCC\xF91N\xE1]W]9\xDDiٚS\xF78\xA3/F\x90\xB1\x88\xD6o|\xF8\x8D~\xDCG\xD7V\xCF}\xC2-x\xAE\xE4\xF4\xC8\xE4z= \xFD\xF7\xCF2\xFE\x91$"`\xA62p\xAC\x88\x91"s\xB7!'\@\x909\xFAv\x82\xEEho{\xBD=\xC5w\xF5{:g\xFDw[%X\x8E\xE35\xC1\xEBu\xF0 \x8B\xBA\xB4\xB2
\xA4~R7U2\xF3\xDBq;!n0\x89\x81\xCE[\xF1\xD0ś\xA1Ր\xD0\xC0\xBA\xC4F\xDAAX\x93ov\x91\xDA\xC1\xB9\xB2\xAC\xF5\x80#\xC5\xA8%\xB9=:/\xB2ؾ\x8B~P\xA3Ĝ\x98!\xD5\xD02\xF20\xC3 \xCB*\x96\x8BQ\xFAkRf+g+d[5z\xCC\xD9CE\xC3UA\xE3\xD7\xFF--+ \xD1SWF\xFA 5\xB4\x9D\xB9ddL\xF9\xAB\xE8o\xD2Sv>|}D
\xA8\x95A\xCDKr\xCA4Pn7e\xB6\xAD^v\xAB\xBC\gyVT\x8Bj\xB5)v\xF1u\xBC\x8B<ە\x8B\xAAʶ\x82\x93K\x9B3\xB4`\xE5hb¿\xE4\xDAvN\xCF\xCB\x8E0\xD0`\xB6!\xC32Z}\xFC\xD9\xC8\xF4\xBD\xA5X\xA7\x95\xA4\xA9\xE1b ʴ\xE4T@#\xE8?.\x97Y\xC1\xBE֫\xD7k\xDE`rɿ\xB4\xF2\x95|PK
--غ\xEF}\xC7\xF3\x9A\xC47\xE4\x9A/\xAF#R$%\xCFŤ\x94%K\xAE\xA9\x88r*\x89\xFE\xB7"1I\xA88\x9BLX\xBE楄\x8F\xE4\x96Dɲ\xE8UY\x92ݯLȳ>\xEC\x82g\x8D%\xE3\x85x)iI$/= \xC3n2\xF2dO\xE0%\xD9Ȕ\x97\xF0\x82@Z\xD2\xD5"H\xA5\?\x9FϷ\xDBm\x94/y\x9A\xD1"Jhp~E\xA4L\xF0Z\xBF\x83srަ\xBFHI\xAFKT\x94\x9D\xF7\xBB\x92ep\xC1\xF3%կ+b
-OO\xA3\xA7Ϣg\xA7\xA7?\xE0\xCB\xF9d\xBDYf,\x868#B\xC0E\xC2\xE4
-\x91P\xF6\x8C洐BqX\x93\x92,3:\xB9\x9B-`\xE2\xD5RȒ\xC4\xD2K^\xF1-\xA9ܔŇ\xDDz\xF8\xE8\x84\xC7\xA51\xEEjc\xACXA2PNy\xF1\xAA\xBC\xD6XJ\xF7s \xD57(\xE8\x9AX\xE8\xE2\x85\xD3A~\xE6\xF0s\xA0\x9Fc\xBAV'\xF7YU(\x8A\x89梣B=\xE8*e\xEF\xDC1\xECeိQ{ k\xCF\xA8k\xB2\xB8\xF0\xBD\xECذ\x81\xF2&\x80l\xE8\x84\x8C\x8F7>.\x8B\x99\x8B\xD0V\xC4\xFB\xB1\xE1!u\xB5\xE9!\xFEFS
-\xBFk\xB00\xDFDԕ\xFD\xE7*r\xD6ŷj n['\xCF*\x84xm\xED\xBCZ\xF8\xCE\xEA\xEA\x8DX\xAE!\xFC\x8E\xBE\x88\xEE\xE8o\xB0\xEF\x87\xB1\xCE\x9F\xE3o9K\x80$I\x9Da;EJ\xAF\x81\x9B4\x8B\x90>lP\x851:\xDA\xEC\xF4\x89cK\xB3\x93\xD3\xD7T\xD6/D\xE8\x8ASq\xEEJ\xB5\xC7(\xB2\xB2\xF5\x98Q\xDE\xD6\xE9VqWy\xEDa\x8B\x856H\x83\xBB\xCF \x96n\x8FEꪄ\xB6h$7\x86e=$\xC4\xCFˤLi+;t\xC8F\x82+\xACBՑ\xCDW\x99O\xF8\xCAl(\xF0U'\xF9F\x85\xF65\xA4\xC1i\xB0\x8C\xED\x93=u\xAF\x80\xC5CŪ\x891"`\x85\xAD]q9@\xD66\xD9r\xFFѩ!\xA3\xF8o_\x97\xD7\x96%\x88\xBAZ\xAFK*0\xB7\xD4 ű\xA34%i\x9FV&\xE7\xC4f\xAD845\xF3\x8D\xE5Pc\xB6\xAE#\x97dٮ!\xD4f HE@\xCE\xB6b\xB4t\xADW\xA7+b'\xBD3|\xE6[*U\xAB&h º\x89\x8D\xEEP-\xE3,z
-\xE6\x8E\xE1x\xCEsa趘Ǐ\xE1h\xECt\xF8\xD1\xDAxA0f\xEC\xF4\x9D#lO\x9B,SL\xBCp-\xE6\xD40\xC5/\xB6\xAD! <\xAE\xF5\xB4\xB5=Y\xA8`T<\x9A\xA6\xA2\xA6z\xDA21\xA6\xE2%4W=p\xAB?,\xDC\xFERC\x90G\x83\xA5D\xBC\xA3\x9F_\xAB\xF0]Gu\xC3\xDF\xDB\xD0\xF0\x8CN\xA7\x9B6ló\xC3\xC8Q\xAF\xE9u*\xFAp\xF7\xFB\x86d*\x9B}h\xA3xFE\xF0a\xD7At
-۔a
-\x8Cq\x8C^R\xD8\xAC\xB3D!\xDC\xD0\xB0C\x89@N\xD6^t\x81\xD5Lt\xEFrJ\xFFN\xA9\xF9\xF3!\x8Df\xF5\x89\xAD[\xD2\xCCH\x91\xE8/\xAB\xE8S\xA4a
-_\xEB\xE1\xFD=L\xC9(S"\x81%*0\xD1E\xFB\x9A\xB3/\x82/R\xA2\xE6rZ\xA2^,\xFE\x85\xEE\x86Y\x9D\xB3\xF8\xDAC\xFA\xF7\x95\xCA$N.U\xDC/\x91\xD5qdz\xC1~`?ո\x9Dٹ
-\x84
-\xA5\xC6e\x91\xB0\xE7\x81\x81\xE1\xA3⹄\x82\xCBvD~\xAA\xAFs\x83\xAB\x81rC\xE7+\x92 o\xED\xEF]G7\xEE\xEA~d\xA3Ѻ\xBF\xEAT:h\x87a\x89\xF6l/\xFEnG\xE5u\x8A\x91\xB7\xBB4}\xC0ޥC\xB8G\xEC7m\xDCQ\xC9=\xBFd\xF4\x85\xFF@\xB3L\xA8nDŽ\xE1"@p\xF5\xBE\xF2\xFDxX\xD85\xD1o\xA6\xB1?`ST#\xBD\x96Ԛ4\x88\xE8'\xCCH\xE1+MÛOAi\xEBw\xA9G\xB1\xFEH?\xF0\xF0\xFD\xF2#\x8D\xABu\xB3\xA3\xF6
-\xB0\x88\xA6\xB2t\xE0-*\xABF\xEB\xE70\xAE\xD3
-+\xAC}75D6\xDB
-Gu
-\x9Ae\x93I3X\xB8{\xCBȊ\xA0\x99F\x9Ci\xAB,\xCC\xE7\xF0\x97\xA0:\xAC\xE2N7\xA8\xFAրD\xDD78\xA4\xE4\x96\xEA\xADb\xE4\xAC0H:\xC3Y\x8C\x94z-+ \x83\xB0IIn@ċDدU\xED~\xC7\xFF\xDFc\xE8\xC6\xCDY\xA6oˮ\xB1\xEE\x8E>\xA7\xD6\xCC\xDE\xEA\xF7*\xD1`\xF8\xE1z4\xD2\xF1\xD4(-m\xFA\xF8z
\xA2 )\xFE&\x8F\xF6\x9D\xD6IO\xC4,q\xA8\xAA\xB0\x83\x98E\xB5m\xE8\xD48ӌĜ\xFA7b\x91W\xB0\x97\x8A\xFD`\xA2P\x83`\xD0}SW\x83\xEC\x8A\xEB)]RMܬ8!\xC3ƶng\xF8\x94\x9Ec*I\xF94nZ\xDB:\xB7\xC9$\x89\xFF|_\xFC5r\xF8sS\xB9\x98PLKq\xAE{\xCFq\xA5\xF8\xD7\xD1\xFFh\xC6x\xA5\x86\xF0\xF82t\x8A\xE6\xBFN\x97\xF7\xAD=\xE2|\xADNPK
--++\x96\xF9\x9F\x8BX\xA6\xD7j\xF14SڒG\xB6b4\xB7\\xD0%D\x96+\xD9\xDB.\xBEw\x83?\xAD\\xC0\xB7\xF6\xF6\xA3y*\xE8+4"BYe\x91\xC4d\x88\xCC\xD0d\x89[<D\xB6\xB5\xCD*,S9IWL\xE40^\xBFnG\xED^Ƽ 9\xAF\xA6w\x99\xF6=E\xAD*\x83\x9A\x85v\xC9
+E\xB9\xC43\x96$\xDF9\xA0`\xB3\xFE`^\xDE\xF5\xAFoÇA8
+\xA7\xFD\xEB\xE1\xFD\xD9p<z\x98LË\xF02]\x84\x9D=J|A\x82\xBD~\xA6܌\x94\xFD\x8Cm\xFEx\x9A\x9DNe\xBA\xAEѱ\xFAk\xED{}@\xF6\xC5\xF4ཚӦ\xF61-I0\xCA\xD39\xE8+\xA5Sf\xC3\xE72\x9C\xC0s\xE7\xC4\xEE\xDD.\xE1\x89T\xBB\x8C;
+B\x90\xC7\xDCXb\xD9`*\x81\xA6\xF1H\x8Fa\xC1ra\xE9.\xBBl\xAE\xE5^\\xFF\xBD\x8EQ\x88\xD5q)\xB1J\xC6+UB\xECӎXƭK-\xCC{ͪ\xB6\xBFM~\xF2\xBE\xFFg]\xEF\xB8\xE1s.\xB8\xFD\xFA\x8F+|+]/\xB2\xEB\xCC\xF6#\x86\xB0\x92\xBA\xB5
+QHR˔5\xB8Fݥ\xB5\x89\x84\xAB\xD2a\xC1s\xA6L\xD1\xD5\xFE\xE6!\x859aQ\xC6(m\xEA\xED\xBD{\x8A\xFDv<\xE6\x8F
+:\xC3\xF7R_\xC1\xDARS\x96.A\xD3}\x9B\xF2\xF6-i.R\xE3\xB4\xD9!\xC9\xFBΩi\x96\xB1\x94F\xFBtg\x94b\xDF\xBC^\xEA\xCD\xC7捊A\xD4\xF2\xF5\xA6jї\x84\<BJA\xD6=\x8E\x9DM\xBE\xA2\xDF}8\xF9,=\x85\x8E\xA9\xF3;\x8E\x9F\x83\xB4\x9E\xBEī\xEEQr\xC1\x93\C\x8C77\x87-뎋\x81Ps\x86Γ\xE9xNg\xBF7\xEF\xF0Q\xFF&|\x98\xF4g\xB3p:j\xA8\xA4>\xA8\x86L\xB0\xFAB\xED\xFB\xFB\xF5\xCF\xF7\xF7\x9B\xF6;\xB2w\xF4mZ\x9B\xBFPK
+ {\xD7\xDA]\x93R\xC4g\xBC\x8E>Ҫ\xEA^l\xCD\xCCΛ\xF7\xF6M\x8D\xD9\xE6\xDA\xE4!*at%0\xCC\xD08#EN6\xAC\xC8\xE1QȪ\xD6\xC6}\xA8҆\xC2\xDA\xE8\xA5,)\x9Cuߣ\x9D\x95m\x93%f(\xB8aS\x95\xE1\xCDt\xB2\xA9\xA2\x83\x83 \xAE"\x86\x96ǃ¹\xFA{\xADV\xAB\xB0\xBA\xD7EI*48\x99\xA2s\x85Dg>\xC3O\xDE\xDE(\xE0\xCC0\xBAV\x8F\x82\xBA\xB9/eY\x89\xD6z\xEC5\xD9@@ -112,145 +124,54 @@
\xCB
D️\x84=\xE8\xDE>?P7|\xFBx`\xB1\xD5\xFAs\xB6-`\xF0\x8F\xD4\xCE[ms\x81F\xB4"\x82V\xE54\x96\xC4!(\xED@O\xC7l\xA4bn\xD2\xF6\xD3}yϧ\x93\xF8\x9D+\xA2rX\xA4\xC9<\xB9N̒\xBBi\x92ƣI\xBCX0\xB5\xDEV9\xB9\xBD\xC1&1\xD8܌8\xF6t\xB6fZ\xD0\xC9ֿ\xC3\xC8\xDE\xD8,\x84\xB6y\xE0\x81\xD6\xFFhtÖDx>-\xA5z\x80\xAF\xBBF{ \xFF\x93\xD8y<\x8A\xC7\xC9.f]f𗷃\xB4ۜ[\xBF9;o\xD7ӽե6\x94\x91 \xEFK^\x81\x9C,\xE5o\xBF\x98\x96m\xCA{\xD2\xD8v\xEA\xAA)\x9D\xAC\xBD\x912\xD2\xDB\xEA\x9F)\xA7\xF1\xC5E2\xBE\x8D'7\xC9\xDDEr\x95\xCC\xE3\xC9\xE5\xCF8\xBD\xBC\xBE\xBA\x9B͓Q2N\xAEF\x9F$\xF8ca\xAB\xC8K\xF0
PK
---!\xC9A\xF6\xE2\xF5\Bn\xC1\xD8-L\x9BEb\xA4\xFC\x98R)v\x89p\xB5\xDAÂ\xBEf
-\x9F\xB64sk^\x83?\x89O\xA0PA[-\x8E:wttOnނ\x9AH❐Y-@]I:\xB5\x8C\xBD\xC9c\xD8\xDE;T)^\xB0(Pa\xF4\xDD35>i\xAB\x8A\x94\xB7T\x89}\x8D\x92\xBA6\xB9\x9A\xD4ْ '\xCB
-\xB7(\x87\xD2ݔ|0E7\xB4\xDD\xDBsE\xE7\xB9ev\x95 \xAB\x9EA\xDBA/\xE0N\xA4JONU*\xA8L\x8F\xEF\xADT\xF7"Vb\xB1\xB4\xAE}\xFC\xCB\xE3\xAD\xF0\xB4 \x83\x9CP\xEE-\xF7O24w\xCF\xBA\x8FH\x{1F19B7}\xAEw\vJ\x8AOW.\xBE\xA2\xC5\xC9*::\xF1\xCD\xD4wr\x92\xA15\xA7\x8A\xB9\x81S\x9E\xE6\xFB\x99\x9A\0\xBD^T\xE3\x8D\xF9\xEC\xB8\xE3\xF6g\xBB\x8B\xEEz\xB7\xFBι7u\xAD\xCCFyʩ\xC0\xAC\xB8d\xB0|[ʬ\xE7(lz\xF7e\xB9hF\xDAb\xBF)\xAA\xED*F\x85p\xC1A4S0^O&\xE9\x82^"A\x8C\xD7\xD37}EWElC\xA1EN\xBDb>\xB1\xFAUϝ}\xAD\xB8\xDAXҘVϨ7\xA9\xF6\xAF\x85[\xF8=x\xDF\xE8\x87v"\xF0%\xCD/\xF9\xC8"]\xE5đ_\xD5Q\x99\xAFN\x93C\xC4\xEER\xB8ce\xE1\xAC\xFD\xFBPK
---6\xBA\xD3[\x8Acb\xFB\x88\xD9_i\xC6S\x8A+zτ-\x9F\x8Dd\xF9g\x98\xE6{\xBA\xDD\xF2|\xA5\xF9\xFC\xF1\xE3G\xE41\xF9Ķ%\xC0A\xAA5#\xD4 "^\x93bI\xD0Zأa_Ȳ(\xBD\xBFՕ0\xEC"\xA16p\xFB\xA6\xE9c\x89\xC2Z.e\x9Abu\x95ӻ\x8C\xA5\xE0V\x98\xEEH\x8E\xB5\xBC\xFCif\xFC\xD1\xB1\x92n3\x8E#\xD5\xEC\xF6\xB0\xB7ش١\xE3\xEDu\xC4\xD4ک\xAB\x81ͤ\xD5\xFE\xC8m\x84-\xFC\xC0\x8Dr\xB0R/(\xE8b"\xEEDi\xCA\xCAnC\xE7L\\xB3a)\xED]\xF7\xC4\x8B:\x9D.v\x92\x95\xA5W~\x98\xB6\xF4\xA7\xABU\x89p\xD9S\xB7{\x938\x82lN\xC4¢t\xAB߀=\xE0\xB8:r\x93Iْ\xEE\xB2J\xD12\x83-\xF0\x9Eq\xF7]\xFC\xCA~\x94vOf\xE1U\xFEl&\x87\xC6;\x8D\xEF\x90NԛM\x95K\xA5K\xFA\xCD|\x920!\xBAtb\xBAe7\xAB\x8A3\x{DB56}S\x81\xF0 \xF5\xD9\x89\x86<\x9F\xB1R\xA8\x86!\x94\x92il-\xBF\xE0\xC0\xBD\xA6\xD0o1-5\x9ET\x83\xD4Pd
-\xD6P.V\x9E\xA1Td\x86\xF8\x9D\xCB5\x9Fu\x98F}B\xBD\xE6-\xAEzN\xF7O\V\xDA.\xB9\xF38
-\x82\x920\x8C2\x84A\xB3\xE1D<2$
-\xE8\xE4uJB\xB4J-\x8E\xCA\xFF\x80Y\x88\xD5\x9CT\x842ԛ@\xAF*\\xE7)cx\xA4\xD6pS[\xA8ZkQ\x82\xFB!\x9D\x8Fe\xEF\xEE`Fx\xE7t\xDE(\xB2\x83\xA8ԚME\xC5\x96\x8A\xB6ap\xD0i\xBEb1\xA1<\x9FMo\xC0!Z_\xA3\xDD\xC4:*\xA4\xFC\xA5\xA4\x82轶\xFF\xFF\x83\x95E\xE4\xEA\xDD\xF1\xEE6\xDAM^\xBD\xA12,\xF5\xAE\x94\x93}\xAA\xAAoO\xE7d\x93\x93U$\x95\xAC\x80\xA0~\x9EG$\xE0UFap+\xC9
-!Pk5q\xFD\x86F\xFFyY \xBC\xA8\xF9û\x9C\xFF
-2r\xCF\xF1\x9CH6u\xB7\x9B\xE4ABTl\xF1ER\xF9Ak\x9C;AP!n\xA3"\xA95\xC0x\x97Z\x8D7\x84r\xAD\xD5D\x94
-\x8D.\x94/\x8B\xAD\xDC\xB2\x8CTԄs-\xF0\xC8/\x94UXOc\x83\xB9Բ\xAA$\xAD\xA1\xD0\xEE\xFC=\xE4\xC1\xBBV#f\x814\xC9 J\xB2\xA4t4bz-\xF2\x86V\x98o9n?\xF2\xCB\xC3R
-\xA7\xFC\xAB\xD0ǹ)9\x85\x98\xA9=\x858/c-\xA4\xBF\xFB\xEE]\x9B\xA2d\x86
-\xD8m\xC9Ka\x8Bx\xD1\xC1Y;\xD0~\x93\xC14'd\x83\x98C\xEC\x98z\xEB1\xA5\xB7z*A\x98\x{16D158}\x9E\x93\xB4I\xD8P\xCAVIy][\x94L\x8Awv<P\xC5\xF6X1\xB1\xDAlƐ\xB8b\xE5+\xE5\xB9P\x95Ŧ@O9\xFA\xB6\xD9b\xBC\xFE\x81\xED\xC1\xD2\xE25\x86\xB1\x8C1\x9CpV\xE7\x85bʫ&W\xC2d\x82-"\x9A/R\\x82\xF9uG3\xBAI\xD6l\x85\xE2D\xB09ϓl\xE7\xB4c\xD6(\xABL\xCC
-\xD80y\xEFX`\xA4J_\xC7dk.\xE4I&\x9AA\xA4.A\x8BĜbYcY\xCA\x86\xDCB\xFC\xEB\xC0\x83c\x98,\x9Eޑ5\xB6ь?$\xC0\x8F\xD7\xF37o\x8D\xBF\x98\xC5\xC9Ü\x80Q\xBB\x93m\xAFz\xEC\xA3;_:\x92\xEE\xD4#\x8A\xCEa\xEBc\xF4ހ\xA2Y\xE6Wp\x83\xB2"_I/\xE2\xB2\xBBF+:N\xAC\x9C\x9A5\xAFܾ"AS\xAAQ\x8A\xD1+ \x93k7\xA5=\xB2\x9CL\xD7D$UK22\xA3U8l\xC1\xAD\xB4R\xFF\x95\x9B\x98\xE9\x84\xE7\xFB\x9399ٖ\xECDƔ'XC{\xB2 \xF2\xF8\xD9khrc\xD7B\x89\x84\x8E\xBFE\xEB!\xF8 \xA9
-^\xCAK\x8Bd\xE7\xDCA{\xBC\xE8\xCB\xE2\\x95\xB2\xE3\xD5\xEB\xAAV\x80\xD8.\xF9o\xEAĕ\xD1dM2\xEE\xE4\xAF\xB6\xB4\xCA\xDC\xF6[\xB0ӗt+dK\xC0\x89\xF6\xE5\xDF\x8Fq\xD6\xF9\xB3R\xD8>h| \xC0\x80\xADG\x86\xD1^\xE0\xE1\xF5+\xACM\xF2\xA7?Ss\x9Cų\xE7\xB2IW\xEB4\xEC\xF6\x98\x9B\xA3\xC1\x9E\x93K\xAE\xCB\xEA9wH\x95\x9E\x8E\x85X\xDBtq\xE7γP,A\xF6l\xF1\xEA\xB2ƌ\xD0p<v\x9B;\xCCZ,=\xB6͍\xF7͘*Z}\xAA\xFC
-\xAEc?,\xE0\xC3Q\xD4 +\xBB)\x96:\x82\\xF8r\x83{\xD0
-ڮ\x95\xAAZ?B\xC2?}~\xFF\xEEAd'\xF4\x8E\xE5\xABj=\x97g$9syD\xEE\x88O\x97\xA40\xA5\x87\x94,\x84\xFF/R\x86\xF2CDuȘ!\xF3\xA5\xFA\xE0J$Tw\xD5E\xCC\xC3\xC98.\xCEml\xBC\xAE6\xD9-N\xE4\xE1D\xA4\x93\xF8\xBFJj\xE6\xDE@}\xE5:\xDD\xEEtSdb\xE08dv\xF6\x98
-L\x88\xE0\xFFٸT\xF2O\xF2\xEA\xFA\xCC:徎\xDA\xFB\xA2\x9D\x93\xC6۟\xBAVǞX\xC2\xED\xD2Z\xB2\xF1\x99
-:Mc\xA7\xA5\xCA\xCE\xCF\xD5!\xC0=X\xA7\xAD.\xCFa&\x87\x92\x8C\xE6\xAB.q\xA3U|t\xFE \xCC;\xA36\x85\xF1\xF2\xD4A\xE2\xCCQ\x9E,i2\xA7\xBA\xA5r\xCF\xF3\xFAZ\xB0J/\x8A\x8A\x96\xE0%J\xD3]\xEC\xC0\xF5#"\xA3bm9=?\x9D\x86\xF2Gw\xBC\xA2z\xBDKEt\xD0I։Y\x8EfO%\xA1\x87t)\x98\xEB\xC1+-\xD7ǖ\xDA^\xF7$\xE4\xED\xBCEj.\xF2\xB0\xC3}Q\xA6\xC2m\xE3\xD66|\xCA\xCFWx5\xD3Ⱥ҃\xCBC-\x9EXA\xAF
-\x8Fnl\xED\x90\xCAF\xA8\xB3=\xD7 \xF6/\xAC\xAAʁ\xD8
-NIs\xC1\xE5\xB3/0+\x91\xE1\xED\xA7C\x9E\xAC\xCB"\xC7+\xE3sCFS\xAC\x91\xE7C\xAA\xE9\x8C\xFA\xD2\xFE6v5Q\xD70\xF0\x86\xAC\x8837J`-x\x81\xA4D7-'R\x92{Z⹃\xF8\xB1o\x80L\x84%_\xD1>-!\xAA\xAF`V\xBBh\x92\xD2'\xC1J\x8EU-\xB2\xB8%;\xCC1\xF0_\x90G\xC08!f\x88?\xBF\xF9\xE9\xDF\xDC2`\xC6p\xD2
-x\xFB\x93\xE6\xD5`\xE8\xAF\xE4IƜ\x8D>S\xC5ʑ\x89.\xB0\xD8E\xA2\x9F\x94\xC8\xE8(\x8A\x950\xB4G\xE9\xBDy\x87\xFD\x87T\xC7o4\xB9F_\xD1\xE8\xF3g\x9A\xFB\x90h\xE6-\xF0]\x87\xB0O\xB7TE\x9C^\xB5\xFF\xB6\xE9\xEE5\x86&\xB9\xFEm\xC7s\xF4\xE6o+\xD2N\x82>\xF2ԭ\xB1\xA4\xE1\x80\xEA\x99T霬 Òvfo\xBDSuL.߰\xA88l\x8110ʿ\x86\xB1\xF3\xDEx#\x8D\x96S\xF1\xD24b/\x8D\x8A?\xF7<\xDB~_\xD6n\x8D\xC6\xD7s*-\x88\xD1*\xD5)b\xA7_\xD0\xEBaV=\xC9\xDB\xEA2u\xB9\x96Jߚk<\x89\xAB\x8C\xE1d\xBB\xE9\x91+\xC9W\xB9\xE4Y\xB1U\xA5\xD7\xE0I\x82J\xEEyj^\x87\xA3w<Â`\xBF~\x90\x82yR\xAD|M\xD0c\xD8\xFC\xFCb\xA3\xA2\xFC8J\x81\xFD\xA9\x8Fu\xD1#\xFA>\xA2\xE3\x9Cr\x83\xEE1~x\xAC\xAEg\xE3u\xB7\x9B M\xBF=t\x8Bغ\xEAD/\xFB\x97\x89\xF5=(er@.\x8B{I\xC0P\xC6\xF6\xE6XF_#\xB6λ\x8DD)Y\x83+O\xCBd}\xC0!s&*=\x94)t#C_\xB6\x8DB\xD3{\xA6\xD7>\xAB֣\xE6{\xBE\xA4\xB7\xFBdC{\xAFJ\xBAR/-jZ~\xF6\xFDU\xBF\xA3\xC5-@\xB0oK\xDBs\xC1u-3\x80];\xF8\xC1\xA7uM<\xC55\xAEk\xD1N-\xB9S%\xBA\x9F|\x86\xC3\x8D\xEEٿ\xCE\xC9j\x96\xEAk+\xB5\xC9*i:;rOUfKE\xD6\xC4\xD2\xD02\xD5Z\xD0v\x82\xF9\x93>m\xA1SyW\x80\xD1\xE1\xA2
-\xE8{\xAC\x8D\xFDך\xD7\xF1\x96ջ\x97\xA8o\xB4(\xB7\xBE\xD87\xA8\xEA*\xDBP2w\xCF5\xF0\xB5*\xB6[\xBFW\xF4ƞS\xA3W\xA1\xB2\xA2_\x80-\xC6ҽ|Psi\xFA\xE4>\xA5"\x89\xF9>\xFDG\x95"~\xCFe\xA0\xE7\xE4\xC7]\xBA\xE9F]'\xC4\xF3~A\xB9,\xEBV\xD4K{\xA3z|/\xC4ҋ\x84\xA7\xB3\xC7\xE4K\xDA\xF4\xA2\xE1\xA8We\xAAZ\xED\xA3\xF0\xA8U-F
-\xDDPlj\xD0\xF6\x90\x9D(~{\xFC\x9E?\xBF\xA6Lu\xF6\x8B\xA1!\xEEI#\xB94\xF7\xFB0撇Ns\xE5\x8B\xE2wz\xD8\xE2iªD\xB6\xD5V\xC5/\xEA\xFAf\xE2.
-^\xB9g\xA1\xD5{\xD79X*\xC2\xDEQ\xB0\x91-\xE6\xBF\xFD=t7\x91\x87W\xCCF\xE2\xDAq\xD0u\xBC\xC3v:\x84\xF7Q\x90\xE2#\xC5x-El\x84\x9A4\xBA86\xF8\x93{\xBD\xE3Y*_xн^ʯ\xA5\xA8}h\xBFVRy~m\xB0\xFFͰ\x9A\xC0;\xF3tv\xF2\xB7\xFF\xD3\xF2`w \xF5\xF3\xBF\xA0}a2g\xBA\xA2P3V\xCEgބ՟\x8C\xFB\xBE\xA8\xF3\xD9d\xA6\x96\xFCy]\xF7\xF2l\x98\xCF\xC5
-6ѳ\xAEYy\xF3mzܼ;g]\x9Fy\xCF\xEC\xF9*\xA1>\x98!~\x8F\xF9e'*\xDD^e\xB9\xEB\xC2/O\xF2\xD3\xCAd敊\x94\xA4-\x9FV\xAD:\xA6\xFB\xAD[\xFE~Ҷ\xA5\xB6\x91\x93R\xA3\xD3\xDF\xFEPK
---\xBE\xE1 \xB8ʶ2Zݪ\xE4\x8C=eq\xC6Ҭ`\xFB,\x96\x9B\xE3\x88\xE9\xC0\xA3\xAF|+X\x96oW<\x8D\xF3l\xF3U\xC4\xF3"\x97\xF1V\xA8\xD5\xD1?\x9Bz\xFE\xBBG\xBF{$\xF7\x87,/hd\xAB\xB2\x90\xC9\xEA<K\xE1h\x9E\xBB\xB7u\x8CY.\xE0\x9F\xFD>KW\x97i\x91g\xEA-l\xDBp*l\x93\xE5\xDE3\xA7\xF9\xD0[\xFFA \xD1\xF1\xDCN\xB97\xC7\xF8\xF57*X\x84jM==b\xF0#\xBE\x81Ë\xFDF\xE8\xE80@\xABWţR#"\x9E\xB0\xCF;\xC1J\xB0\x80<9?ؗ\xEB+\x96\xAD\x87d\xD0\xD8?\xF8\x8F\x9E\xD1\xFFyV\xC03\xF0\xB4\xFA%qH\xFF\xFA\xFC\x91텝\xE7\xE4\xE4
-\xA5 Y\x93`\xB6<\x8D`
-\xFB/v~c\xE3\xAC\xD8I\xAF\xA2,-\x80x7\xB6*\x80\xD7\xF3e\xDAxUh\x8E\xBC\x8BɋI\x97\xE9\x92\xDD@\xA2AyF\xB84?\xF1G\x95\x91/\xEA[Q\x9C\xEB\xD6u\xF6\xDCA;\xA9V\xD6\xF0\x94\xEC\xA5k?\x8B\xC6\xDB3\xFFe\x9BY+\xE8\xF4\xD20uq\xB6\x8AH-Vd!\xE5`r\xC3\xD22I\x82\e\x9E604\x94Mޢ(\xD4\xF7\xC8\xEA\x90lj~\xAD\x82-\xAF\xD8˗\xD4y%\xFFָ\xEC\x9A5\xA4\xD9\xC1\xAC4\x9ET\xF9\xEE~\xAB\xD3Y\x93\x85%\xB0\xA9\xC3!\xC5~^\x83XgY"\xC0ӆZ^\xA6\xB2\x90w\xFCX\xE9K\xB6\xE1 \x84:ݲo\xF6
-r\xB8\xA1\xA3\xDB\xF2Eلa\xDEp-B\xB2\xFC\xA1\xB3k\x8F\xE2. /u\x87։\xECl\xA5DQ5\xB6\xBAF\x{DDE1}7\xBE!:cL\x91\x97\xA2G_:\xB14\xAD\xE6^\xB0S\xE1,M\x8Ed\xC8i\x96>ͳ\xAC\xF0\x8CY\xF5zx=]M\xA0\xE3\x94`H\xC8,\xAD"\xFC\xE1í\xC8\xC1\xA4\xB4z\x98\xF9\xFB6\x931\x9B\x80,\xA4\xA6\xC1'\xA0\xF8\x8CAb\x93O\xE5J\x8FS8\xDF\xE7;W\xB7\xE3\xB7`\xB0J\xB1[\x8C\xC5W`;\xC0E\xB9\x95)O \xC4&%N/,\xE2\xD6\xFD\x99\x9F\xC1\xAC\xEA\xA2\xD6)\x9Df-\xBEu\xBE\xEBR\xBB\xB7M\x96$ٝG8\x9AX\xA1E\xAAqP7\xECN&\x8E2\x85\xB7UY\x80J&\xBC1\xD1\xF7VJ$\xAB\xB1\x96\xEF\xE5N\x82FA\xC7U\x9F\xA2</{5+ס__:4EA/k2\xDB\xC9h\xDA\xE24\x81|8\xEFX5;И
-\xC6.\xED\xC4 +^&\x85 \x9B3ЊA#\x90\x90\xD4\xD2֍\xB4\xCC11\xCE\xCCx
-xd*\xE2~n\xC2\xF8\xDF\xEA\xFE\xF4(\x83,\xAB\xA6\xA4@۩|ia\xE9\xE2\xC5es\xEE\x95TUٗ%\xB2\x80_]kȫ\xD2!\xCD\xEDw)\xDAk\xBEb\xE7-\x869l\xFA\xB3F\x99G\xFB\xFB\x89i\xC0
- 3\x89.\xEB \xA3H(Rj\xEFwY\x99\xC46>
-oH\x83\x810\x84\xDA\xA3W\xBCh\xB5\x9C\xC1\xC7X\xFAq\x81GS\xECkS\x96֙\x83S쾄P\xCDg\x94Z2\xD0K\xE8qOn@\xBAB=\xD8|A^P\xECAk\xE5h\x95#\x9C\xA3&\xE0\x86\xFE\xC5\xD0g<\xE3\x820\xB3Y\xD8\xC4\xD6\xC5L\x9D\xD9݉\xBCf\xEDu\xA2mۧT\xEB\xE1|\x8C\x9175\xFEr}\xF5oCL\xB9\xC2\xC2\\x80,\x825Z̠ـ\x97\xE3\xDD2.\xBB\xDBe6d\x80\x894\xE3
-5(\xEB&\xAB\xB9^\xCC\xCDg\xD0h\xC0\xC7ZEK\xD7\xD2)܌v
-\xAD\x963(\xBF\xE9<\xE9\x9AX\xA7N\xDE Y^\xAE2B\x9E\xBD\x99\xCD Q\xBA\xCF,\xCBá\xD7,ق\x8F5\xA4B?Q\x83'v\xE8\xF3-\xF5\xF6\xD9k\xA9~\x8Bd\xF0N1b~%7̀#\x82@\x83HZc\xD25\x85Av\xC7\xA0u\x98/\x89\xAE5\x9BJ\x8C?\x83 \x846\xF9ȡ\xA0D\xAA\xF3O\xB7\xC58DP\xAB\xE5t\x9A|\x9DyH\x83ZaZ.\xB5\xAF\xA9'h@\xAB\xC9;\x86(\xF3Ӟ\x8Fd\x88\xC4n\x90\xE9\xB4qMI\xBEb\x91C\x9E\xB3\xA4\xF1\xF1\x907\xA0A|\xB6"\x93#ť_\xFA\xBD\xA9ɛ*]\xA5u\2\xE3yY\xDA\xC9;\xEA{\x98_~\xB39<2\xF0u\xFE\xC0i\x95R\xABz\x960DX;_\xA2\xB1b:\xB9!T\x83y\xA6\xE1\xC0@\xAE)\xBEA\xFE\xC8)\xE7\x99u\xF1\xBB\xC10\x9D[Uvw\x81=Ng^\xC1C\xF0\xB2\x85\xF9\xC1\x94\x8A\xC1{\xAFģsɽدi\xCD%M\x82\x8B\xF7>3\xDE`\xF0\xD9_\xC2 \xAD܋\x83S\xA7{RW\x82op\x99\x8A*\xE4\xB8RZ[\xCFY\x91\xB6.\xBD\x88FK,K\x9C\x920\xA1\x86YI\xEF\xE2\xC2*\xB7\xB8]\x9D\xDBp\xB8\xAC"hć=<j\x88_^\x9B\xE9,\xD2\xC0]\\xF9\xDBN`\x82\xD1\xF2t\xD1T\xA7\x9D\xD6?\xA4\xDA\xD2\xC6$4D\xDAOC\xD4]\xF3t0\xC8\xF0\xDAL\xA7N\xCF\xC3wM:\xFD<\x86\xF1WOa\xB2\xA2\xA9jS\xA78R'z\xD0 >hTC\x84כM\xA7\xDD\xC1\xCF\xEE\xC4 \xEB\x93\xE0\xA3b\xC6F\xBB\xE9dUF\xD3\xD5\xFB\xB3\x90_\xD4\xD5O\xE2\xB7R\x8E[\xA3\xDD-\x82\x91\xF1c\x93\x94S\xBD+\xEDt \x9CSgJ\x81\xDC\xCF\xF0T~l\x88\xE8\xC24Dr\xAD\xD5t\x82-\xF8\x94ȱL\xE5o0\xC5\xDDI\xC0\xAE=u\xB5C\x9F
-ZSc\xC7/\x84\xF0Gc4UQKW8K\xFE\xAD\xBE&E\x9E\xBA\xAB!\xA6\xD6ZMg\xAA\xEFb\xEAyv\x90\xE8\xDA \xF6\xC3(U-\xBF\xE9%\xA0\xF6\xA2\xA4^\x80í\x98\xF8\x8A \xFD\x8E\xB9m\xD4\xEDm\xE0ǠuGoK-\x94Aц\xAC\xC9H*\xFE
-0\xAE\x85٢\xE9\xE2\xE3;\x89[\xB6\xA9\x8C\xEA/\x80\xA0b6\x96IO\xA1\xD6`N!\x94H\xC1\xBD*Z\x85\xA9\xA7\x97}\x96+Z@\x95\xB9r\xA5\xFE,\xC5D\x99\xC6\xCC,l\x95v\x90\xDD\x8B\x92f(3\x963k\x90\xF7]\xC1\xB4Ȇ2\xD2ҝc\x90-\xE6q\xCByz\xED\xC4U\xB5#g\xB9\xB6\xB7\xF8\xCC%\xF4DE\xBB\x86b6\x9A\xAA%N%\x96\xF5z\x8D\x8F\xBD\xB7\xE0Dq\x9Df\xAA\xD4!T慖ǫ\xA6@\xC2h\xEE)5Z$\xA4\xA4@\xFD\x91\xFDV\xF2\xA4\xE2\xB7+\x9F\xFA\xCEA!\xD8\\xA6QRz\xFB?1\xF9O\xC0\xF92{n+\x8C\xDE;\xDC\xE8\xA90'IT\x95?\x92\xFCl'dA\xD0"2y$m4\xCFsT{\xB45\xED\xF9\xF0\xE9}\xE4"ў\xDFt_\xA1\xB5\xCE\xD0\xF6?\xA4 \x8A7\xF3\x83wȍ\xBFX\xE2\xA88\xF0bkj{\xD1\xE3\xABR\xF1=\xF1\xCE(Fv\xF6XG\xAC\xC0\x93\xC4\xDF\xB2I\xB2tK\x8A\x9D4i\xABCc+ƞq5\x98\xBDbA3xSC2ƚ|&ص\x94|[\xD2\xE4\xFAU\xD2\xDAQx+\xF4\x9A\xAE\xD1_\xF0\\xFE|p<@t\xE8t\xFD+MP8ǜ\xC8\xF4\xF6d\xC9N\xB98\xA1\xE5\xBCv\xB2b(\\xAE\xC2c%!\xE1\x9F\xCAl\xA3\x8A\x88\xE8\xDE|oầ\xD1\xE0\xFAV\x9CEe\xE6\xB9E_\x97z(/,*\xE9\x9A\xEDF~õ\xF4\x8C \xEDX\xE1\xA3cᛣ\xAB\xF2\xDAs,\xBB&\xF4\x9C\xB5\xD6oС\xFC\xC7\xEFY\xB4\xE3\xB8AV\xE4\xD5\xDAg\xBD
-\xA40\xEDa\xCF\xD0\xDB<\xFB
-\xB7\xC1\xF8\xC3_\xE81.\xE3ًg\xD4d\x8C@\xEB8\xDCT\xFB\x9FA\xC89{\xF5\xACaUL\xCA=\xCB
-I\xB5\xBF.\xAB-\x81\x8D5lz\xFB\xE7\xAFF\x90\x800\x86\xABg \xDB?Y
-f\xF3Z\x95(\x97l\xC0\xCCШ
-\xC3X\xBD\xEF\x9CE\xE6u\xC2\xD7`N\xB9\xD0\xC5S\xAC\xE5
-\xE1\x87\xC6o4gק\xEF\x8BX\x9AӍjV!\xF0\O8\xE0G\xA5Fo/n \xEC_\xEDº\xA1fq\xA0\x89\xA9v\xF1&|3\xBD\xBB]\x92\x8D0\xC0\xAC8\x9A\xD6\xF0\x9A\xD3\xE6\xBB$\xE3\xDA\xC8b\xF4 \xB8\xB5Z\xC4\xE8\xB5J:\xB1]H\x98\xE9\xC6p\x90\x9E\x86\xD9\xE6\xDD.\xC4-g\xB0ʀ\x8F\xDE>;U\xC6į\xF7\x8BX\xFBcT7\xF9\xD9\xBC&9\xF8\x90xu\x91R\x8D\xA1\xCB\xDC\xD8\xD4#\xA2ze\xB62\x83R\x87`\x9C\xB4\x9A\xE4\x9D*˄ \x8E\x91_\xBB\xE9|\xE2&J\x93\xA8]d\x9C'p\xB2B\xBD\x9D\x88\xAFe\x82{@\xE8\xDE\xDEn\xAB\xC6:|\x9B\x85\x99\xCD\xCF\xF6:\x83\xC7ף\x8C\xD5\xFAԀ{\xEC=\x999-Ķ\x8C\xBDOT=6\x9C6\xA3C\xB7\x9B\xCE\xE7J\xB4\xECfǒ\xDA\xF9\xCASx3Z\xF5\xF5\\xBE\xD6\xA5\xDD\xC7\xF3\x9B\xCAߺ\x88\xED\xED\xE2 j\xE4\xDA\xC5]6ɫ\xE3\xAD\xD8e*Ta\xBAR \xA1V\xEC\xB2лi\xCD5\xF0sH_qn\xB1\xC1\x9B\xD0R\x87EK\x9F\x99ىn(1\xD5xF2\x95Sr\xCA0\xE8,\x8E4
-\xAE\x90Wx\xDA\xC7\xD0]\xBF\xFC\xB3\xC1\x81\xA1~\\xBE\xE5\xEFO\xC1\x83\xC8Y$\xE9<\xB9YOi/\xB4P\x95\xAAɶ1\xFC\xA9\xED\x84bP\xEB\x9AS\xE2P-&\x80\xBD\x81\xB6KVo3\xB3\xB0\x82wM\xDBϤ\x94.\x8C\x99)\xAA\xFF\xA7\xFDE\xD9s&\xD551\xEB#\xA3\xDCs\xA9/\x90q y\xC0\xB5\xB1\x97f)m\xCA}\xF1\x82\xBDz5\x82\xEF\xA67\xB7\xABL\xFF9\x86\xD9C\x9038lQ\xFA\xB8\xEEoծ\x91Jbza\xBB\xAE\xB8&\xEF\xB6\xC4(7\xFAd/"]\xC3\xC1ڂ3\x9E¼\xC0ܭ6\xA7\xAA\xB0\xA4j\x80t=\xE0\x8Eڬ9\x8AS\xBC\xFB&\xAA\xC8`\xFA0\xE7\xC8pF\xDE\xF7!;)0|\xAA
-\xEE=EJ\xF7\x8D\xC4\xFAU\x95\xD3\xD9Ѓ\xAC\x87\xD5\xC3\xC0cLK}\xE7\xCB1\xF5\xD7&\xC2\xE7ME"\C\\xF4.\xAA\xD1Um\xBE'\x93y\x90\x87^\xD9:[\xB1Л.&r\xB0\xF9=\xC3\xC4\xD4\xC9?\xFD\x99\xA3\xDB\xE6G8\x95\xBF\xD4\xFEN\xE7\xAB\xD9\xFC3\xBD\x89˔\xAE\xF4B\xCB\xF7n2i\x8Fe\xAC\xC1\xF6\xE2\x{D8A2}\xB3\xBF\xD1\xD6\xE86\x80\xB3o\xCD\xC6\xDD\xF6EU,F\x9AY\xA4\xB6\x93\xD5\xFFF\xA4Ǐ\xC67\xE0j\xDFZy\xFF\xFA\xFA●\x9F>|\xBC\xF8\xF4\xF9\xBF\xF1\xDBm\x88\xD0|\x83\xAD\xEE\xDD_Z\x90\x9B\xD6!\x8E\x93\xF6gi\xBC\xCF9>.2\x8Dl\x82q4@* \xF8\x83{S\xCA$\xA6\xD4K\x96\x8A\xBB\xFAK\xF7-2\xCA\xD6\xFCm\xB7\xFE'
-\x82\xEE\x9EL\xE3\xC5\xC9\xDFO\xFC\xB7\xF9\xD1\xFD^
-$\xE7fwe\xCB]f\x9F,\x8Dg\xD9d\xAB?\x98\xEA\xA3$֟\xD9B\x93\xFCy\x97gwt\xE9\x8C\xE7\xF5\xA6ɳ\xAEQy\xE3m\xBF\xBD߸;G]y\xCF\xE8\xE56\xA5>!~6\x84\xFDZ\xAA´\xD7U\xE9\xBA\xF2\xD3JAzZ\xD8J\xBA6\x91\x9C\xB5\xF5әU\xC7p\xBFwk\xC2?N\xDAn\xD45\xAA\xB4\xD4\xDA\xF4\xF7\xFFPK
--\xF0\xF7\x85\x86ֽg'EU\xE9r\xC2\xDE}\x84\x862P{C\xB0؎pK\x82;\xACU\xA0\xDCG\xBB\x845\xCEt\xDE\xF0n\xFC\x90Dz\xAC\xB0!\xF0\xA1)љ\xE0;\x83e\x8DA\x9B\x86b٩F\xFE<
-\xC5ˋ\xE2\xA2\xE0\xAE\xF7A^\xE6\xCCbʡ\xB3\xE5u\xE6\xB1\xFC\xDF\xD7|\x92\x93\xABժ\x80\xFC\xA0>PT\xFA8\xC1\x83aKr r s]\xCDK\xA9Ͼ@KAA\xD7\xE25
-\x86\xA8P뛄u\xFBe3+\x9A\xAA~\x87\xAD\x96v\x96\xF7,\xF6\x92\xB8--\xB2\xCDb\xBE:|\x85\x9Cv4\xFALd\xF9zA\xD38϶1]D4/r\xAF\x99Xl\x81\x91\xFC\x97\xE2&.v\xF2\xB3\xBE\xDDey!G\xB6(\x9E,\xAE\xB3$a\x8E\xE6\xD2\xFEZ\xE5\x98\xE5\xFE\xB5\xDDf\xE9\xE26-\xF2L\xEC\xA0}\x96w5w\xBD.\xDCt^R\xC1F\xBD\xA6\xD8\xD7a(\x80\x98\xFC\x85&<\xA68\xA3\xB7L@\xA8\x85fQn\x89T99\xBD\x96\xDF${\xC5v,\x8DYF\x91\xFD^J>\xE1\xFF\xA4˄\xDD$l\xCBF\xF6\xEB\xE0TG\x91J\x98\xA6\xF4) GQ\xDC)%Es_\x80E\xBC\xA5ц\xA7c Yβ\xE2\xB0G\xF6\x91\xAE\xD7,\xB5)Gұ\xED.\x81\xA1\xDEќ\xC2o,G
-\xC3|Kw;\x9E\xAE\x95i^|\xFD\xF5 \xF9\x9A|`\xBB\x9C \x90\x8C T\xFB#d\xB2d\xC5c))2\xE2\xF3C\xBA\x9A\xDF \xAB,\xF7\xBE\xABj\xB4G\x92\xDF ƺڀ\x8F)\x97\xE0\xD3]\xA2eD\x89*D+\x89\xEC\xF8\x84\xC0\x87\xFD..\xF6[\xA2\xF5˟-ԶYM\xAE͢m\xA2\xA7N6_쟪\x93\xADH\xC5\xCC2\xA8ܭjY\xA1]fY\xC2h\xDA\xDE\xFC6\xE5\xC7\xEF\xC0\xA4\x9F\x93M jW\x8A\xE0P@\xEA\xE0\x92\xEA\xA0\xE7\xD6c\xA6\xA1/\x83\xD2R\x83\xD0\xEF\xDBX\xCFB\x82\xFF\xAA{8m:1\x9BU\x90\xF3n\x8E\xE7\xC1
-GaTT\xADC\xBF\xF8Fl
-y\xA0-\xB01@\x91\xAFyJd\xF1O\x89+\x89\xA8\xF1\x9F\xFA\x9A0q]T\xDA\xE2L'EsZ\x93\x8C\xA3E8\xE1\xA1~\xA9\xA9vs\xFD2N\xC78>4B\x93zel0=\x95\xD2Jdxq\xD1F\x85\xDFc\xE8\xDC\xF08\xC6\xEE\xACY\x9A_\x90\xA7\xD5\xA1\xE8\xE3\xB2,\x98\xA8\xFF\xA4>\x92\xD0\xCC4hR֤'\xA0\x80w9\x8B\xEE\xCD\xF0\x8A\xB0\xB5fk\x96\x9F\xF8\x98\xD8\xD0\xC6ߺ(l'\xD0A\x85\xE3eu13m?}\xDA\xD9F\xDF\xD0\xF0\xA2Um\x83aD\xEB
-uV\xC0\xD4\xE5hH\xB6R\xA1Km\xC3"\xB5]\xEEPg\xB9 \xD8\xC0lˤ\xE0a\x83\x99mX\xCEUlͭ\xDE\xF43àL\x93FQV\xA6\xC5yc\xAD\x9B\xE9\xF9\x9D\xB1)\xD7J\xB3\x81%$\xA7M\xA6\x95:}4\xB1\xA0ƺ\xBF
-\xB4-*ʩ\xB0&m\xB8\g;zF\x93vsx\xBE\xA6R+\x92\xAC\xF96yM%G\xDDTi\xF0
-\xAC:{\xD5cQO\xA2lw\xF0\xF4\xC4,Ёf\x84N\xA6\xB1F3q(\x81\xAF\xC1\xDE\xF0j\xF35\xC7\xC34\xCDǒ<\xF0b#\xBF\x95ʳ\xE2\xF0\xC34@z\xB6\x80-,\xA8\x9A\xC08\x9E\xC1\xA2\xE2@sfĀd+\x9E\x9B8\xCCR!\xCA4\xB6 4\xD0P\xA5u}`\xC1@\xEC\xCDǤ\xFB\xF4P\x820듒!\x94\x934\xB4\xCE\xD8plC\xF8\x83d\xAD\xF5ucQRG2\xFD\xB0c-+LW̶\xC1®\x93"z\xBE&\xA1/\xE6\xE8
-\xFEl\xBB+\xF26c\xB9<:+1D\xAE-\a"\xCCF\xA5\x99\xECEu"\xB1\xB2\x8Bb\x8E\xCE!\xF0\xF3\xF5נ5\xB4\xDD(S\xB5q\xE4߾9\x8A\xAE\xE0\x80ްt]l\xE6r/{$͙\xE3Q\x92\xC7|\xBA&\x859S\xB3|\xFE_\xB4\xF5\x87\x88\xE2\x90\xC00\xCA\xD9\xCAq\xF1\x95\xFA\xE1FDT\x93`\x92\xF0;\x92qR\x9Cۤ˦\xD8&\xF78\x90\xE3\xA9H+\xF3\x9FJk\xE6^G]Y\x8B\xF6p\xBA\xAE2C\xE0d=\xB6RL&\xC4\xF0v_AnW\xEA+yhA8G\xA2ԷQ[\xA3\xD2:h<\x83g\xEAg\xBD\xF7d\xB1t<u\x8D\xCF\xED\xA6\xD34vV\xAA\xFC<\xECL1X{\xE0\xA2C}\xE0\x80\x99J\x9A\xAEK\x9C\xE2V\x9B\xF8\xE8\xFCAXv\xC6l,
-\xE3\xF5\xA9\x85\xC5\xCCq\x9E\xACi\xBDwT\xAEy~A\x97"ɂ\xAC\xBF\xCC!J\x94\xAE;+!\xF4#"\xA1bc:9\xBB8\x9B\x86\xF2\xF4;\xDEP=\xAA\xE3a\xA9\x98\xF6\xC9e\xCA-\x91MM\xABl\x844k\x8F֯[\x80j|\x8F'\xA7\xA9\xE0r\x89\xD9g\x98\x95H\xE0KqH\xA3M\x9E\xA5\x98\xAD\x9E\xFE3\xC7F\xA4Љ\x898'\x99.\x9C\xC3\x85x\xD5iA\xAE\xC1$i"2t\xA5\x9E\x8B(w8,!='t\x92\x93\x9A\xA7x9\xE2ۮJ\x8B>\xA3Z\xC1\xAE\xBE\x80Q\x95k\xB0$eO\x82\xE5\x9C&suZ\x99\xE6\xB8\xF1_\x90\x8E\x81 BL|\xF5\xA7_\xBB$ \x8C\xFE\xA4\xC8\xF6OZV\xBD[\xA5Or\xCFY\xA3\x99\xAAV\x8E\xCDP\xE5\x8F\x9DE\xFA\xE0!\xA1K0\xABa\xE8\x8F\xE21v\xF3\xE9\xFBL\xC7o4u\x9A\x9AGW<S_\x87D=o\x81\xB5\xA4\xE1\x98x\xD8T{sg'<k\xFFVi\xA7\x9AC\x9D]\xF7\xB2\xE3\x85z\xF1\xB7\xB5\xB5 \xC1V\xE4\xC9\xEF\xE1gz@\xF3L2\xAAl.F\x81\xC5,\xB6\xA5P\xDBY8\xC4a \xA3\xFC6\x8C\x9Dw\xBB\x8C\xD4ZN\xC5K\xF3\xE8R\x9B\xF6ho\xC0l\x86ĹG\x88l\xBBcY\xBB4\x9AXܩ\xF4\xFC!A\xABT\xA729}w\xAFCX\x81\xA3E\x9Fd\xFA٢\xE62Ln\xF59\x9E \x83ĈY\x91d\xB3\xE9#g8R\xAErʳl\x87\xDCp=C\x93\xDC\xF3\xD8\xDCH\xA3\xBA\x92\xA4Z\xC4g\xB4ZŚ`ǰ\xF8\xF9;\x88\xAD\xDA\xFD\xE3σ\xD8\xFA\xD8}-ݕ-\xA7\xFE\xE3s\x93\x9F\xEB\x93\xFF\xD6E\x94+\x91\x95y4h\x91\xB9\x97-_y\xF4n\xEA\xEF
-\xC8MC+\x9F\xA9\x85\xB6uZl
-\xF6\x92\xD6
-\x9E(\xCCa\x8Fk\x91<1\x98+:\xAF&JF榑\xE1/\xDBB\xD3{ \xC0^\xE5\xDBQ\xFD%\xD2I>\xC5Ǯ\xE0\xC5\x87 `/\xDE`\xFAۼ]\xA0\xFD\xD8\xF4\x9D\x8A{A\xFA\xCF1\x9B\xD20\xE9tXj\xDCz\xE5
-\xC7`\xC8\xE4\xABoF\xD4`8\xC3\xF6j~qD$"\x8B\xB8|F\x9F\xD94sd֫\x8E\xDD\x90*e8}(5\x9EȐ0XLũ\xCA\xEA\xF8\xAE\xD6}\xE8e.\xD8\xF2\xCFt\x88\x9A;\x80R\xD3֕I^Qج0Mb\xF6\xB6\xED;\xEF\xA0\xB1\xFA;(\xE6@\xAC¨\xABp$\x93\xC96\xFA\xA82\x8Ff\x9B\x97\x9A\x82\xDA-0\xDA_T\xB4\x8F\xF5\xB1?\xAD{\xEFY?:\xAB\xD77ZTX_\xDB\xA8F\xEE\xC0\gr\xE6\xEEY\xA0\xBET\xC5\xF6\xAF\xAB\xF7\x8A^\xD9sj\x8C*TV\xF4;\x8B \x874\x95j\x89 O \xBD\xE2B3\xF3c\xFA;\x95" \x87 \xEEn`/\xE5$\xA9t\xF3m\xCD\xE9b?Y\xB2\xD1V\xA5\xA0\\x96u+\xE0\xFA\xA6l\xE8\xB9\xF0*\xA9\xC2\xD3J1\x96\xBF\xC1pT\xAB2U\xAD\xF6\xA3\xF0\xA8T-6\x80eY\xD1Uѕ!\x8B\x91|7\xF9\xD6B\xD0~:\xE5\xE4\xDBN2Q\xB2A\x86m2\xBD\x97A\xB9wKӭ;\xC1\xAB\xB1\xA9\x8C\x83\xB6d\x82tu\xD6t k\xDF\xD4\xC5>^xO\xBF\xFA\xD7muo\xEA\x82X\xEF;\x92\xF0%l`
-\xE0"\xC2b8{\xD0\xF4\xB1B\xA7\xF7\xB9WBv4NmLX\x863\xB3\x8F\xBEz\xDDw\xE51&\xB3\x9B$\xDAPo\xAA\x9F\xBB\xF5ZA\xF4\\xDDk\xE45\xAD"\xA8[\x96\x81M\x81\xDC]\x86\xF3\xDF\xFF\xBA\x9Dɱ\xC0\xB3\x91\xB8\xB6\\xF4Tﰝ\xF5\xE1\xFD(H\xB1\x87\x91j܃o7\xC7ね\xFA\xF9\xE8\xF79\xB9}\xB2\xE6\x8D\xDB_\xE1l\x90\x8C{\x9E\xC0'\xEF{\xE4\xC4%\xF0\xFBR\x9DԼ\xCA\xFF\xFE\xDAع\x8C\xA4\x83Y0n\xA0ab\x91n\x99\xE1\x8F\xE6Q\xA2 \xF3\xBB\xAC+\x97d؇\xA7K2P?\xCE\xC0\xA2D\xD3˅\x87hO>\xC9pj\x96\xF5\xE7\xD44JȮI\xF5,\xEE\x9E\xD6\xFE៤\x84\xFF\xA2\x88\xAB\xC9 \xEA\xDE\xD8m\xBA\xA79\xA7\xE8\o\x81\xB1\xB5\xE4N\xBEm\xB3h\xEDo\x9C\xF4`\xDCu$\xA4/TF\xB8\x87C+5\xB7Ԫ\x9B\xAF\xBE<^yp\xEC\xB77\x9F\xEE>\xBC\xBF\xBB\xF9\xF0\xF1o\xF8b82<\xBD\xEC\xA5{\xFD\xE7\xE5\xAAq\xE5\xB4\xF9\xF8\x9A\xF7\xB7<)2\xC5l\x84\x99\xD4H\x9C\xFC\xC1\xBD,y\xCB4\xD5s\x92\xB2\x87\xEA\x8F\xF6)k\xB9\xC9\xF3k\x83\xFD\xD7\xE85\x83v\xA6\xF1\xEC\xF4\xEF\xA7\xFE\xAF\xF9\xC1\xFE\xB9\xFA\xA8W\x9D\xCE\xFF\xCB^&s\xA6+
-\xB5`\xE5x\xE6uX\xFD\xC1\xB8g\xBE"\xCCg\x93\x99\x9A\xF2\xC7M\x9E=\xE0\xE3D8\x9EkXD\xDB\xDEk\xF3\xC7\xDB\xFC\xF5q\xE3nuu\xE4\xA3\xE7\xEB\x94\xBA\xEF\xA94|\x85\x8B|_\x8AB\xB7WY\xEE\xAA\xF2˓\x87\xF4\xAC0\x99ye"9i\xEA\xA75\xAB\x96\xE1~iׄ\x9C6}\xA9m\xE4\xB4\xD4\xD8\xF4\x97PK
-++DH_\xA5E^\xC1\xE4\xED\xD8v(z\xAF\xE7\xEB\xBC\xF1U\x9D\xA09\xF2.\x90g\xAD)]\xE7sv+O\xFC#\xF7\xC0bV\xA7X\xF3\xEAR\xB5\x9E\xAA\xB3疢\xDA\xB9 \xB2\x86G`/m\xF83k|{\xE6\xD9k\x9D^kPgg\x8B\x94\xA0(\xAF\xFAY\x8D\xDA\xFC9\xE3\xB0N\xE6A\xB5\xA9[D\xC0ᘰ\x975\x8E\xAA\xDDoO\x9A\xFA\xFB-M\xF7T\x83,Y\x{1D9B44D}U[\x84uD\xCBw\xC1nyŪ"\xA4L\xACX\xBE\xCF2ˠ\xE4վ\xCC\xCA&\xEE\xD1$\xEA{jt\xC8C\xA2_\xAB\xA0C\x83{\xF9\x92:w\xF2\xFFW
+e۬!͞\xC8e\x98㉓\xC8o\xF6o\xF5y\xD6da&\xD8\xD4\xE1\x90b?\xAFQ\xDCEƓ<\xD8\xF2:\x95\x80x\xE3\x9F`\xA5/\xD9*\xC9 \xC4\xE9\x96}\xB3o\x90+8\x98\x80\xC0\xF5<\xBA-\xAF\xF1\xEF\xA0(\x9B4 \xCC\xDB+c\x89\xDB\xC5Z\xE4I\x86L 6\xD9\xE3\xF2\xC2\xD2ĸ?\xFD'4a溨\xB5ř\x8E3\x80\xF6\x8C\xC6B\x87H\xC2\xFC\xAD\xA1\xCB\xED\xF5Ƹ\xE3\xBC\xD0X\x92=$YS\xC1`\xB4\xE7\xE9\x90\xD6\xC3F\xC8+\xC0\xB2\xE4FH\xB6\xA5\xB4\x81g\x91\xA3\xFF\xDF\xE7K`\xF2\xBA\xE3Z;\xF8rn\xF0\xD9Ko>&\\xD4C "\xAC\xF7\xC81\x94mu\xEDG\xB7\xC9\xD30\xEB\xF7#q\xD5Z\xBA\xB1+yp\xB6Y&r\xE1\xEB\xC4j\xABd\x9FU6\x85\xBC)`A/\x93\x9D\xA4\x96+\xCA\xFD\x91\xA5\x9B7\xA9\xBC\x94\x96\xFC\x93G\x83\xDE\xE6\x97=\xEC43\xECz{\x81\xD10\xE17\xFE\xF0gj\x8Cs\xE0x\xF6✚\xC4\xB4\xCE\xC3.\x85\xCBa\xFF3H9A\x84\xA1u\x8A\xD1\xA9\xF4,+$\xD5f\xFC:w\x84\x92Jf\x87)\x94\x8A\xE9\xA1_\xEC\xB7w 10V'\xB1\xB9 R\xE0Sؘ\xE3+\x86\xAA\xC3du\xC8`\xCCli\b\xA5\xBE\xB8\x92i\xA2I0\xC9D\xC4vc\x9C+\x83\x93;\x91\x89\xEA\x80B/\xB5?\xF7\xD4X\x85\x8F`\xB3\xB0\xB2\xF9\xFB\x81\xAD\xDA\xC1\xE3\xD7Q\xC6\xEA}l\xC0A{$\x98\xE3Bl\xEC1Qul8\xADGC\xB7\x9BNG\xA5?Z\xB6\xAB\xBF\x85DMY;\xC0Sx3:\xF5u\xE5R")\x8DR\xEE\xB4\xB1x \x863\xB67\x87'\xA8\x91w^(nw\x93 \xDB@`\x9E\x94\xE9\xE6\x80]\xE6\V\xBA+ \xA2\xE1r\xC1\xAE)-m+\xEC\xE0[\xDCC\xFA\x{22E3C07}
+ނ\x96[.Jr\xF8\x99^\x9D\xA88PS\xB8\xA0mpuT\x86\xC3k\xF6aj\x95\xE4\xD9*F\xFC\xA3r\x8F\x94ވ\xCClX?C\xB8\x9B\xC4\xCC\xCB3{\x8C\xDAU\xA4\x980\xD9\x93\xE1Cs
+J\xE8\xB3\xF8\xCEeR(Y\xEC\xCB4j-\xB9\xA5\x96o\xBCc\xFE\xE6\xA5,\x8A\xFE;\xF9L+x-\xF6u\xBE\xE3\x81\xEC\xF2HS+^\xF36[<\xBD\xA5\xB4\xFB\xC0%\xD3I\xF5\xFF6\x81\xFD)L
+6\xB8\x92\xA3?ч&\xB4\xF7\x9C\xE3I\xC16\xB1 ;\xB1ó\xBE9\xE5\xBEx\xC1.."p٪2\xF5\xCF\xB0\x87(' lX\xFA\xBC\x8E7W5\xE2$\xA6\xB6늫\xF7ݦ\x83%ʍ^)I\xAAT\xE5p0\xB7\xA0T\xDF.oq_+\x91\x96VW,\xCA!\xD1+I+\xCDU\xB4\x89\xEF7غdƫ\x94\xDAj7b\x8E\xFEt\xE90s7\xEE\xAEr0\xADRW\xA1̮s`\xB0R\x8C\xBDZ#|LSUMMb\xD6zV\xEE\xDAB\xD0}|\xE4D\xDBM2^\xA8A^]⼥\x88ۻ\xDD薗\xE0mҜ\xC1\xA0\x99\]5P\xA9\x99\xBA'*\xEFM,\xFF\x86\xAAnB\xC1\xA4.8\xF5>c\x99\xB8\x83\xFC\xBD\x90)֞\xD9\xEBs\xA6\x8Fj/x\xB9σ±\xA3qcb.\x9C\x99}\xCB\xEB\xBE/+1\x99\xDDX\xA9\x86:R=\xF8\xAC\xBBm\xD6\xCA`\xE0\xDE[+-iu@\xDDN\xAC\xC9j
+\xDA\xEE\xFEh\xC2\xFFG\xE3n&\x8F\x80\xAB\x9C\x8D\x84\xB4\xE3\x9D\xA7\xE0x\xECt\xEA\xA3\xD0\xC4F*\xEF+\xEF[\x951\xA2EE\xED\xDAwޗ6\xEF3,\xA4\xC0sJ1\xCCԌ&\xBCJ\xD0\xCD\xE6\xD8'
+gͱK\x92\xAFT\xAA\xD2KbfB\xAA\x83~+9\xE5\x89\xDD2\x86iYw\xB9\xCF\xFD[]\xBF\xDA!\xF5\xF5\xDAL\xB9\xDDNԑ/\xA4\xFB\xB2\xC4yu\xA9E\xF8\xA7\xDFn^\xEA\xDCҶ\xD3]\xEF\x93r\xA9,%\xFFe\x8F;\x99ļ\xFA\xB4\xE7\xE8\xF2\xC83K\xD3A\xFB\xE82\x84\xB4\x9B\xDD ୦\xD3^pLFzJ\xAF\xC6u\xCB\x97\xCA\xDB6\xE4\x81\xD7m\xC0pٕk\x97\xB8\xDB4\xF6\xCE\xEE\x92\xE9\x8B9\xF5䰻\xA9\xE1J>\xECv¥\xA1\xC9c\xBCx\xE1Bn۾\x83I
+\x81j<\xF6\x9B\xC1'\x83:\x97*t,\xDFƇJl\xB8\xD3AB\xD7 M\xEEV\xE1\xA9P\xEFJ^\xB9\x8A\x89\xE8\xDD\xBC\xD9AJn\xB6t\xC41Z{ùޏy?\x93\xA3E\xD1\xE6\xDBg~e_\xCB@\xDDs\x95Q\xF0\xED \xB3\xE1U\xA6\xBD\x9B\xBB`!Ǡ2\ՆA\x86ZX\xF45!\x91\xD2\xE5\x83V\xC2\xF3\xA0_\xFFѝ\xD2Ғ_\xA7z:\x88Ϸ\xBCqyK\xFFU#0Qΐ\xEDRN\xC0\xA9\x8Fgn\xB4R@\xACS\xEA{[`\xEDa\xDA>\xA37\xBC\xF4\xF1&F@+\x9DN\x82\xE9vF\x93p\x8DSn\x9B)\xF2\x98%\xDB-\xFAh\xF4\xAEX|\x8FO8\xAC\xB5P\xEBr\xCA\xD9R\xE0![IA&\xE5K\xE9k\xAA^\xD4n\xA8\x9B\xD7\xD0ːN\xB4ZN\xB9L\xE6\xF1\xE8+\xAA\xF2\xD7\xC2\xDA\xD2hn\xBEJ\x95;\xB0yp\xD7B(\x83\xD1
+\xF1\xF5\xF5!\xF4\xD3˰|\xDA/\xC3X^\xE9\x80N\x90\xD9`(\xF8NsQ[v\xF4\x9D\xB3F\xB2\xBF\xD9\xF8u\xD6h>ej\x8A|\xC0?\xE2\xC2\xD0*/\xF4\xB4a\xAE_\x800I&\xDD\xFD.|\xF6\x98\xF4\x88z\xC3о\xE41\xEAc\xEB
+\xFD\xFB3\x8F\xFF\xE23^Y.\x85ڵ\xB8\xC4\xDE0>e\xD4
+\xBE\x82)+\xE0ˁd\xF43\x97\xD8t\xEB\xA58٬f\xFA\xF6\xCF6;\xD3GV\xF1\xAB+\xBA\x9A\xA5L\x9A\xB8\x8B`\xCAխ6\xAB\xFFEh\x94\xC9'v\xE3mT\xD6\xBD\xE09\x8Bz4\xEB"\x98>\xFD_\xE79]
+\xE46N=#\xE9\xFB\xED\x90z\xD2\xC3r`\xCC}\xC9=\x88g\xF4U\x94g_S\x83\xA7\xF6\xEA\x9B\x9A\xF0\xFB;\xEDM\xF8\xF9-&\x80\xA1\xC9#\x8Ad\xEB\x89+\xB3l\xF7끐\xAFt\xBB\xA1\xA2\xC6F\xBBA\xC4}\x85Z!\x90ԧ\x8A\xEA,\x8B\xAA\xC5]\xCA\xFF\xAC\xFF]{\xC2.\xC7Y\xA9\xDBE0\x82+\x8D<,x\xA3\x9E\x8B~I\xA8a\x89c\x82\xCFk31E\xDC\xF7|Y\xEE\xC2\xD43#\xF7\x9A\xB8\xF8\x9A\xBD\xFF\xD8̏\xF7\x80\xE2\xD4r
@@ Diff output truncated at 100000 characters. @@
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <wal...@us...> - 2014-02-10 12:39:03
|
Revision: 15391
http://sourceforge.net/p/andromda/svn/15391
Author: walterim
Date: 2014-02-10 12:38:59 +0000 (Mon, 10 Feb 2014)
Log Message:
-----------
- getSession() is not deprecated
- @Override in some methods
Modified Paths:
--------------
trunk/cartridges/andromda-spring/src/main/resources/templates/spring/hibernate/SpringHibernateDaoBase.vsl
trunk/cartridges/andromda-spring/src/main/resources/templates/spring/hibernate/SpringHibernateDaoImpl.vsl
trunk/cartridges/andromda-spring/src/test/expected/cartridge-output.zip
trunk/cartridges/andromda-spring/src/test/expected/cartridge-outputUML2.zip
Modified: trunk/cartridges/andromda-spring/src/main/resources/templates/spring/hibernate/SpringHibernateDaoBase.vsl
===================================================================
--- trunk/cartridges/andromda-spring/src/main/resources/templates/spring/hibernate/SpringHibernateDaoBase.vsl 2014-01-16 22:06:00 UTC (rev 15390)
+++ trunk/cartridges/andromda-spring/src/main/resources/templates/spring/hibernate/SpringHibernateDaoBase.vsl 2014-02-10 12:38:59 UTC (rev 15391)
@@ -95,8 +95,6 @@
return this.sessionFactory;
}
/**
- * For backwards compatibility with HibernateDao method
- * @deprecated Use this.sessionFactory.getCurrentSession() instead
* @return currentSession
*/
protected org.hibernate.Session getSession() {
Modified: trunk/cartridges/andromda-spring/src/main/resources/templates/spring/hibernate/SpringHibernateDaoImpl.vsl
===================================================================
--- trunk/cartridges/andromda-spring/src/main/resources/templates/spring/hibernate/SpringHibernateDaoImpl.vsl 2014-01-16 22:06:00 UTC (rev 15390)
+++ trunk/cartridges/andromda-spring/src/main/resources/templates/spring/hibernate/SpringHibernateDaoImpl.vsl 2014-02-10 12:38:59 UTC (rev 15391)
@@ -34,6 +34,9 @@
/**
* {@inheritDoc}
*/
+#if ($enableAnnotations)
+ @Override
+#end
protected $operation.getterSetterReturnTypeName $signature
#if ($operation.exceptionsPresent)
throws $operation.exceptionList
@@ -45,13 +48,16 @@
#else
throw new UnsupportedOperationException("${entity.fullyQualifiedName}.${signature} Not implemented!");
#end
-}
+ }
#end
#foreach ($valueObjectRef in $entity.valueObjectReferences)
/**
* {@inheritDoc}
*/
+#if ($enableAnnotations)
+ @Override
+#end
public void ${valueObjectRef.transformationMethodName}(
$entity.fullyQualifiedEntityName source,
$valueObjectRef.targetElement.fullyQualifiedName target)
@@ -74,6 +80,9 @@
/**
* {@inheritDoc}
*/
+#if ($enableAnnotations)
+ @Override
+#end
public $valueObjectRef.targetElement.fullyQualifiedName ${valueObjectRef.transformationMethodName}(final $entity.fullyQualifiedName entity)
{
// ${toDoTag} verify behavior of ${valueObjectRef.transformationMethodName}
Modified: trunk/cartridges/andromda-spring/src/test/expected/cartridge-output.zip
===================================================================
(Binary files differ)
Modified: trunk/cartridges/andromda-spring/src/test/expected/cartridge-outputUML2.zip
===================================================================
(Binary files differ)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <wal...@us...> - 2014-01-14 22:27:13
|
Revision: 15389
http://sourceforge.net/p/andromda/svn/15389
Author: walterim
Date: 2014-01-14 22:27:09 +0000 (Tue, 14 Jan 2014)
Log Message:
-----------
Changing the samples to use JSF2
Modified Paths:
--------------
trunk/samples/animal-quiz/core/src/main/java/org/andromda/samples/animalquiz/decisiontree/DecisionItemDaoImpl.java
trunk/samples/animal-quiz/core/src/main/java/org/andromda/samples/animalquiz/decisiontree/DecisionServiceImpl.java
trunk/samples/animal-quiz/mda/src/main/config/andromda.xml
trunk/samples/animal-quiz/web/src/main/java/org/andromda/samples/animalquiz/guess/GuessControllerImpl.java
trunk/samples/car-rental-system/mda/src/main/config/andromda.xml
trunk/samples/car-rental-system/web/src/main/java/org/andromda/samples/carrental/admins/web/admin/AdminAdminControllerImpl.java
trunk/samples/car-rental-system/web/src/main/java/org/andromda/samples/carrental/admins/web/login/AdministratorLoginControllerImpl.java
trunk/samples/car-rental-system/web/src/main/java/org/andromda/samples/carrental/admins/web/main/AdministrationControllerImpl.java
trunk/samples/car-rental-system/web/src/main/java/org/andromda/samples/carrental/contracts/web/handOut/HandOutCarControllerImpl.java
trunk/samples/car-rental-system/web/src/main/java/org/andromda/samples/carrental/contracts/web/registerAccident/RegisterAccidentControllerImpl.java
trunk/samples/car-rental-system/web/src/main/java/org/andromda/samples/carrental/contracts/web/reserveCar/CustomerReservesCarControllerImpl.java
trunk/samples/car-rental-system/web/src/main/java/org/andromda/samples/carrental/contracts/web/returnCar/ReturnCarControllerImpl.java
trunk/samples/car-rental-system/web/src/main/java/org/andromda/samples/carrental/customers/web/login/CustomerLogInControllerImpl.java
trunk/samples/car-rental-system/web/src/main/java/org/andromda/samples/carrental/customers/web/registerCustomer/RegisterCustomerControllerImpl.java
trunk/samples/car-rental-system/web/src/main/java/org/andromda/samples/carrental/inventory/web/registerCar/RegisterCarControllerImpl.java
trunk/samples/car-rental-system/web/src/main/java/org/andromda/samples/carrental/inventory/web/registerCarType/RegisterCarTypeControllerImpl.java
trunk/samples/car-rental-system/web/src/main/java/org/andromda/samples/carrental/welcome/WelcomeControllerImpl.java
trunk/samples/conf/andromdapp/animal-quiz/configuration.xml
trunk/samples/conf/andromdapp/car-rental-system/configuration.xml
trunk/samples/conf/andromdapp/crud/configuration.xml
trunk/samples/conf/andromdapp/online-store/configuration.xml
trunk/samples/crud/mda/src/main/config/andromda.xml
trunk/samples/online-store/mda/src/main/config/andromda.xml
Removed Paths:
-------------
trunk/samples/animal-quiz/app/
trunk/samples/animal-quiz/webservice/
trunk/samples/car-rental-system/app/
trunk/samples/crud/app/
trunk/samples/online-store/app/
Modified: trunk/samples/animal-quiz/core/src/main/java/org/andromda/samples/animalquiz/decisiontree/DecisionItemDaoImpl.java
===================================================================
--- trunk/samples/animal-quiz/core/src/main/java/org/andromda/samples/animalquiz/decisiontree/DecisionItemDaoImpl.java 2014-01-14 22:19:37 UTC (rev 15388)
+++ trunk/samples/animal-quiz/core/src/main/java/org/andromda/samples/animalquiz/decisiontree/DecisionItemDaoImpl.java 2014-01-14 22:27:09 UTC (rev 15389)
@@ -12,6 +12,16 @@
extends DecisionItemDaoBase
{
/**
+ * @see org.andromda.samples.animalquiz.decisiontree.DecisionItemDaoBase#findRoot(int)
+ */
+ @Override
+ public Object findRoot(final int transform)
+ throws DecisionException
+ {
+ return this.findRoot(transform, "from DecisionItemImpl as decisionItem where decisionItem.rootItem = true");
+ }
+
+ /**
* @see org.andromda.samples.animalquiz.decisiontree.DecisionItemDao#toVODecisionItem(DecisionItem)
*/
@Override
Modified: trunk/samples/animal-quiz/core/src/main/java/org/andromda/samples/animalquiz/decisiontree/DecisionServiceImpl.java
===================================================================
--- trunk/samples/animal-quiz/core/src/main/java/org/andromda/samples/animalquiz/decisiontree/DecisionServiceImpl.java 2014-01-14 22:19:37 UTC (rev 15388)
+++ trunk/samples/animal-quiz/core/src/main/java/org/andromda/samples/animalquiz/decisiontree/DecisionServiceImpl.java 2014-01-14 22:27:09 UTC (rev 15389)
@@ -20,7 +20,8 @@
VODecisionItem item = (VODecisionItem)this.getDecisionItemDao().findRoot(DecisionItemDao.TRANSFORM_VODECISIONITEM);
if (item == null)
{
- item = (VODecisionItem)this.getAnimalDao().create(DecisionItemDao.TRANSFORM_VODECISIONITEM, "elephant", true);
+ DecisionItem animal = (DecisionItem) this.getAnimalDao().create("elephant", true);
+ item = (VODecisionItem)this.getDecisionItemDao().toVODecisionItem(animal);
}
return item;
}
Modified: trunk/samples/animal-quiz/mda/src/main/config/andromda.xml
===================================================================
--- trunk/samples/animal-quiz/mda/src/main/config/andromda.xml 2014-01-14 22:19:37 UTC (rev 15388)
+++ trunk/samples/animal-quiz/mda/src/main/config/andromda.xml 2014-01-14 22:27:09 UTC (rev 15389)
@@ -10,24 +10,43 @@
<model>
<uri>${model.uri}</uri>
<moduleSearchLocations>
+ <location patterns="**/${andromda.version}/*.xml.zip">${settings.localRepository}/org/andromda/profiles/uml14</location>
+ <location patterns="**/*.xml">jar:file:${settings.localRepository}/org/omg/profiles/uml14/UML_Standard_Profile/1.0.1/UML_Standard_Profile-1.0.1.jar!/</location>
+ <!--
<location patterns="**/src/main/uml/*.xml.zip">${project.basedir}/../../../profiles/uml-1.4</location>
<location patterns="**/${andromda.version}/*.xml.zip">${settings.localRepository}/org/andromda/profiles/uml14</location>
<location patterns="**/*.xml">jar:file:${settings.localRepository}/org/omg/profiles/uml14/UML_Standard_Profile/1.0.1/UML_Standard_Profile-1.0.1.jar!/</location>
+ -->
</moduleSearchLocations>
</model>
</models>
</repository>
</repositories>
+ <!-- The mappingsSearchLocations are used by the below '*MappingsUri' namespace
+ properties (e.g. languageMappingsUri) so that we can use a "logical" name from the content
+ of any *.xml files in the search locations (instead of having to specify explicit paths...).
+ Except for 'profileMappingsUri', this approach did not seem to work as there is no
+ "logical" mapping name. mappingsUri is specified without 'Mappings' suffix on file name.
+ See http://docs.andromda.org/mappings.html.
+ A default empty mda/config/mappings/JavaMappings.xml is provided with the generated project.
+ It can be used to customize mappings from UML to Java datatypes used by all cartridges. -->
+ <mappingsSearchLocations>
+ <!-- Add additional mappings files under mda/config/mappings, referenced by languageMappingsUri -->
+ <location patterns="*.xml">${conf.dir}/mappings</location>
+ </mappingsSearchLocations>
+ <!-- To add/remove an additional cartridge to the code generation process (i.e. modeldump):
+ - Add the namespace elements to andromda.xml
+ - Add the cartridge dependency (including version) to mda/pom.xml
+ - Add additional build dependencies to individual project pom.xml files -->
<namespaces>
<!-- namespace property values used by ALL cartridges -->
<!-- Variable references refer to properties defined in root pom.xml or mda/pom.xml files -->
<!-- See http://www.andromda.org/docs/andromda-metafacades/andromda-uml-metafacades/andromda-metafacades-emf-uml2/namespace.html -->
<namespace name="default">
<properties>
- <!-- Use enums, strongly typed collections with templates, and @annotation markups>
<property name="enableTemplating">true</property>
<property name="enableAnnotations">true</property>
- <property name="typeSafeEnumsEnabled">true</property -->
+ <property name="typeSafeEnumsEnabled">true</property>
<property name="languageMappingsUri">Java</property>
<property name="wrapperMappingsUri">JavaWrapper</property>
<property name="sqlMappingsUri">${sql.mappings}</property>
@@ -37,22 +56,36 @@
<property name="ejbJndiNamePrefix">${application.id}-${project.version}</property>
<!-- these masking properties allow you to configure the way
your model element names are generated -->
- <property name="classifierNameMask">none</property>
- <property name="operationNameMask">none</property>
- <property name="roleNameMask">none</property>
- <property name="enumerationNameMask">none</property>
+ <property name="modelElementNameMask">noaccent</property>
+ <property name="classifierNameMask">noaccent</property>
+ <property name="operationNameMask">noaccent</property>
+ <property name="roleNameMask">noaccent</property>
+ <property name="enumerationNameMask">noaccent</property>
+ <property name="entityNameMask">noaccent</property>
+ <property name="entityPropertyNameMask">noaccent</property>
+ <property name="parameterNameMask">noaccent</property>
+ <property name="xmlEncoding">UTF-8</property>
<property name="enumerationLiteralNameMask">upperunderscore</property>
- <property name="entityNameMask">none</property>
- <property name="entityPropertyNameMask">none</property>
- <property name="parameterNameMask">none</property>
- <property name="hibernateVersion">${hibernate.version}</property>
- <property name="hibernateEntityAnnotations">true</property>
+ <property name="hibernateVersion">4</property>
+ <property name="hibernateEntityAnnotations">false</property>
+ <property name="persistenceContainerName">jboss</property>
+ <!-- Automatically makes English names plural (generally adds s if missing).
+ default=true, set to false if using non-English models or Jaxb/CXF 2.0 or JAXB simpleBindingMode=false.-->
+ <property name="pluralizeAssociationEndNames">false</property>
+ <property name="pluralizeAttributeNames">false</property>
+ <property name="pluralizeParameterNames">false</property>
+ <!-- JDK5 error on @Override on methods implemented from Interfaces -->
+ <property name="javaVersion">${javaVersion}</property>
<property name="xmlAttributes">false</property>
+ <property name="dateTimeGeneratedText">false</property>
+ <property name="mergeLocation">${conf.dir}/merge</property>
</properties>
</namespace>
<!-- See http://docs.andromda.org/andromda-cartridges/andromda-spring-cartridge/namespace.html -->
<namespace name="spring">
<properties>
+ <property name="parameterRequiredCheck">false</property>
+ <property name="manageableSearchMatchMode">anywhere</property>
<property name="dataSource">${dataSource}</property>
<property name="username">${jdbc.username}</property>
<property name="password">${jdbc.password}</property>
@@ -68,6 +101,7 @@
<property name="hibernateCacheProvider">org.hibernate.cache.EhCacheProvider</property>
<property name="hibernateQueryCacheFactory">org.hibernate.cache.StandardQueryCacheFactory</property>
<property name="mergeMappingsUri">file:${conf.dir}/mappings/SpringMergeMappings.xml</property>
+ <property name="transactionManager">org.springframework.orm.hibernate4.HibernateTransactionManager</property>
<property name="hibernateInheritanceStrategy">${hibernate.inheritance.strategy}</property>
<property name="springTypesPackage">${application.package}</property>
<property name="daos">${core.generated.dir}</property>
@@ -78,9 +112,9 @@
<property name="service-interfaces">${common.generated.dir}</property>
<property name="criteria">${common.generated.dir}</property>
<property name="value-objects">${common.generated.dir}</property>
- <property name="enableSpringTransactionsWhenEjbsEnabled">true</property>
- <!-- to remove any dependency on EJB, comment the following property -->
+ <!-- to remove any dependency on EJB, comment the following property
<property name="session-ejbs">${core.generated.dir}</property>
+ -->
<!-- uncomment to enable EJB security
<property name="securityRealm">${application.id}</property>
-->
@@ -92,6 +126,9 @@
<!-- See http://docs.andromda.org/andromda-cartridges/andromda-hibernate-cartridge/namespace.html -->
<namespace name="hibernate">
<properties>
+ <property name="configuration">${core.generated.dir}</property>
+ <property name="hibernateAssociationCollectionType">bag</property>
+ <property name="generateDatabaseDependentCode">false</property>
<property name="hibernateEnableCache">false</property>
<property name="hibernateEnableAssociationsCache">false</property>
<property name="hibernateTypeMappingsUri">Hibernate</property>
@@ -108,30 +145,6 @@
<property name="cache">${core.generated.dir}</property>
</properties>
</namespace>
- <!-- See http://docs.andromda.org/andromda-cartridges/andromda-webservice-cartridge/namespace.html -->
- <namespace name="webservice">
- <properties>
- <property name="soapStack">axis</property>
- <property name="axisVersion">2</property>
- <property name="schemaTypeMappingsUri">AxisWSDLMappings</property>
- <property name="languageMappingsUri">AxisJavaMappings</property>
- <property name="defaultProvider">RPC</property>
- <property name="applicationName">${application.id}</property>
- <property name="wsdlSoapAddress">http://${service.host}:${service.port}/${application.id}-ws/services</property>
- <property name="webserviceTypesPackage">${application.package}</property>
- <property name="rpcClassNamePattern">{0}.{1}WSDelegator</property>
- <property name="wsdls">${webservice.generated.dir}</property>
- <property name="configuration">${webservice.generated.dir}</property>
- <property name="webservice-project">${webservice.project}</property>
- <property name="webservice-types">${core.generated.dir}</property>
- <property name="webservice-impl">${webservice.manual.java.dir}</property>
- <property name="webservice-tests">${webservice.test.dir}</property>
- <property name="core-tests">${core.manual.test.dir}</property>
- <property name="service-impls">${core.manual.java.dir}</property>
- <property name="jaxb-impl">${common.manual.dir}</property>
- <property name="jaxb-gen">${common.generated.dir}</property>
- </properties>
- </namespace>
<!-- See http://docs.andromda.org/andromda-cartridges/andromda-java-cartridge/namespace.html -->
<namespace name="java">
<properties>
@@ -145,25 +158,38 @@
<property name="interfaces">${common.generated.dir}</property>
</properties>
</namespace>
- <!-- See http://docs.andromda.org/andromda-cartridges/andromda-bpm4struts-cartridge/namespace.html -->
- <namespace name="bpm4struts">
- <properties>
+ <!-- See http://docs.andromda.org/andromda-cartridges/andromda-jsf2-cartridge/namespace.html -->
+ <namespace name="jsf2">
+ <properties>
+ <property name="componentSet">primefaces</property>
+ <property name="managedBeansPackage">${application.package}</property>
+ <property name="facesConfigFiles"></property>
<property name="defaultDateFormat">MM/dd/yyyy</property>
- <property name="normalizeMessages">true</property>
+ <property name="useAutocompleteLookup">true</property>
+ <property name="applicationName">${application.name}</property>
+ <property name="exceptions">${common.generated.dir}</property>
<property name="forms">${web.generated.java.dir}</property>
- <property name="pages">${web.generated.web.dir}</property>
- <property name="actions">${web.generated.java.dir}</property>
+ <property name="views">${web.generated.web.dir}</property>
+ <property name="managed-beans">${web.generated.java.dir}</property>
<property name="controllers">${web.generated.java.dir}</property>
<property name="controller-impls">${web.manual.java.dir}</property>
- <property name="decorators">${web.manual.java.dir}</property>
- <property name="messages">${web.generated.web.dir}/WEB-INF/classes</property>
- <property name="configuration">${web.generated.web.dir}/WEB-INF</property>
- <!-- uncomment to enable web tier security
- <property name="securityRealm">${application.id}</property>
- -->
+ <property name="messages">${web.generated.web.dir}</property>
+ <property name="configuration">${web.generated.web.dir}</property>
+ <property name="custom-configuration">${web.manual.dir}/resources</property>
+ <property name="libraries">${web.generated.web.dir}</property>
+ <property name="custom-resources">${web.manual.web.dir}</property>
+ <!-- property name="authenticationType">securityFilter</property>
+ <property name="securityRealm"></property>
+ <property name="defaultRole">${defaultRole}</property -->
<property name="serviceAccessorPattern">${application.package}.ServiceLocator.instance().get{1}()</property>
+ <property name="manageableServiceAccessorPattern">${application.package}.ManageableServiceLocator.instance().get{1}()</property>
<property name="mergeMappingsUri">file:${conf.dir}/mappings/WebMergeMappings.xml</property>
- <property name="manageableServiceAccessorPattern">${application.package}.ManageableServiceLocator.instance().get{1}()</property>
+ <property name="dummyData">false</property>
+ <property name="enableFaceletsDevelopmentSupport">true</property>
+ <property name="enableMyFacesDevelopmentSupport">true</property>
+ <property name="enablePreferences">false</property>
+ <property name="controllerScope">session</property>
+ <property name="navigationBeanScope">session</property>
</properties>
</namespace>
</namespaces>
Modified: trunk/samples/animal-quiz/web/src/main/java/org/andromda/samples/animalquiz/guess/GuessControllerImpl.java
===================================================================
--- trunk/samples/animal-quiz/web/src/main/java/org/andromda/samples/animalquiz/guess/GuessControllerImpl.java 2014-01-14 22:19:37 UTC (rev 15388)
+++ trunk/samples/animal-quiz/web/src/main/java/org/andromda/samples/animalquiz/guess/GuessControllerImpl.java 2014-01-14 22:27:09 UTC (rev 15389)
@@ -1,109 +1,106 @@
// license-header java merge-point
package org.andromda.samples.animalquiz.guess;
+
+import org.andromda.samples.animalquiz.decisiontree.VODecisionItem;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import org.andromda.samples.animalquiz.decisiontree.VODecisionItem;
-import org.apache.struts.action.ActionMapping;
-
/**
* @see org.andromda.samples.animalquiz.guess.GuessController
*/
public class GuessControllerImpl extends GuessController
{
- /**
- * @see org.andromda.samples.animalquiz.guess.GuessController#getFirstQuestion(org.apache.struts.action.ActionMapping, GetFirstQuestionForm, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
- */
- public final void getFirstQuestion(ActionMapping mapping, GetFirstQuestionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception
- {
- try
- {
- final VODecisionItem item = this.getDecisionService().getFirstQuestion();
- form.setQuestion(item.getPrompt());
- // Keep the decision item in the session so that
- // the next step can process it.
- this.getGuessSessionState(request).setLastDecisionItem(item);
- }
- catch (Exception ex)
- {
- ex.printStackTrace();
- throw new RuntimeException(ex);
- }
- }
+ private static final long serialVersionUID = -98798789781L;
- /**
- * @see org.andromda.samples.animalquiz.guess.GuessController#nextDecisionItemAvailable(org.apache.struts.action.ActionMapping, NextDecisionItemAvailableForm, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
- */
- public final String nextDecisionItemAvailable(ActionMapping mapping, NextDecisionItemAvailableForm form, HttpServletRequest request, HttpServletResponse response) throws Exception
- {
- final GuessSessionState sessionState = this.getGuessSessionState(request);
- VODecisionItem item = sessionState.getLastDecisionItem();
+ /**
+ * @see org.andromda.samples.animalquiz.guess.GuessController#getFirstQuestion(org.andromda.samples.animalquiz.guess.GetFirstQuestionForm)
+ */
+ public void getFirstQuestion(GetFirstQuestionForm form) throws Throwable {
+ try {
+ final VODecisionItem item = this.getDecisionService()
+ .getFirstQuestion();
+ form.setQuestion(item.getPrompt());
- final Long idNextItem = "yes".equals(sessionState.getLastAnswerFromUser()) ?
- item.getIdYesItem() : item.getIdNoItem();
+ // Keep the decision item in the session so that
+ // the next step can process it.
+ this.getGuessSessionState().setLastDecisionItem(item);
+ } catch (Exception ex) {
+ ex.printStackTrace();
+ throw new RuntimeException(ex);
+ }
+ }
+
+ /**
+ * @see org.andromda.samples.animalquiz.guess.GuessController#nextDecisionItemAvailable(org.andromda.samples.animalquiz.guess.NextDecisionItemAvailableForm)
+ */
+ public String nextDecisionItemAvailable(NextDecisionItemAvailableForm form)
+ throws Throwable {
- if (idNextItem != null)
- {
- item = this.getDecisionService().getNextQuestion(idNextItem);
+ final GuessSessionState sessionState = this.getGuessSessionState();
+ VODecisionItem item = sessionState.getLastDecisionItem();
- form.setQuestion(item.getPrompt());
+ final Long idNextItem = "yes".equals(sessionState
+ .getLastAnswerFromUser()) ? item.getIdYesItem() : item
+ .getIdNoItem();
- // Keep the decision item in the session so that
- // the next step can process it.
- sessionState.setLastDecisionItem(item);
- return "yes";
- }
- return "no";
- }
+ if (idNextItem != null) {
+ item = this.getDecisionService().getNextQuestion(idNextItem);
- /**
- * @see org.andromda.samples.animalquiz.guess.GuessController#rememberAnimal(org.apache.struts.action.ActionMapping, RememberAnimalForm, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
- */
- public final void rememberAnimal(ActionMapping mapping, RememberAnimalForm form, HttpServletRequest request, HttpServletResponse response) throws Exception
- {
- this.getGuessSessionState(request).setLastAnimalName(form.getAnimal());
- }
+ form.setQuestion(item.getPrompt());
- /**
- * @see org.andromda.samples.animalquiz.guess.GuessController#rememberQuestion(org.apache.struts.action.ActionMapping, RememberQuestionForm, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
- */
- public final void rememberQuestion(ActionMapping mapping, RememberQuestionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception
- {
- final GuessSessionState sessionState = this.getGuessSessionState(request);
- this.getDecisionService().addNewAnimalWithQuestion(sessionState.getLastAnimalName(), form.getQuestion(),
- sessionState.getLastDecisionItem().getId());
- }
+ // Keep the decision item in the session so that
+ // the next step can process it.
+ sessionState.setLastDecisionItem(item);
+ return "yes";
+ }
+ return "no";
+ }
+
+ /**
+ * @see org.andromda.samples.animalquiz.guess.GuessController#rememberAnimal(org.andromda.samples.animalquiz.guess.RememberAnimalForm)
+ */
+ public void rememberAnimal(RememberAnimalForm form) throws Throwable{
+ this.getGuessSessionState().setLastAnimalName(form.getAnimal());
+ }
+
- /**
- * @see org.andromda.samples.animalquiz.guess.GuessController#lastAnswerWasYes(org.apache.struts.action.ActionMapping, LastAnswerWasYesForm, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
- */
- public final boolean lastAnswerWasYes(ActionMapping mapping, LastAnswerWasYesForm form, HttpServletRequest request, HttpServletResponse response) throws Exception
- {
- return "yes".equals(this.getGuessSessionState(request).getLastAnswerFromUser());
- }
+ /**
+ * @see org.andromda.samples.animalquiz.guess.GuessController#rememberQuestion(org.andromda.samples.animalquiz.guess.RememberQuestionForm)
+ */
+ public void rememberQuestion(RememberQuestionForm form) throws Throwable {
+ final GuessSessionState sessionState = this.getGuessSessionState();
+ this.getDecisionService().addNewAnimalWithQuestion(
+ sessionState.getLastAnimalName(), form.getQuestion(),
+ sessionState.getLastDecisionItem().getId());
+ }
+
+ /**
+ * @see org.andromda.samples.animalquiz.guess.GuessController#lastAnswerWasYes()
+ */
+ public boolean lastAnswerWasYes() throws Throwable {
+ return "yes"
+ .equals(this.getGuessSessionState().getLastAnswerFromUser());
+ }
+
- /**
- * @see org.andromda.samples.animalquiz.guess.GuessController#rememberPositiveAnswer(org.apache.struts.action.ActionMapping, RememberPositiveAnswerForm, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
- */
- public final void rememberPositiveAnswer(ActionMapping mapping, RememberPositiveAnswerForm form, HttpServletRequest request, HttpServletResponse response) throws Exception
- {
- this.getGuessSessionState(request).setLastAnswerFromUser("yes");
- }
+ /**
+ * @see org.andromda.samples.animalquiz.guess.GuessController#rememberPositiveAnswer()
+ */
+ public void rememberPositiveAnswer() throws Throwable {
+ this.getGuessSessionState().setLastAnswerFromUser("yes");
+ }
+
- /**
- * @see org.andromda.samples.animalquiz.guess.GuessController#rememberNegativeAnswer(org.apache.struts.action.ActionMapping, RememberNegativeAnswerForm, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
- */
- public final void rememberNegativeAnswer(ActionMapping mapping, RememberNegativeAnswerForm form, HttpServletRequest request, HttpServletResponse response) throws Exception
- {
- this.getGuessSessionState(request).setLastAnswerFromUser("no");
- }
-
- /**
- * @see org.andromda.samples.animalquiz.guess.GuessController#initializeSession(org.apache.struts.action.ActionMapping, InitializeSessionForm, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
- */
- public final void initializeSession(ActionMapping mapping, InitializeSessionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception
- {
- setGuessSessionState(request, new GuessSessionState());
- }
+ /**
+ * @see org.andromda.samples.animalquiz.guess.GuessController#rememberNegativeAnswer()
+ */
+ public void rememberNegativeAnswer() throws Throwable {
+ this.getGuessSessionState().setLastAnswerFromUser("no");
+ }
+
+ /**
+ * @see org.andromda.samples.animalquiz.guess.GuessController#initializeSession()
+ */
+ public void initializeSession() throws Throwable {
+ setGuessSessionState(new GuessSessionState());
+ }
}
\ No newline at end of file
Modified: trunk/samples/car-rental-system/mda/src/main/config/andromda.xml
===================================================================
--- trunk/samples/car-rental-system/mda/src/main/config/andromda.xml 2014-01-14 22:19:37 UTC (rev 15388)
+++ trunk/samples/car-rental-system/mda/src/main/config/andromda.xml 2014-01-14 22:27:09 UTC (rev 15389)
@@ -38,7 +38,7 @@
<property name="foreignKeySuffix">_FK</property>
<property name="ejbJndiNamePrefix">${application.id}</property>
<property name="hibernateVersion">${hibernate.version}</property>
- <property name="hibernateEntityAnnotations">true</property>
+ <property name="hibernateEntityAnnotations">false</property>
<property name="xmlAttributes">false</property>
</properties>
</namespace>
@@ -66,8 +66,8 @@
<property name="service-interfaces">${common.generated.dir}</property>
<property name="criteria">${common.generated.dir}</property>
<property name="value-objects">${common.generated.dir}</property>
- <!--to remove any dependency on EJB, comment the following property-->
- <property name="session-ejbs">${core.generated.dir}</property>
+ <!--to remove any dependency on EJB, comment the following property
+ <property name="session-ejbs">${core.generated.dir}</property> -->
<!--uncomment to enable EJB security-->
<!--<securityRealm>${application.id}</securityRealm>-->
</properties>
@@ -101,23 +101,39 @@
<property name="interfaces">${common.generated.dir}</property>
</properties>
</namespace>
- <!-- See http://docs.andromda.org/andromda-cartridges/andromda-bpm4struts-cartridge/namespace.html -->
- <namespace name="bpm4struts">
- <properties>
- <property name="defaultDateFormat">MM/dd/yyyy</property>
- <property name="normalizeMessages">true</property>
- <property name="forms">${web.generated.java.dir}</property>
- <property name="pages">${web.generated.web.dir}</property>
- <property name="actions">${web.generated.java.dir}</property>
- <property name="controllers">${web.generated.java.dir}</property>
- <property name="controller-impls">${web.manual.java.dir}</property>
- <property name="decorators">${web.manual.java.dir}</property>
- <property name="messages">${web.generated.web.dir}/WEB-INF/classes</property>
- <property name="configuration">${web.generated.web.dir}/WEB-INF</property>
- <property name="serviceAccessorPattern">null</property>
- <property name="mergeMappingsUri">file:${conf.dir}/mappings/WebMergeMappings.xml</property>
- <property name="manageableServiceAccessorPattern">${application.package}.ManageableServiceLocator.instance().get{1}()</property>
- </properties>
- </namespace>
+ <!-- See http://docs.andromda.org/andromda-cartridges/andromda-jsf2-cartridge/namespace.html -->
+ <namespace name="jsf2">
+ <properties>
+ <property name="componentSet">primefaces</property>
+ <property name="managedBeansPackage">${application.package}</property>
+ <property name="facesConfigFiles"></property>
+ <property name="defaultDateFormat">MM/dd/yyyy</property>
+ <property name="useAutocompleteLookup">true</property>
+ <property name="applicationName">${application.name}</property>
+ <property name="exceptions">${common.generated.dir}</property>
+ <property name="forms">${web.generated.java.dir}</property>
+ <property name="views">${web.generated.web.dir}</property>
+ <property name="managed-beans">${web.generated.java.dir}</property>
+ <property name="controllers">${web.generated.java.dir}</property>
+ <property name="controller-impls">${web.manual.java.dir}</property>
+ <property name="messages">${web.generated.web.dir}</property>
+ <property name="configuration">${web.generated.web.dir}</property>
+ <property name="custom-configuration">${web.manual.dir}/resources</property>
+ <property name="libraries">${web.generated.web.dir}</property>
+ <property name="custom-resources">${web.manual.web.dir}</property>
+ <!-- property name="authenticationType">securityFilter</property>
+ <property name="securityRealm"></property>
+ <property name="defaultRole">${defaultRole}</property -->
+ <property name="serviceAccessorPattern">${application.package}.ServiceLocator.instance().get{1}()</property>
+ <property name="manageableServiceAccessorPattern">${application.package}.ManageableServiceLocator.instance().get{1}()</property>
+ <property name="mergeMappingsUri">file:${conf.dir}/mappings/WebMergeMappings.xml</property>
+ <property name="dummyData">false</property>
+ <property name="enableFaceletsDevelopmentSupport">true</property>
+ <property name="enableMyFacesDevelopmentSupport">true</property>
+ <property name="enablePreferences">false</property>
+ <property name="controllerScope">session</property>
+ <property name="navigationBeanScope">session</property>
+ </properties>
+ </namespace>
</namespaces>
</andromda>
Modified: trunk/samples/car-rental-system/web/src/main/java/org/andromda/samples/carrental/admins/web/admin/AdminAdminControllerImpl.java
===================================================================
--- trunk/samples/car-rental-system/web/src/main/java/org/andromda/samples/carrental/admins/web/admin/AdminAdminControllerImpl.java 2014-01-14 22:19:37 UTC (rev 15388)
+++ trunk/samples/car-rental-system/web/src/main/java/org/andromda/samples/carrental/admins/web/admin/AdminAdminControllerImpl.java 2014-01-14 22:27:09 UTC (rev 15389)
@@ -1,40 +1,45 @@
// license-header java merge-point
package org.andromda.samples.carrental.admins.web.admin;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import org.apache.struts.action.ActionMapping;
/**
* @see org.andromda.samples.carrental.admins.web.admin.AdminAdminController
*/
public class AdminAdminControllerImpl extends AdminAdminController
{
- /**
- * @see org.andromda.samples.carrental.admins.web.admin.AdminAdminController#updateAdministrator(org.apache.struts.action.ActionMapping, UpdateAdministratorForm, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
- */
- public final String updateAdministrator(ActionMapping mapping, UpdateAdministratorForm form, HttpServletRequest request, HttpServletResponse response) throws Exception
- {
- // this property receives a default value, just to have the application running on dummy data
- form.setAccountNo("accountNo-test");
- // this property receives a default value, just to have the application running on dummy data
- form.setEmail("email-test");
- // this property receives a default value, just to have the application running on dummy data
- form.setName("name-test");
- return null;
- }
- /**
- * @see org.andromda.samples.carrental.admins.web.admin.AdminAdminController#addAdministrator(org.apache.struts.action.ActionMapping, AddAdministratorForm, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
- */
- public final String addAdministrator(ActionMapping mapping, AddAdministratorForm form, HttpServletRequest request, HttpServletResponse response) throws Exception
- {
- // this property receives a default value, just to have the application running on dummy data
- form.setAccountNo("accountNo-test");
- // this property receives a default value, just to have the application running on dummy data
- form.setEmail("email-test");
- // this property receives a default value, just to have the application running on dummy data
- form.setName("name-test");
- return null;
- }
+ /**
+ * @see org.andromda.samples.carrental.admins.web.admin.AdminAdminController#updateAdministrator(org.andromda.samples.carrental.admins.web.admin.UpdateAdministratorForm)
+ */
+ @Override
+ public String updateAdministrator(UpdateAdministratorForm form)
+ throws Throwable {
+ // this property receives a default value, just to have the application
+ // running on dummy data
+ form.setAccountNo("accountNo-test");
+ // this property receives a default value, just to have the application
+ // running on dummy data
+ form.setEmail("email-test");
+ // this property receives a default value, just to have the application
+ // running on dummy data
+ form.setName("name-test");
+ return "succeed";
+ }
+
+ /**
+ * @see org.andromda.samples.carrental.admins.web.admin.AdminAdminController#addAdministrator(org.andromda.samples.carrental.admins.web.admin.AddAdministratorForm)
+ */
+ @Override
+ public String addAdministrator(AddAdministratorForm form) throws Throwable {
+ // this property receives a default value, just to have the application
+ // running on dummy data
+ form.setAccountNo("accountNo-test");
+ // this property receives a default value, just to have the application
+ // running on dummy data
+ form.setEmail("email-test");
+ // this property receives a default value, just to have the application
+ // running on dummy data
+ form.setName("name-test");
+ return "succeed";
+ }
}
Modified: trunk/samples/car-rental-system/web/src/main/java/org/andromda/samples/carrental/admins/web/login/AdministratorLoginControllerImpl.java
===================================================================
--- trunk/samples/car-rental-system/web/src/main/java/org/andromda/samples/carrental/admins/web/login/AdministratorLoginControllerImpl.java 2014-01-14 22:19:37 UTC (rev 15388)
+++ trunk/samples/car-rental-system/web/src/main/java/org/andromda/samples/carrental/admins/web/login/AdministratorLoginControllerImpl.java 2014-01-14 22:27:09 UTC (rev 15389)
@@ -1,26 +1,28 @@
// license-header java merge-point
package org.andromda.samples.carrental.admins.web.login;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import org.apache.struts.action.ActionMapping;
/**
* @see org.andromda.samples.carrental.admins.web.login.AdministratorLoginController
*/
public class AdministratorLoginControllerImpl extends AdministratorLoginController
{
- /**
- * @see org.andromda.samples.carrental.admins.web.login.AdministratorLoginController#authenticateAsAdministrator(org.apache.struts.action.ActionMapping, AuthenticateAsAdministratorForm, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
- */
- public final String authenticateAsAdministrator(ActionMapping mapping, AuthenticateAsAdministratorForm form, HttpServletRequest request, HttpServletResponse response) throws Exception
- {
- // this property receives a default value, just to have the application running on dummy data
- form.setPassword("password-test");
- // this property receives a default value, just to have the application running on dummy data
- form.setAccountNo("accountNo-test");
- // this property receives a default value, just to have the application running on dummy data
- form.setName("name-test");
- return null;
- }
+
+ /**
+ * @see org.andromda.samples.carrental.admins.web.login.AdministratorLoginController#authenticateAsAdministrator(org.andromda.samples.carrental.admins.web.login.AuthenticateAsAdministratorForm)
+ */
+ @Override
+ public String authenticateAsAdministrator(
+ AuthenticateAsAdministratorForm form) throws Throwable {
+ // this property receives a default value, just to have the application
+ // running on dummy data
+ form.setPassword("password-test");
+ // this property receives a default value, just to have the application
+ // running on dummy data
+ form.setAccountNo("accountNo-test");
+ // this property receives a default value, just to have the application
+ // running on dummy data
+ form.setName("name-test");
+ return "succeed";
+ }
}
Modified: trunk/samples/car-rental-system/web/src/main/java/org/andromda/samples/carrental/admins/web/main/AdministrationControllerImpl.java
===================================================================
--- trunk/samples/car-rental-system/web/src/main/java/org/andromda/samples/carrental/admins/web/main/AdministrationControllerImpl.java 2014-01-14 22:19:37 UTC (rev 15388)
+++ trunk/samples/car-rental-system/web/src/main/java/org/andromda/samples/carrental/admins/web/main/AdministrationControllerImpl.java 2014-01-14 22:27:09 UTC (rev 15389)
@@ -4,25 +4,23 @@
import java.io.Serializable;
import java.util.Arrays;
import java.util.Collection;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import org.apache.struts.action.ActionMapping;
/**
* @see org.andromda.samples.carrental.admins.web.main.AdministrationController
*/
public class AdministrationControllerImpl extends AdministrationController
{
- /**
- * @see org.andromda.samples.carrental.admins.web.main.AdministrationController#loadCarAndCarTypes(org.apache.struts.action.ActionMapping, LoadCarAndCarTypesForm, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
- */
- public final void loadCarAndCarTypes(ActionMapping mapping, LoadCarAndCarTypesForm form, HttpServletRequest request, HttpServletResponse response) throws Exception
- {
- // populating the table with a dummy list
- form.setCars(carsDummyList);
- // populating the table with a dummy list
- form.setCarTypes(carTypesDummyList);
- }
+ /**
+ * @see org.andromda.samples.carrental.admins.web.main.AdministrationController#loadCarAndCarTypes(org.andromda.samples.carrental.admins.web.main.LoadCarAndCarTypesForm)
+ */
+ @Override
+ public void loadCarAndCarTypes(LoadCarAndCarTypesForm form)
+ throws Throwable {
+ // populating the table with a dummy list
+ form.setCars(carsDummyList);
+ // populating the table with a dummy list
+ form.setCarTypes(carTypesDummyList);
+ }
/**
* This dummy variable is used to populate the "cars" table.
Modified: trunk/samples/car-rental-system/web/src/main/java/org/andromda/samples/carrental/contracts/web/handOut/HandOutCarControllerImpl.java
===================================================================
--- trunk/samples/car-rental-system/web/src/main/java/org/andromda/samples/carrental/contracts/web/handOut/HandOutCarControllerImpl.java 2014-01-14 22:19:37 UTC (rev 15388)
+++ trunk/samples/car-rental-system/web/src/main/java/org/andromda/samples/carrental/contracts/web/handOut/HandOutCarControllerImpl.java 2014-01-14 22:27:09 UTC (rev 15389)
@@ -4,49 +4,53 @@
import java.io.Serializable;
import java.util.Arrays;
import java.util.Collection;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import org.apache.struts.action.ActionMapping;
/**
* @see org.andromda.samples.carrental.contracts.web.handOut.HandOutCarController
*/
public class HandOutCarControllerImpl extends HandOutCarController
{
- /**
- * @see org.andromda.samples.carrental.contracts.web.handOut.HandOutCarController#loadAvailableCars(org.apache.struts.action.ActionMapping, LoadAvailableCarsForm, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
- */
- public final String loadAvailableCars(ActionMapping mapping, LoadAvailableCarsForm form, HttpServletRequest request, HttpServletResponse response) throws Exception
- {
- // populating the table with a dummy list
- form.setAvailableCars(availableCarsDummyList);
- // this property receives a default value, just to have the application running on dummy data
- form.setIdReservation("idReservation-test");
- return null;
- }
+ /**
+ * @see org.andromda.samples.carrental.contracts.web.handOut.HandOutCarController#loadAvailableCars(org.andromda.samples.carrental.contracts.web.handOut.LoadAvailableCarsForm)
+ */
+ @Override
+ public String loadAvailableCars(LoadAvailableCarsForm form)
+ throws Throwable {
+ // populating the table with a dummy list
+ form.setAvailableCars(availableCarsDummyList);
+ // this property receives a default value, just to have the application running on dummy data
+ form.setIdReservation("idReservation-test");
+ return null;
+ }
- /**
- * @see org.andromda.samples.carrental.contracts.web.handOut.HandOutCarController#searchForReservationsOfCustomer(org.apache.struts.action.ActionMapping, SearchForReservationsOfCustomerForm, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
- */
- public final void searchForReservationsOfCustomer(ActionMapping mapping, SearchForReservationsOfCustomerForm form, HttpServletRequest request, HttpServletResponse response) throws Exception
- {
- // populating the table with a dummy list
- form.setCustomerReservations(customerReservationsDummyList);
- }
+ /**
+ * @see org.andromda.samples.carrental.contracts.web.handOut.HandOutCarController#searchForReservationsOfCustomer(org.andromda.samples.carrental.contracts.web.handOut.SearchForReservationsOfCustomerForm)
+ */
+ @Override
+ public void searchForReservationsOfCustomer(
+ SearchForReservationsOfCustomerForm form) throws Throwable {
+ // populating the table with a dummy list
+ form.setCustomerReservations(customerReservationsDummyList);
+
+ }
+ /**
+ * @see org.andromda.samples.carrental.contracts.web.handOut.HandOutCarController#saveSelectedCar(org.andromda.samples.carrental.contracts.web.handOut.SaveSelectedCarForm)
+ */
+ @Override
+ public void saveSelectedCar(SaveSelectedCarForm form) throws Throwable {
+ // this property receives a default value, just to have the application running on dummy data
+ form.setId("id-test");
+
+ }
+
/**
- * @see org.andromda.samples.carrental.contracts.web.handOut.HandOutCarController#saveSelectedCar(org.apache.struts.action.ActionMapping, SaveSelectedCarForm, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
- */
- public final void saveSelectedCar(ActionMapping mapping, SaveSelectedCarForm form, HttpServletRequest request, HttpServletResponse response) throws Exception
- {
- // this property receives a default value, just to have the application running on dummy data
- form.setId("id-test");
- }
-
- /**
* This dummy variable is used to populate the "availableCars" table.
* You may delete it when you add you own code in this controller.
*/
+ /**
+ *
+ */
private static final Collection availableCarsDummyList =
Arrays.asList(new AvailableCarsDummy("inventoryNo-1", "registrationNo-1", "id-1"),
new AvailableCarsDummy("inventoryNo-2", "registrationNo-2", "id-2"),
Modified: trunk/samples/car-rental-system/web/src/main/java/org/andromda/samples/carrental/contracts/web/registerAccident/RegisterAccidentControllerImpl.java
===================================================================
--- trunk/samples/car-rental-system/web/src/main/java/org/andromda/samples/carrental/contracts/web/registerAccident/RegisterAccidentControllerImpl.java 2014-01-14 22:19:37 UTC (rev 15388)
+++ trunk/samples/car-rental-system/web/src/main/java/org/andromda/samples/carrental/contracts/web/registerAccident/RegisterAccidentControllerImpl.java 2014-01-14 22:27:09 UTC (rev 15389)
@@ -4,34 +4,32 @@
import java.io.Serializable;
import java.util.Arrays;
import java.util.Collection;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import org.apache.struts.action.ActionMapping;
/**
* @see org.andromda.samples.carrental.contracts.web.registerAccident.RegisterAccidentController
*/
public class RegisterAccidentControllerImpl extends RegisterAccidentController
{
- /**
- * @see org.andromda.samples.carrental.contracts.web.registerAccident.RegisterAccidentController#searchForContractsOfCustomer(org.apache.struts.action.ActionMapping, SearchForContractsOfCustomerForm, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
- */
- public final void searchForContractsOfCustomer(ActionMapping mapping, SearchForContractsOfCustomerForm form, HttpServletRequest request, HttpServletResponse response) throws Exception
- {
- // populating the table with a dummy list
+ /**
+ * @see org.andromda.samples.carrental.contracts.web.registerAccident.RegisterAccidentController#searchForContractsOfCustomer(org.andromda.samples.carrental.contracts.web.registerAccident.SearchForContractsOfCustomerForm)
+ */
+ @Override
+ public void searchForContractsOfCustomer(
+ SearchForContractsOfCustomerForm form) throws Throwable {
+ // populating the table with a dummy list
form.setContracts(contractsDummyList);
- }
+ }
- /**
- * @see org.andromda.samples.carrental.contracts.web.registerAccident.RegisterAccidentController#registerAccident(org.apache.struts.action.ActionMapping, RegisterAccidentForm, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
- */
- public final String registerAccident(ActionMapping mapping, RegisterAccidentForm form, HttpServletRequest request, HttpServletResponse response) throws Exception
- {
- // this property receives a default value, just to have the application running on dummy data
+ /**
+ * @see org.andromda.samples.carrental.contracts.web.registerAccident.RegisterAccidentController#registerAccident(org.andromda.samples.carrental.contracts.web.registerAccident.RegisterAccidentForm)
+ */
+ @Override
+ public String registerAccident(RegisterAccidentForm form) throws Throwable {
+ // this property receives a default value, just to have the application running on dummy data
form.setIdContract("idContract-test");
return null;
- }
-
+ }
+
/**
* This dummy variable is used to populate the "contracts" table.
* You may delete it when you add you own code in this controller.
Modified: trunk/samples/car-rental-system/web/src/main/java/org/andromda/samples/carrental/contracts/web/reserveCar/CustomerReservesCarControllerImpl.java
===================================================================
--- trunk/samples/car-rental-system/web/src/main/java/org/andromda/samples/carrental/contracts/web/reserveCar/CustomerReservesCarControllerImpl.java 2014-01-14 22:19:37 UTC (rev 15388)
+++ trunk/samples/car-rental-system/web/src/main/java/org/andromda/samples/carrental/contracts/web/reserveCar/CustomerReservesCarControllerImpl.java 2014-01-14 22:27:09 UTC (rev 15389)
@@ -2,53 +2,70 @@
package org.andromda.samples.carrental.contracts.web.reserveCar;
import java.io.Serializable;
+import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
import java.util.Date;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import org.apache.struts.action.ActionMapping;
+import java.util.List;
+import javax.faces.model.SelectItem;
+
/**
* @see org.andromda.samples.carrental.contracts.web.reserveCar.CustomerReservesCarController
*/
public class CustomerReservesCarControllerImpl extends CustomerReservesCarController
{
- /**
- * @see org.andromda.samples.carrental.contracts.web.reserveCar.CustomerReservesCarController#searchForReservations(org.apache.struts.action.ActionMapping, SearchForReservationsForm, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
- */
- public final void searchForReservations(ActionMapping mapping, SearchForReservationsForm form, HttpServletRequest request, HttpServletResponse response) throws Exception
- {
- // populating the table with a dummy list
- form.setReservations(reservationsDummyList);
- // this property receives a default value, just to have the application running on dummy data
- form.setComfortClass("comfortClass-test");
- form.setComfortClassValueList(new Object[] {"comfortClass-1", "comfortClass-2", "comfortClass-3", "comfortClass-4", "comfortClass-5"});
- form.setComfortClassLabelList(form.getComfortClassValueList());
- }
+ /**
+ * @see org.andromda.samples.carrental.contracts.web.reserveCar.CustomerReservesCarController#searchForReservations(org.andromda.samples.carrental.contracts.web.reserveCar.SearchForReservationsForm)
+ */
+ @Override
+ public void searchForReservations(SearchForReservationsForm form)
+ throws Throwable {
+ // populating the table with a dummy list
+ form.setReservations(reservationsDummyList);
+ // this property receives a default value, just to have the application
+ // running on dummy data
+ form.setComfortClass("comfortClass-test");
- /**
- * @see org.andromda.samples.carrental.contracts.web.reserveCar.CustomerReservesCarController#reserve(org.apache.struts.action.ActionMapping, ReserveForm, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
- */
- public final void reserve(ActionMapping mapping, ReserveForm form, HttpServletRequest request, HttpServletResponse response) throws Exception
- {
- // setting a date
- form.setReservationDateAsDate(new Date());
- // this property receives a default value, just to have the application running on dummy data
- form.setComfortClass("comfortClass-test");
- form.setComfortClassValueList(new Object[] {"comfortClass-1", "comfortClass-2", "comfortClass-3", "comfortClass-4", "comfortClass-5"});
- form.setComfortClassLabelList(form.getComfortClassValueList());
- }
+ List<SelectItem> confortClass = new ArrayList<SelectItem>();
+ confortClass.add(new SelectItem("comfortClass-1"));
+ confortClass.add(new SelectItem("comfortClass-2"));
+ confortClass.add(new SelectItem("comfortClass-3"));
+ confortClass.add(new SelectItem("comfortClass-4"));
+ confortClass.add(new SelectItem("comfortClass-5"));
+ form.setComfortClassBackingList(confortClass);
+ }
- /**
- * @see org.andromda.samples.carrental.contracts.web.reserveCar.CustomerReservesCarController#deleteReservation(org.apache.struts.action.ActionMapping, DeleteReservationForm, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
- */
- public final void deleteReservation(ActionMapping mapping, DeleteReservationForm form, HttpServletRequest request, HttpServletResponse response) throws Exception
- {
- // this property receives a default value, just to have the application running on dummy data
- form.setIdReservation("idReservation-test");
- }
+ /**
+ * @see org.andromda.samples.carrental.contracts.web.reserveCar.CustomerReservesCarController#reserve(org.andromda.samples.carrental.contracts.web.reserveCar.ReserveForm)
+ */
+ @Override
+ public void reserve(ReserveForm form) throws Throwable {
+ // setting a date
+ form.setReservationDate(new Date());
+ // this property receives a default value, just to have the application
+ // running on dummy data
+ form.setComfortClass("comfortClass-test");
+ List<SelectItem> confortClass = new ArrayList<SelectItem>();
+ confortClass.add(new SelectItem("comfortClass-1"));
+ confortClass.add(new SelectItem("comfortClass-2"));
+ confortClass.add(new SelectItem("comfortClass-3"));
+ confortClass.add(new SelectItem("comfortClass-4"));
+ confortClass.add(new SelectItem("comfortClass-5"));
+ form.setComfortClassBackingList(confortClass);
+ }
+
+ /**
+ * @see org.andromda.samples.carrental.contracts.web.reserveCar.CustomerReservesCarController#deleteReservation(org.andromda.samples.carrental.contracts.web.reserveCar.DeleteReservationForm)
+ */
+ @Override
+ public void deleteReservation(DeleteReservationForm form) throws Throwable {
+ // this property receives a default value, just to have the application
+ // running on dummy data
+ form.setIdReservation("idReservation-test");
+ }
+
/**
* This dummy variable is used to populate the "reservations" table.
* You may delete it when you add you own code in this controller.
@@ -111,4 +128,6 @@
}
}
+
+
}
Modified: trunk/samples/car-rental-system/web/src/main/java/org/andromda/samples/carrental/contracts/web/returnCar/ReturnCarControllerImpl.java
===================================================================
--- trunk/samples/car-rental-system/web/src/main/java/org/andromda/samples/carrental/contracts/web/returnCar/ReturnCarControllerImpl.java 2014-01-14 22:19:37 UTC (rev 15388)
+++ trunk/samples/car-rental-system/web/src/main/java/org/andromda/samples/carrental/contracts/web/returnCar/ReturnCarControllerImpl.java 2014-01-14 22:27:09 UTC (rev 15389)
@@ -4,105 +4,97 @@
import java.io.Serializable;
import java.util.Arrays;
import java.util.Collection;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import org.apache.struts.action.ActionMapping;
/**
* @see org.andromda.samples.carrental.contracts.web.returnCar.ReturnCarController
*/
-public class ReturnCarControllerImpl extends ReturnCarController
-{
- /**
- * @see org.andromda.samples.carrental.contracts.web.returnCar.ReturnCarController#returnCar(org.apache.struts.action.ActionMapping, ReturnCarForm, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
- */
- public final String returnCar(ActionMapping mapping, ReturnCarForm form, HttpServletRequest request, HttpServletResponse response) throws Exception
- {
- // this property receives a default value, just to have the application running on dummy data
- form.setId("id-test");
- return null;
- }
+public class ReturnCarControllerImpl extends ReturnCarController {
+
+ /**
+ * @see org.andromda.samples.carrental.contracts.web.returnCar.ReturnCarController#returnCar(org.andromda.samples.carrental.contracts.web.returnCar.ReturnCarForm)
+ */
+ @Override
+ public String returnCar(ReturnCarForm form) throws Throwable {
+ // this property receives a default value, just to have the application
+ form.setId("id-test");
+ return null;
+ }
- /**
- * @see org.andromda.samples.carrental.contracts.web.returnCar.ReturnCarController#searchForContractsOfCustomer(org.apache.struts.action.ActionMapping, SearchForContractsOfCustomerForm, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
- */
- public final void searchForContractsOfCustomer(ActionMapping mapping, SearchForContractsOfCustomerForm form, HttpServletRequest reque...
[truncated message content] |
|
From: <wal...@us...> - 2014-01-14 22:19:40
|
Revision: 15388
http://sourceforge.net/p/andromda/svn/15388
Author: walterim
Date: 2014-01-14 22:19:37 +0000 (Tue, 14 Jan 2014)
Log Message:
-----------
Removing deprecation from getSession
Modified Paths:
--------------
trunk/cartridges/andromda-spring/src/main/resources/templates/spring/hibernate/SpringHibernateDaoBase.vsl
Modified: trunk/cartridges/andromda-spring/src/main/resources/templates/spring/hibernate/SpringHibernateDaoBase.vsl
===================================================================
--- trunk/cartridges/andromda-spring/src/main/resources/templates/spring/hibernate/SpringHibernateDaoBase.vsl 2014-01-14 22:18:48 UTC (rev 15387)
+++ trunk/cartridges/andromda-spring/src/main/resources/templates/spring/hibernate/SpringHibernateDaoBase.vsl 2014-01-14 22:19:37 UTC (rev 15388)
@@ -99,7 +99,6 @@
* @deprecated Use this.sessionFactory.getCurrentSession() instead
* @return currentSession
*/
- @Deprecated
protected org.hibernate.Session getSession() {
return this.sessionFactory.getCurrentSession();
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <wal...@us...> - 2014-01-14 22:18:51
|
Revision: 15387
http://sourceforge.net/p/andromda/svn/15387
Author: walterim
Date: 2014-01-14 22:18:48 +0000 (Tue, 14 Jan 2014)
Log Message:
-----------
Removing bpm4struts cartridge from the app generator
Removed Paths:
-------------
trunk/andromda-andromdapp/projects/j2ee/maven2/src/main/resources/templates/j2ee/maven2/workflow/
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <wal...@us...> - 2014-01-14 22:17:41
|
Revision: 15386
http://sourceforge.net/p/andromda/svn/15386
Author: walterim
Date: 2014-01-14 22:17:38 +0000 (Tue, 14 Jan 2014)
Log Message:
-----------
Removing bpm4struts cartridge from the app generator
Modified Paths:
--------------
trunk/andromda-andromdapp/projects/j2ee/maven2/src/main/resources/META-INF/andromdapp/andromdapp.xml
trunk/andromda-andromdapp/projects/j2ee/maven2/src/main/resources/templates/j2ee/maven2/app/pom.xml.vsl
trunk/andromda-andromdapp/projects/j2ee/maven2/src/main/resources/templates/j2ee/maven2/core/pom.xml.vsl
trunk/andromda-andromdapp/projects/j2ee/maven2/src/main/resources/templates/j2ee/maven2/m2eclipse.bat.vsl
trunk/andromda-andromdapp/projects/j2ee/maven2/src/main/resources/templates/j2ee/maven2/mda/pom.xml.vsl
trunk/andromda-andromdapp/projects/j2ee/maven2/src/main/resources/templates/j2ee/maven2/mda/readme.txt.vsl
trunk/andromda-andromdapp/projects/j2ee/maven2/src/main/resources/templates/j2ee/maven2/mda/src/main/config/andromda.xml.vsl
trunk/andromda-andromdapp/projects/j2ee/maven2/src/main/resources/templates/j2ee/maven2/mda/src/main/config/mappings/WebMergeMappings.xml.vsl
trunk/andromda-andromdapp/projects/j2ee/maven2/src/main/resources/templates/j2ee/maven2/pom.xml.vsl
trunk/andromda-andromdapp/projects/j2ee/maven2/src/main/resources/templates/j2ee/maven2/web/pom.xml.vsl
Modified: trunk/andromda-andromdapp/projects/j2ee/maven2/src/main/resources/META-INF/andromdapp/andromdapp.xml
===================================================================
--- trunk/andromda-andromdapp/projects/j2ee/maven2/src/main/resources/META-INF/andromdapp/andromdapp.xml 2014-01-14 22:13:59 UTC (rev 15385)
+++ trunk/andromda-andromdapp/projects/j2ee/maven2/src/main/resources/META-INF/andromdapp/andromdapp.xml 2014-01-14 22:17:38 UTC (rev 15386)
@@ -5,9 +5,8 @@
<p>This wizard creates an AndroMDA powered J2EE application. An empty model is provided for your convenience.</p>
<p>You can select amongst the following additional features:</p>
<li><b>Persistence</b>: You can select the transaction/persistence framework that best suits your needs (EJB, EJB3, Spring, Hibernate)</li>
- <li><b>Workflow capabilities</b>: Add JBoss JBPM support to your application</li>
<li><b>Webservices</b>: Enable web services for your project and choose an appropriate web service framework</li>
- <li><b>Web front-end</b>: If your project needs a web based user interface, you can choose between JSF standalone and JSF portlet</li>
+ <li><b>Web front-end</b>: If your project needs a web based user interface.</li>
]]>
</documentation>
<resourceLocations>
@@ -18,10 +17,6 @@
<condition id="ear" equal="true"/>
<output patterns="**/*">app/</output>
</conditions>
- <conditions>
- <condition id="workflow" equal="true"/>
- <output patterns="**/*">workflow/</output>
- </conditions>
<conditions type="or">
<condition id="transactionPersistenceType" equal="ejb"/>
<condition id="transactionPersistenceType" equal="ejb3"/>
@@ -332,14 +327,6 @@
<response>mysql</response>
</responses>
</prompt-->
- <prompt id="workflow">
- <text>Will your project need workflow engine capabilities? (it uses jBPM and Hibernate3)?</text>
- <shortText>Enable workflow capabilities</shortText>
- <responses type="java.lang.Boolean">
- <response>yes</response>
- <response>no</response>
- </responses>
- </prompt>
<prompt id="web">
<text>Will your project have a web user interface?</text>
<shortText>Web interface</shortText>
@@ -347,51 +334,10 @@
<response>yes</response>
<response>no</response>
</responses>
- </prompt>
- <prompt id="webType" setResponseAsTrue="true">
- <text>Would you like your web user interface to use JSF or Struts?</text>
- <shortText>Web interface technology</shortText>
- <preconditions>
- <condition id="web" equal="true"/>
- </preconditions>
- <responses>
- <response>jsf</response>
- <response>struts</response>
- </responses>
- </prompt>
- <prompt id="jsfApplicationType" setResponseAsTrue="true">
- <text>Would you like a standalone or portlet JSF application (Note: Liferay is the only currently supported portlet container)?</text>
- <shortText>Web interface technology</shortText>
- <preconditions>
- <condition id="webType" equal="jsf"/>
- </preconditions>
- <responses>
- <response>standalone</response>
- <response>portlet</response>
- </responses>
<conditions>
- <condition equal="portlet">
- <setProperty id="portletContainer">liferay</setProperty>
- </condition>
- </conditions>
- </prompt>
- <prompt id="ajaxLibraryType" setResponseAsTrue="true">
- <text>Would you like to add ICEFaces support to your portlet?</text>
- <shortText>Add ICEFaces support</shortText>
- <preconditions>
- <condition id="portlet" equal="true"/>
- </preconditions>
- <responses type="java.lang.Boolean">
- <response>yes</response>
- <response>no</response>
- </responses>
- <conditions>
<condition equal="yes">
- <setProperty id="ajaxLibrary">icefaces</setProperty>
+ <setProperty id="jsf">true</setProperty><!-- currently only JSF is supported -->
</condition>
- <condition equal="no">
- <setProperty id="ajaxLibrary">trinidad</setProperty>
- </condition>
</conditions>
</prompt>
<prompt id="jbossSeam" setResponseAsTrue="false">
@@ -400,7 +346,7 @@
<preconditions>
<condition id="transactionPersistenceType" equal="ejb3"/>
<condition id="web" equal="true"/>
- <condition id="webType" equal="jsf"/>
+ <condition id="jsf" equal="true"/>
</preconditions>
<responses type="java.lang.Boolean">
<response>yes</response>
Modified: trunk/andromda-andromdapp/projects/j2ee/maven2/src/main/resources/templates/j2ee/maven2/app/pom.xml.vsl
===================================================================
--- trunk/andromda-andromdapp/projects/j2ee/maven2/src/main/resources/templates/j2ee/maven2/app/pom.xml.vsl 2014-01-14 22:13:59 UTC (rev 15385)
+++ trunk/andromda-andromdapp/projects/j2ee/maven2/src/main/resources/templates/j2ee/maven2/app/pom.xml.vsl 2014-01-14 22:17:38 UTC (rev 15386)
@@ -47,14 +47,7 @@
<type>war</type>
</dependency>
#end
-#if ($workflow)
<dependency>
- <groupId>${project.groupId}</groupId>
- <artifactId>${applicationId}-workflow</artifactId>
- <version>${project.version}</version>
- </dependency>
-#end
- <dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
</dependency>
@@ -167,13 +160,6 @@
<groupId>${project.groupId}</groupId>
<artifactId>${applicationId}-core</artifactId>
</ejbModule>
-#if ($workflow)
- <jarModule>
- <groupId>${project.groupId}</groupId>
- <artifactId>${applicationId}-workflow</artifactId>
- <includeInApplicationXml>false</includeInApplicationXml>
- </jarModule>
-#end
#end
#if ($web)
<webModule>
Modified: trunk/andromda-andromdapp/projects/j2ee/maven2/src/main/resources/templates/j2ee/maven2/core/pom.xml.vsl
===================================================================
--- trunk/andromda-andromdapp/projects/j2ee/maven2/src/main/resources/templates/j2ee/maven2/core/pom.xml.vsl 2014-01-14 22:13:59 UTC (rev 15385)
+++ trunk/andromda-andromdapp/projects/j2ee/maven2/src/main/resources/templates/j2ee/maven2/core/pom.xml.vsl 2014-01-14 22:17:38 UTC (rev 15386)
@@ -26,13 +26,6 @@
<artifactId>${applicationId}-common</artifactId>
<version>${project.version}</version>
</dependency>
-#if ($workflow)
- <dependency>
- <groupId>${project.groupId}</groupId>
- <artifactId>${applicationId}-workflow</artifactId>
- <version>${project.version}</version>
- </dependency>
-#end
#if ($spring || $hibernate)
#if ($spring)
<dependency>
Modified: trunk/andromda-andromdapp/projects/j2ee/maven2/src/main/resources/templates/j2ee/maven2/m2eclipse.bat.vsl
===================================================================
--- trunk/andromda-andromdapp/projects/j2ee/maven2/src/main/resources/templates/j2ee/maven2/m2eclipse.bat.vsl 2014-01-14 22:13:59 UTC (rev 15385)
+++ trunk/andromda-andromdapp/projects/j2ee/maven2/src/main/resources/templates/j2ee/maven2/m2eclipse.bat.vsl 2014-01-14 22:17:38 UTC (rev 15386)
@@ -69,11 +69,6 @@
mkdir CXF\target\src\main\java
#end
-#if ($workflow)
-mkdir workflow\src\main\java
-mkdir workflow\target\src\main\java
-
-#end
rename ..\.project old.project
rename ..\.classpath old.classpath
Modified: trunk/andromda-andromdapp/projects/j2ee/maven2/src/main/resources/templates/j2ee/maven2/mda/pom.xml.vsl
===================================================================
--- trunk/andromda-andromdapp/projects/j2ee/maven2/src/main/resources/templates/j2ee/maven2/mda/pom.xml.vsl 2014-01-14 22:13:59 UTC (rev 15385)
+++ trunk/andromda-andromdapp/projects/j2ee/maven2/src/main/resources/templates/j2ee/maven2/mda/pom.xml.vsl 2014-01-14 22:17:38 UTC (rev 15386)
@@ -103,14 +103,6 @@
<scope>runtime</scope>
</dependency>
#end
-#if ($workflow)
- <dependency>
- <groupId>org.andromda.cartridges</groupId>
- <artifactId>andromda-jbpm-cartridge</artifactId>
- <version>${andromda.version}</version>
- <scope>runtime</scope>
- </dependency>
-#end
#if ($webservice && !$jsr181Webservice)
<dependency>
<groupId>org.andromda.cartridges</groupId>
@@ -125,20 +117,13 @@
<version>${andromda.version}</version>
<scope>runtime</scope>
</dependency>
-#if ($struts)
+#if ($jsf)
<dependency>
<groupId>org.andromda.cartridges</groupId>
- <artifactId>andromda-bpm4struts-cartridge</artifactId>
+ <artifactId>andromda-jsf2-cartridge</artifactId>
<version>${andromda.version}</version>
<scope>runtime</scope>
</dependency>
-#elseif ($jsf)
- <dependency>
- <groupId>org.andromda.cartridges</groupId>
- <artifactId>andromda-jsf-cartridge</artifactId>
- <version>${andromda.version}</version>
- <scope>runtime</scope>
- </dependency>
#end
#if ($jbossSeam)
<dependency>
@@ -444,10 +429,6 @@
<web.manual.web.dir>${web.manual.dir}/webapp</web.manual.web.dir>
<web.manual.java.dir>${web.manual.dir}/java</web.manual.java.dir>
#end
-#if ($workflow)
- <workflow.generated.dir>${project.basedir}/../workflow/target/src/main/java</workflow.generated.dir>
- <workflow.manual.dir>${project.basedir}/../workflow/src/main</workflow.manual.dir>
-#end
#if ($webservice && !$jsr181Webservice)
<webservice.project>${project.basedir}/../webservice</webservice.project>
#if ($cxf || $axis)
Modified: trunk/andromda-andromdapp/projects/j2ee/maven2/src/main/resources/templates/j2ee/maven2/mda/readme.txt.vsl
===================================================================
--- trunk/andromda-andromdapp/projects/j2ee/maven2/src/main/resources/templates/j2ee/maven2/mda/readme.txt.vsl 2014-01-14 22:13:59 UTC (rev 15385)
+++ trunk/andromda-andromdapp/projects/j2ee/maven2/src/main/resources/templates/j2ee/maven2/mda/readme.txt.vsl 2014-01-14 22:17:38 UTC (rev 15386)
@@ -182,21 +182,6 @@
| Web context root directory, containing META-INF, WEB-INF, and wsdl
|
#end
-#if ($workflow)
- +-- /workflow
- | |
- | | The Workflow module collects those resources and classes
- | | that are needed to support the workflow engine
- | |
- | +-- pom.xml
- | | lists Workflow dependencies
- | +-- /src/main/sar
- | | files used to configure the workflow engine connection,
- | | please note that these files contain properties
- | | that will be dynamically replaced during the build
- | +-- /target
- |
-#end
#if ($web)
+-- /web
| |
@@ -332,12 +317,6 @@
only build the core module
-#if ($workflow)
- %> mvn -N andromdapp:build -Dmodules=workflow (or mvn -f workflow/pom.xml)
-
- only build the workflow module
-
-#end
#if ($web)
%> mvn -N andromdapp:build -Dmodules=web (or mvn -f web/pom.xml)
Modified: trunk/andromda-andromdapp/projects/j2ee/maven2/src/main/resources/templates/j2ee/maven2/mda/src/main/config/andromda.xml.vsl
===================================================================
--- trunk/andromda-andromdapp/projects/j2ee/maven2/src/main/resources/templates/j2ee/maven2/mda/src/main/config/andromda.xml.vsl 2014-01-14 22:13:59 UTC (rev 15385)
+++ trunk/andromda-andromdapp/projects/j2ee/maven2/src/main/resources/templates/j2ee/maven2/mda/src/main/config/andromda.xml.vsl 2014-01-14 22:17:38 UTC (rev 15386)
@@ -52,7 +52,7 @@
<modelPackage process="false">org::andromda::sample::notprocessed</modelPackage>
</modelPackages-->
<!-- Can filter in/out specific andromda model validation constraints (default true=validate all) -->
-#if ($jsf || $struts)
+#if ($jsf)
<!-- JSF needs to disable these validations because there are situations where we can't use native
types in required (multiplicity > 0) parameters or VO attributes-->
<constraints>
@@ -375,21 +375,6 @@
</properties>
</namespace>
#end
-#if ($workflow)
- <!-- See http://docs.andromda.org/andromda-cartridges/andromda-jbpm-cartridge/namespace.html -->
- <namespace name="jbpm">
- <properties>
- <property name="definitions">${workflow.generated.dir}</property>
- <property name="handlers">${workflow.generated.dir}</property>
- <property name="handler-impls">${workflow.manual.dir}/java</property>
- <property name="helpers">${workflow.generated.dir}</property>
- <property name="nodes">${workflow.generated.dir}</property>
- <property name="clients">${workflow.generated.dir}</property>
- <property name="configuration">${workflow.manual.dir}/conf</property>
- <property name="clientPackage">${application.package}.business.process</property>
- </properties>
- </namespace>
-#end
#if ($webservice && !$jsr181Webservice)
<!-- See http://docs.andromda.org/andromda-cartridges/andromda-webservice-cartridge/namespace.html -->
<namespace name="webservice">
@@ -489,33 +474,7 @@
<property name="service-impls">${core.manual.java.dir}</property>
</properties>
</namespace>
-#if ($struts)
- <!-- See http://docs.andromda.org/andromda-cartridges/andromda-bpm4struts-cartridge/namespace.html -->
- <namespace name="bpm4struts">
- <properties>
- <property name="defaultDateFormat">MM/dd/yyyy</property>
- <property name="normalizeMessages">true</property>
- <property name="forms">${web.generated.java.dir}</property>
- <property name="pages">${web.generated.web.dir}</property>
- <property name="actions">${web.generated.java.dir}</property>
- <property name="controllers">${web.generated.java.dir}</property>
- <property name="controller-impls">${web.manual.java.dir}</property>
- <property name="decorators">${web.manual.java.dir}</property>
- <property name="messages">${web.generated.web.dir}/WEB-INF/classes</property>
- <property name="configuration">${web.generated.web.dir}/WEB-INF</property>
- <!-- uncomment to enable web tier security
- <property name="securityRealm">${application.id}</property>
- -->
-#if ($ejb)
- <property name="serviceAccessorPattern">{0}.{1}Util.getHome().create()</property>
-#else
- <property name="serviceAccessorPattern">${application.package}.ServiceLocator.instance().get{1}()</property>
-#end
- <property name="mergeMappingsUri">file:${conf.dir}/mappings/WebMergeMappings.xml</property>
- <property name="manageableServiceAccessorPattern">${application.package}.ManageableServiceLocator.instance().get{1}()</property>
- </properties>
- </namespace>
-#elseif ($jsf)
+#if ($jsf)
#if ($jbossSeam)
<namespace name="seam">
<properties>
@@ -540,21 +499,23 @@
</properties>
</namespace>
#else
- <!-- See http://docs.andromda.org/andromda-cartridges/andromda-jsf-cartridge/namespace.html -->
- <namespace name="jsf">
+ <!-- See http://docs.andromda.org/andromda-cartridges/andromda-jsf2-cartridge/namespace.html -->
+ <namespace name="jsf2">
<properties>
+ <property name="componentSet">primefaces</property>
<property name="useAutocompleteLookup">true</property>
+ <property name="managedBeansPackage">${application.package}</property>
+ <property name="facesConfigFiles"></property>
+ <property name="defaultDateFormat">MM/dd/yyyy</property>
+
#if ($webservice && !$jsr181Webservice && !$cxf)
<property name="languageMappingsUri">AxisJavaMappings</property>
#end
-#if ($portlet)
- <property name="portletContainer">$portletContainer</property>
-#end
- <property name="normalizeMessages">true</property>
<!-- generates smaller resource bundles with duplicate element names specified by a single message.
This optimization is turned off by default for backward compatibility
<property name="normalizeMessages">true</property-->
<property name="applicationName">${application.name}</property>
+ <property name="exceptions">${common.generated.dir}</property>
<property name="forms">${web.generated.java.dir}</property>
<property name="views">${web.generated.web.dir}</property>
<property name="managed-beans">${web.generated.java.dir}</property>
@@ -563,13 +524,7 @@
<property name="messages">${web.generated.web.dir}</property>
<property name="configuration">${web.generated.web.dir}</property>
<property name="custom-configuration">${web.manual.dir}/resources</property>
-#if ($ajaxLibrary.equals("icefaces"))
- <property name="ajaxLibrary">icefaces</property>
- <property name="portletClass">com.icesoft.faces.webapp.http.portlet.MainPortlet</property>
- <property name="fileTypeName">com.icesoft.faces.component.inputfile.InputFile</property>
-#else
<property name="libraries">${web.generated.web.dir}</property>
-#end
<property name="custom-resources">${web.manual.web.dir}</property>
<!-- uncomment to enable web tier security
<property name="securityRealm">${application.id}</property>
Modified: trunk/andromda-andromdapp/projects/j2ee/maven2/src/main/resources/templates/j2ee/maven2/mda/src/main/config/mappings/WebMergeMappings.xml.vsl
===================================================================
--- trunk/andromda-andromdapp/projects/j2ee/maven2/src/main/resources/templates/j2ee/maven2/mda/src/main/config/mappings/WebMergeMappings.xml.vsl 2014-01-14 22:13:59 UTC (rev 15385)
+++ trunk/andromda-andromdapp/projects/j2ee/maven2/src/main/resources/templates/j2ee/maven2/mda/src/main/config/mappings/WebMergeMappings.xml.vsl 2014-01-14 22:17:38 UTC (rev 15386)
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!--
This is used to map merge patterns in files generated
- by#if($jsf) jsf cartridge#else Bpm4Struts cartridge#end to new patterns. Just add content to the
+ by jsf2 cartridge to new patterns. Just add content to the
CDATA sections of the <to/> elements in order to
use the following merge points.
-->
Modified: trunk/andromda-andromdapp/projects/j2ee/maven2/src/main/resources/templates/j2ee/maven2/pom.xml.vsl
===================================================================
--- trunk/andromda-andromdapp/projects/j2ee/maven2/src/main/resources/templates/j2ee/maven2/pom.xml.vsl 2014-01-14 22:13:59 UTC (rev 15385)
+++ trunk/andromda-andromdapp/projects/j2ee/maven2/src/main/resources/templates/j2ee/maven2/pom.xml.vsl 2014-01-14 22:17:38 UTC (rev 15386)
@@ -165,47 +165,23 @@
#if ($jsf)
<dependency>
<groupId>org.andromda.cartridges</groupId>
- <artifactId>andromda-jsf-cartridge</artifactId>
+ <artifactId>andromda-jsf2-cartridge</artifactId>
<version>${andromda.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
- <groupId>org.andromda.cartridges</groupId>
- <artifactId>andromda-jsf-cartridge-components</artifactId>
- <version>${andromda.version}</version>
- <scope>runtime</scope>
- <exclusions>
- <exclusion>
- <groupId>org.andromda</groupId>
- <artifactId>andromda-core</artifactId>
- </exclusion>
- <exclusion>
- <groupId>org.andromda.metafacades</groupId>
- <artifactId>andromda-metafacades-uml</artifactId>
- </exclusion>
- <exclusion>
- <groupId>org.andromda.translationlibraries</groupId>
- <artifactId>andromda-ocl-validation-library</artifactId>
- </exclusion>
- <exclusion>
- <groupId>log4j</groupId>
- <artifactId>log4j</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
- <dependency>
<groupId>org.apache.myfaces.core</groupId>
<artifactId>myfaces-api</artifactId>
- <version>1.2.9</version>
+ <version>2.1.12</version>
</dependency>
<dependency>
<groupId>org.apache.myfaces.core</groupId>
<artifactId>myfaces-impl</artifactId>
- <version>1.2.9</version>
+ <version>2.1.12</version>
</dependency>
<dependency>
<groupId>org.apache.myfaces.tomahawk</groupId>
- <artifactId>tomahawk12</artifactId>
+ <artifactId>tomahawk20</artifactId>
<version>1.1.13</version>
#if($ear)
<exclusions>
@@ -220,38 +196,32 @@
<dependency>
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId>
- <version>1.1.0.GA</version>
+ <version>1.1.0.Final</version>
</dependency>
<dependency>
<groupId>org.apache.myfaces.extensions.validator</groupId>
<artifactId>myfaces-extval-core</artifactId>
- <version>1.2.4</version>
+ <version>2.0.5</version>
</dependency>
<dependency>
<groupId>org.apache.myfaces.extensions.validator.validation-modules</groupId>
<artifactId>myfaces-extval-property-validation</artifactId>
- <version>1.2.4</version>
+ <version>2.0.5</version>
</dependency>
<dependency>
<groupId>org.apache.myfaces.extensions.validator.validation-modules</groupId>
<artifactId>myfaces-extval-bean-validation</artifactId>
- <version>1.2.4</version>
+ <version>2.0.5</version>
</dependency>
<dependency>
<groupId>org.apache.myfaces.extensions.validator.component-support-modules</groupId>
<artifactId>myfaces-extval-generic-support</artifactId>
- <version>1.2.4</version>
- <exclusions>
- <exclusion>
- <groupId>cglib</groupId>
- <artifactId>cglib</artifactId>
- </exclusion>
- </exclusions>
+ <version>2.0.4</version>
</dependency>
<dependency>
- <groupId>org.apache.myfaces.extensions.validator.component-support-modules</groupId>
- <artifactId>myfaces-extval-trinidad-support</artifactId>
- <version>1.2.4</version>
+ <groupId>org.primefaces</groupId>
+ <artifactId>primefaces</artifactId>
+ <version>3.4.2</version>
</dependency>
#if (!$spring && !$hibernate && !$ejb3)
<dependency>
@@ -276,52 +246,7 @@
<scope>provided</scope>
#end
</dependency>
-#if ($portlet)
<dependency>
- <groupId>javax.portlet</groupId>
- <artifactId>portlet-api</artifactId>
- <version>1.0</version>
- <scope>provided</scope>
- </dependency>
-#if ($ajaxLibrary.equals("icefaces"))
- <dependency>
- <groupId>org.icefaces</groupId>
- <artifactId>icefaces</artifactId>
- <version>1.8.0</version>
- <scope>runtime</scope>
- </dependency>
- <dependency>
- <groupId>org.icefaces</groupId>
- <artifactId>icefaces-comps</artifactId>
- <version>1.8.0</version>
- <scope>runtime</scope>
- </dependency>
- <dependency>
- <groupId>org.icefaces</groupId>
- <artifactId>icefaces-facelets</artifactId>
- <version>1.8.0</version>
- <scope>runtime</scope>
- </dependency>
-#end
-#else
- <dependency>
- <groupId>org.apache.myfaces.trinidad</groupId>
- <artifactId>trinidad-api</artifactId>
- <version>1.2.14</version>
- </dependency>
- <dependency>
- <groupId>org.apache.myfaces.trinidad</groupId>
- <artifactId>trinidad-impl</artifactId>
- <version>1.2.14</version>
- </dependency>
- <dependency>
- <groupId>com.sun.facelets</groupId>
- <artifactId>jsf-facelets</artifactId>
- <version>1.1.15</version>
- <scope>runtime</scope>
- </dependency>
-#end
- <dependency>
<groupId>org.andromda</groupId>
<artifactId>andromda-utils</artifactId>
<version>${andromda.version}</version>
@@ -711,25 +636,8 @@
<scope>runtime</scope>
</dependency>
#end
-#if ($workflow)
+#if ($web || $hibernate)
<dependency>
- <groupId>org.jbpm</groupId>
- <artifactId>jbpm</artifactId>
- <version>3.0</version>
- </dependency>
- <dependency>
- <groupId>org.jbpm</groupId>
- <artifactId>jbpm-identity</artifactId>
- <version>3.0</version>
- </dependency>
- <dependency>
- <groupId>c3p0</groupId>
- <artifactId>c3p0</artifactId>
- <version>0.8.5.2</version>
- </dependency>
-#end
-#if ($web || $hibernate || $workflow)
- <dependency>
<groupId>antlr</groupId>
<artifactId>antlr</artifactId>
<version>2.7.7</version>
@@ -745,14 +653,14 @@
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
- <version>2.5</version>
+ <version>3.0</version>
<scope>provided</scope>
</dependency>
<dependency>
- <groupId>com.lowagie</groupId>
- <artifactId>itext</artifactId>
- <version>4.2.1</version>
- <scope>runtime</scope>
+ <groupId>javax.el</groupId>
+ <artifactId>el-api</artifactId>
+ <version>2.2.1-b04</version>
+ <scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
@@ -767,71 +675,6 @@
<scope>runtime</scope>
</dependency>
#end
-#if ($struts)
- <dependency>
- <groupId>commons-validator</groupId>
- <artifactId>commons-validator</artifactId>
- <version>1.4.0</version>
- </dependency>
- <dependency>
- <groupId>struts</groupId>
- <artifactId>struts</artifactId>
- <!-- v1.3: package org.apache.struts.actions does not exist -->
- <version>1.2.9</version>
- <exclusions>
- <exclusion>
- <groupId>commons-chain</groupId>
- <artifactId>commons-chain</artifactId>
- </exclusion>
- <exclusion>
- <groupId>commons-digester</groupId>
- <artifactId>commons-digester</artifactId>
- </exclusion>
- <exclusion>
- <groupId>xalan</groupId>
- <artifactId>xalan</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
- <dependency>
- <groupId>struts-menu</groupId>
- <artifactId>struts-menu</artifactId>
- <version>2.3</version>
- </dependency>
- <dependency>
- <groupId>displaytag</groupId>
- <artifactId>displaytag</artifactId>
- <version>1.2</version>
- <scope>runtime</scope>
- <exclusions>
- <exclusion>
- <groupId>taglibs</groupId>
- <artifactId>standard</artifactId>
- </exclusion>
- <exclusion>
- <groupId>log4j</groupId>
- <artifactId>log4j</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
-#end
-#if ($jsf)
-#if ($jbossSeam)
- <!-- MyFaces Dependencies -->
- <dependency>
- <groupId>org.apache.myfaces.core</groupId>
- <artifactId>myfaces-api</artifactId>
- <version>1.1.5</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.myfaces.core</groupId>
- <artifactId>myfaces-impl</artifactId>
- <version>1.1.5</version>
- <scope>provided</scope>
- </dependency>
-#end
-#end
#if ($axis)
<dependency>
<groupId>javax.activation</groupId>
@@ -1119,32 +962,32 @@
</exclusion>
<!--Jetty should not be compile scope, should not be bundled-->
<exclusion>
- <groupId>org.eclipse.jetty</groupId>
+ <groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-server</artifactId>
</exclusion>
<exclusion>
- <groupId>org.eclipse.jetty</groupId>
+ <groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-continuation</artifactId>
</exclusion>
<exclusion>
- <groupId>org.eclipse.jetty</groupId>
+ <groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-http</artifactId>
</exclusion>
<exclusion>
- <groupId>org.eclipse.jetty</groupId>
+ <groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-io</artifactId>
</exclusion>
<exclusion>
- <groupId>org.eclipse.jetty</groupId>
+ <groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-util</artifactId>
</exclusion>
<exclusion>
- <groupId>org.eclipse.jetty</groupId>
+ <groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-security</artifactId>
</exclusion>
<!--Remove exclusions if using JMS-->
<exclusion>
- <groupId>org.apache.geronimo.specs</groupId>
+ <groupId>org.apache.geronimo.specs</groupId>
<artifactId>geronimo-jms_1.1_spec</artifactId>
</exclusion>
<exclusion>
@@ -1388,7 +1231,7 @@
<port>${service.port}</port>
<maxIdleTime>60000</maxIdleTime>
</connector>
- </connectors>
+ </connectors>
<useProvidedScope>true</useProvidedScope>
<stopKey>foo</stopKey>
<stopPort>9999</stopPort>
@@ -1446,8 +1289,7 @@
spring=$spring
web=$web
webservice=$webservice
- struts=$struts
- jsf=$jsf
+ jsf2=$jsf
cxf=$cxf
rest=$rest
jbossSeam=$jbossSeam
@@ -1459,7 +1301,7 @@
#if (!$transactionPersistenceType.equals("none") || $cxf)
<module>core</module>
#end
-#if ($struts || $jsf)
+#if ($jsf)
<module>web</module>
#end
#if ($webservice && !$jsr181Webservice && ($ear || $cxf))
@@ -1468,9 +1310,6 @@
<module>CXF</module>
#end
#end
-#if ($workflow)
- <module>workflow</module>
-#end
#if ($ear)
<module>app</module>
#end
@@ -1696,7 +1535,7 @@
<jetty.version>8.1.14.v20131031</jetty.version>
#end
#if ($cxf || $spring)
- <spring.version>3.2.5.RELEASE</spring.version>
+ <spring.version>3.2.6.RELEASE</spring.version>
#end
<!-- To override parent default settings for compiler plugin and compliance checks-->
<dependencyConvergence>true</dependencyConvergence>
@@ -1834,7 +1673,7 @@
Change connection url for appropriate database
For H2 use: jdbc:h2:~/$applicationId
For MySQL use: jdbc:mysql://localhost:3306/$applicationId
- For Hypersonic use: jdbc:hsqldb:hsql://127.0.0.1:1701
+ For Hypersonic use: jdbc:hsqldb:hsql://127.0.0.1/$applicationId or jdbc:hsqldb:file:<path>/$applicationId;shutdown=true
For Oracle9i use: jdbc:oracle:thin:@localhost:1521:yoursid
For DB2 use: jdbc:db2:$applicationId
For Informix use: jdbc:informix-sqli://localhost:1557/${applicationId}:INFORMIXSERVER=myserver
@@ -1874,7 +1713,7 @@
#if ($embeddedJetty)
jdbc:hsqldb:file:database/${applicationId};shutdown=true
#else
- jdbc:hsqldb:hsql://127.0.0.1:1701
+ jdbc:hsqldb:mem:${applicationId}
#end
#end
</jdbc.url>
Modified: trunk/andromda-andromdapp/projects/j2ee/maven2/src/main/resources/templates/j2ee/maven2/web/pom.xml.vsl
===================================================================
--- trunk/andromda-andromdapp/projects/j2ee/maven2/src/main/resources/templates/j2ee/maven2/web/pom.xml.vsl 2014-01-14 22:13:59 UTC (rev 15385)
+++ trunk/andromda-andromdapp/projects/j2ee/maven2/src/main/resources/templates/j2ee/maven2/web/pom.xml.vsl 2014-01-14 22:17:38 UTC (rev 15386)
@@ -72,20 +72,7 @@
<groupId>oro</groupId>
<artifactId>oro</artifactId>
</dependency>
-#if ($struts)
- <dependency>
- <groupId>commons-validator</groupId>
- <artifactId>commons-validator</artifactId>
- </dependency>
- <dependency>
- <groupId>struts</groupId>
- <artifactId>struts</artifactId>
- </dependency>
- <dependency>
- <groupId>displaytag</groupId>
- <artifactId>displaytag</artifactId>
- </dependency>
-#elseif ($jsf)
+#if ($jsf)
#if ($jbossSeam)
<dependency>
<groupId>org.jboss</groupId>
@@ -138,10 +125,6 @@
</dependency>
#else
<dependency>
- <groupId>org.andromda.cartridges</groupId>
- <artifactId>andromda-jsf-cartridge-components</artifactId>
- </dependency>
- <dependency>
<groupId>org.apache.myfaces.core</groupId>
<artifactId>myfaces-api</artifactId>
</dependency>
@@ -151,7 +134,7 @@
</dependency>
<dependency>
<groupId>org.apache.myfaces.tomahawk</groupId>
- <artifactId>tomahawk12</artifactId>
+ <artifactId>tomahawk20</artifactId>
</dependency>
<dependency>
<groupId>javax.validation</groupId>
@@ -174,8 +157,8 @@
<artifactId>myfaces-extval-generic-support</artifactId>
</dependency>
<dependency>
- <groupId>org.apache.myfaces.extensions.validator.component-support-modules</groupId>
- <artifactId>myfaces-extval-trinidad-support</artifactId>
+ <groupId>org.primefaces</groupId>
+ <artifactId>primefaces</artifactId>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
@@ -195,41 +178,8 @@
<scope>provided</scope>
#end
</dependency>
-#if ($portlet)
- <dependency>
- <groupId>javax.portlet</groupId>
- <artifactId>portlet-api</artifactId>
- </dependency>
-#if ($ajaxLibrary.equals("icefaces"))
- <dependency>
- <groupId>org.icefaces</groupId>
- <artifactId>icefaces</artifactId>
- </dependency>
- <dependency>
- <groupId>org.icefaces</groupId>
- <artifactId>icefaces-comps</artifactId>
- </dependency>
- <dependency>
- <groupId>org.icefaces</groupId>
- <artifactId>icefaces-facelets</artifactId>
- </dependency>
#end
-#else
<dependency>
- <groupId>com.sun.facelets</groupId>
- <artifactId>jsf-facelets</artifactId>
- </dependency>
- <dependency>
- <groupId>org.apache.myfaces.trinidad</groupId>
- <artifactId>trinidad-api</artifactId>
- </dependency>
- <dependency>
- <groupId>org.apache.myfaces.trinidad</groupId>
- <artifactId>trinidad-impl</artifactId>
- </dependency>
-#end
-#end
- <dependency>
<groupId>org.andromda</groupId>
<artifactId>andromda-utils</artifactId>
</dependency>
@@ -239,8 +189,8 @@
<artifactId>servlet-api</artifactId>
</dependency>
<dependency>
- <groupId>com.lowagie</groupId>
- <artifactId>itext</artifactId>
+ <groupId>javax.el</groupId>
+ <artifactId>el-api</artifactId>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <wal...@us...> - 2014-01-14 22:14:03
|
Revision: 15385
http://sourceforge.net/p/andromda/svn/15385
Author: walterim
Date: 2014-01-14 22:13:59 +0000 (Tue, 14 Jan 2014)
Log Message:
-----------
Removing bpm4struts cartridge from the app generator
Removed Paths:
-------------
trunk/andromda-andromdapp/projects/j2ee/maven2/src/main/resources/templates/j2ee/maven2/workflow/pom.xml.vsl
Deleted: trunk/andromda-andromdapp/projects/j2ee/maven2/src/main/resources/templates/j2ee/maven2/workflow/pom.xml.vsl
===================================================================
--- trunk/andromda-andromdapp/projects/j2ee/maven2/src/main/resources/templates/j2ee/maven2/workflow/pom.xml.vsl 2014-01-13 22:15:47 UTC (rev 15384)
+++ trunk/andromda-andromdapp/projects/j2ee/maven2/src/main/resources/templates/j2ee/maven2/workflow/pom.xml.vsl 2014-01-14 22:13:59 UTC (rev 15385)
@@ -1,42 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <parent>
- <groupId>$applicationPackage</groupId>
- <artifactId>$applicationId</artifactId>
- <version>$applicationVersion</version>
- </parent>
- <artifactId>${applicationId}-workflow</artifactId>
- <packaging>jar</packaging>
- <name>${applicationName} Workflow Module</name>
- <dependencies>
- <dependency>
- <groupId>org.jbpm</groupId>
- <artifactId>jbpm</artifactId>
- </dependency>
- <dependency>
- <groupId>org.jbpm</groupId>
- <artifactId>jbpm-identity</artifactId>
- </dependency>
- </dependencies>
- <build>
- <resources>
- <resource>
- <directory>target/src</directory>
- <excludes>
- <exclude>**/*.java</exclude>
- </excludes>
- </resource>
- </resources>
- <plugins>
- <plugin>
- <groupId>org.codehaus.mojo</groupId>
- <artifactId>build-helper-maven-plugin</artifactId>
- </plugin>
- <plugin>
- <artifactId>maven-source-plugin</artifactId>
- </plugin>
- </plugins>
- </build>
-</project>
\ No newline at end of file
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <wal...@us...> - 2013-12-11 20:15:28
|
Revision: 15378
http://sourceforge.net/p/andromda/svn/15378
Author: walterim
Date: 2013-12-11 20:15:25 +0000 (Wed, 11 Dec 2013)
Log Message:
-----------
Removed a comment written in portuguese
Modified Paths:
--------------
trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/exception/JsfExceptionHandler.java.vsl
Modified: trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/exception/JsfExceptionHandler.java.vsl
===================================================================
--- trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/exception/JsfExceptionHandler.java.vsl 2013-12-11 20:14:53 UTC (rev 15377)
+++ trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/exception/JsfExceptionHandler.java.vsl 2013-12-11 20:15:25 UTC (rev 15378)
@@ -271,7 +271,7 @@
{
Throwable exception = t;
- while(exception != null && !(exception instanceof java.sql.SQLException))//verifica se \xE9 exce\xE7\xE3o de banco
+ while(exception != null && !(exception instanceof java.sql.SQLException))//DB exception ?
{
exception = exception.getCause();
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <wal...@us...> - 2013-12-11 20:14:56
|
Revision: 15377
http://sourceforge.net/p/andromda/svn/15377
Author: walterim
Date: 2013-12-11 20:14:53 +0000 (Wed, 11 Dec 2013)
Log Message:
-----------
Enhanced support to operations in manageable services
Modified Paths:
--------------
trunk/cartridges/andromda-spring/src/main/java/org/andromda/cartridges/spring/metafacades/SpringEntityLogicImpl.java
trunk/cartridges/andromda-spring/src/main/java/org/andromda/cartridges/spring/metafacades/SpringManageableEntityLogicImpl.java
trunk/cartridges/andromda-spring/src/main/java/org/andromda/cartridges/spring/metafacades/SpringServiceLogicImpl.java
trunk/cartridges/andromda-spring/src/main/resources/templates/spring/crud/SpringCrudService.vsl
trunk/cartridges/andromda-spring/src/main/resources/templates/spring/crud/SpringCrudServiceBase.vsl
trunk/cartridges/andromda-spring/src/main/resources/templates/spring/crud/applicationContext-manageable.xml.vsl
trunk/cartridges/andromda-spring/src/test/expected/cartridge-outputUML2.zip
Modified: trunk/cartridges/andromda-spring/src/main/java/org/andromda/cartridges/spring/metafacades/SpringEntityLogicImpl.java
===================================================================
--- trunk/cartridges/andromda-spring/src/main/java/org/andromda/cartridges/spring/metafacades/SpringEntityLogicImpl.java 2013-12-11 20:14:14 UTC (rev 15376)
+++ trunk/cartridges/andromda-spring/src/main/java/org/andromda/cartridges/spring/metafacades/SpringEntityLogicImpl.java 2013-12-11 20:14:53 UTC (rev 15377)
@@ -536,4 +536,14 @@
return "true".equalsIgnoreCase(richClient);
}
+ /**
+ * Helper function
+ *
+ * @return searchUnique function name
+ */
+ public String getSearchUniqueFunctionName(String attributeName)
+ {
+ return "searchUnique"+StringUtils.capitalize(attributeName);
+ }
+
}
\ No newline at end of file
Modified: trunk/cartridges/andromda-spring/src/main/java/org/andromda/cartridges/spring/metafacades/SpringManageableEntityLogicImpl.java
===================================================================
--- trunk/cartridges/andromda-spring/src/main/java/org/andromda/cartridges/spring/metafacades/SpringManageableEntityLogicImpl.java 2013-12-11 20:14:14 UTC (rev 15376)
+++ trunk/cartridges/andromda-spring/src/main/java/org/andromda/cartridges/spring/metafacades/SpringManageableEntityLogicImpl.java 2013-12-11 20:14:53 UTC (rev 15377)
@@ -2,9 +2,11 @@
import java.util.Collection;
+import org.andromda.metafacades.uml.AttributeFacade;
import org.andromda.metafacades.uml.ClassifierFacade;
import org.andromda.metafacades.uml.EntityQueryOperation;
import org.andromda.metafacades.uml.ManageableEntity;
+import org.andromda.metafacades.uml.FilteredCollection;
import org.andromda.metafacades.uml.OperationFacade;
import org.andromda.metafacades.uml.UMLMetafacadeProperties;
import org.apache.commons.collections.CollectionUtils;
@@ -341,21 +343,22 @@
*
* @return Allowed business operations.
*/
- public Collection<OperationFacade> getManageableBusinessOperations()
+ public Collection<SpringEntityOperation> getManageableDaoBusinessOperations()
{
- final Collection<OperationFacade> result=super.getBusinessOperations();
- CollectionUtils.filter(result, new Predicate()
+ Collection<SpringEntityOperation> result=super.getDaoBusinessOperations();
+ result = new FilteredCollection<SpringEntityOperation>(result)
{
- @Override
- public boolean evaluate(Object obj)
+ private static final long serialVersionUID = 34L;
+ public boolean evaluate(Object object)
{
- final OperationFacade operation=(OperationFacade)obj;
+ final SpringEntityOperation operation=(SpringEntityOperation)object;
final ClassifierFacade returnType=operation.getReturnType();
return operation.getVisibility().equals("public") &&
(returnType.isDataType() ||
returnType.getFullyQualifiedName().equals(getFullyQualifiedName()));
}
- });
+ };
+
return result;
}
@@ -366,22 +369,22 @@
*/
public Collection<EntityQueryOperation> getManageableQueryOperations()
{
- final Collection<EntityQueryOperation> result=super.getQueryOperations();
- CollectionUtils.filter(result, new Predicate()
+ Collection<EntityQueryOperation> result=super.getQueryOperations();
+ result = new FilteredCollection<EntityQueryOperation>(result)
{
- @Override
- public boolean evaluate(Object obj)
+ private static final long serialVersionUID = 34L;
+ public boolean evaluate(Object object)
{
- final EntityQueryOperation operation=(EntityQueryOperation)obj;
+ final EntityQueryOperation operation=(EntityQueryOperation)object;
final ClassifierFacade returnType=operation.getReturnType();
- return operation.getVisibility().equals("public") &&
+ return operation.getVisibility().equals("public") &&
(returnType.isDataType() ||
returnType.getFullyQualifiedName().equals(getFullyQualifiedName()));
}
- });
+ };
return result;
}
-
+
/**
* Helper function
*
Modified: trunk/cartridges/andromda-spring/src/main/java/org/andromda/cartridges/spring/metafacades/SpringServiceLogicImpl.java
===================================================================
--- trunk/cartridges/andromda-spring/src/main/java/org/andromda/cartridges/spring/metafacades/SpringServiceLogicImpl.java 2013-12-11 20:14:14 UTC (rev 15376)
+++ trunk/cartridges/andromda-spring/src/main/java/org/andromda/cartridges/spring/metafacades/SpringServiceLogicImpl.java 2013-12-11 20:14:53 UTC (rev 15377)
@@ -468,7 +468,7 @@
Collection<OperationFacade> operations = this.getOperations();
if (!this.hasStereotype(UMLProfile.STEREOTYPE_WEBSERVICE))
{
- operations = new FilteredCollection(operations)
+ operations = new FilteredCollection<OperationFacade>(operations)
{
private static final long serialVersionUID = 34L;
public boolean evaluate(Object object)
Modified: trunk/cartridges/andromda-spring/src/main/resources/templates/spring/crud/SpringCrudService.vsl
===================================================================
--- trunk/cartridges/andromda-spring/src/main/resources/templates/spring/crud/SpringCrudService.vsl 2013-12-11 20:14:14 UTC (rev 15376)
+++ trunk/cartridges/andromda-spring/src/main/resources/templates/spring/crud/SpringCrudService.vsl 2013-12-11 20:14:53 UTC (rev 15377)
@@ -139,7 +139,7 @@
public ${manageable.fullyQualifiedManageableValueObjectName} $searchUniqueMethod(final ${attribute.type.fullyQualifiedName} ${attribute.name});
#end
#end
-#foreach ($operation in $manageable.manageableBusinessOperations)
+#foreach ($operation in $manageable.manageableDaoBusinessOperations)
#if ($operation.returnType.dataType)
#set ($returnType = $operation.getterSetterReturnTypeName)
Modified: trunk/cartridges/andromda-spring/src/main/resources/templates/spring/crud/SpringCrudServiceBase.vsl
===================================================================
--- trunk/cartridges/andromda-spring/src/main/resources/templates/spring/crud/SpringCrudServiceBase.vsl 2013-12-11 20:14:14 UTC (rev 15376)
+++ trunk/cartridges/andromda-spring/src/main/resources/templates/spring/crud/SpringCrudServiceBase.vsl 2013-12-11 20:14:53 UTC (rev 15377)
@@ -288,7 +288,7 @@
}
#end
#end
-#foreach ($operation in $manageable.manageableBusinessOperations)
+#foreach ($operation in $manageable.manageableDaoBusinessOperations)
#if ($operation.returnType.dataType)
#set ($returnType = $operation.getterSetterReturnTypeName)
Modified: trunk/cartridges/andromda-spring/src/main/resources/templates/spring/crud/applicationContext-manageable.xml.vsl
===================================================================
--- trunk/cartridges/andromda-spring/src/main/resources/templates/spring/crud/applicationContext-manageable.xml.vsl 2013-12-11 20:14:14 UTC (rev 15376)
+++ trunk/cartridges/andromda-spring/src/main/resources/templates/spring/crud/applicationContext-manageable.xml.vsl 2013-12-11 20:14:53 UTC (rev 15377)
@@ -29,10 +29,17 @@
#if ($manageable.delete)
${manageable.fullyQualifiedManageableServiceName}.delete=PROPAGATION_REQUIRED
#end
-#foreach ($operation in $manageable.manageableBusinessOperations)
+#foreach ($operation in $manageable.manageableDaoBusinessOperations)
${manageable.fullyQualifiedManageableServiceName}.${operation.name}=PROPAGATION_REQUIRED
#end
+#set ($attributes = $manageable.getAttributes(true, $manageable.usingAssignedIdentifier))
+#foreach ($attribute in $attributes)
+#if ($attribute.unique)
+#set ($searchUniqueMethod = "searchUnique${stringUtils.capitalise($attribute.name)}")
+ ${manageable.fullyQualifiedManageableServiceName}.${searchUniqueMethod}=PROPAGATION_REQUIRED
#end
+#end
+#end
</value>
</property>
</bean>
@@ -44,11 +51,13 @@
<property name="proxyInterfaces">
<value>$manageable.fullyQualifiedManageableDaoName</value>
</property>
+ #if (!$hibernateUtils.version4)
<property name="interceptorNames">
<list>
<value>hibernateInterceptor</value>
</list>
</property>
+#end
</bean>
<!-- $manageable.manageableDaoName Implementation -->
@@ -75,7 +84,9 @@
#if (!$ejbsEnabled)
<value>manageableServiceTransactionInterceptor</value>
#end
+#if (!$hibernateUtils.version4)
<value>hibernateInterceptor</value>
+#end
</list>
</property>
</bean>
Modified: trunk/cartridges/andromda-spring/src/test/expected/cartridge-outputUML2.zip
===================================================================
(Binary files differ)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <wal...@us...> - 2013-12-11 20:14:17
|
Revision: 15376
http://sourceforge.net/p/andromda/svn/15376
Author: walterim
Date: 2013-12-11 20:14:14 +0000 (Wed, 11 Dec 2013)
Log Message:
-----------
Added the date/time generation
Changes in annotations as asked in http://www.andromda.org/forum/viewtopic.php?f=15&t=7518
Modified Paths:
--------------
trunk/cartridges/andromda-hibernate/src/main/resources/META-INF/andromda/cartridge.xml
trunk/cartridges/andromda-hibernate/src/main/resources/META-INF/andromda/namespace.xml
trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/GlobalMacros.vm
trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/HibernateEmbeddedValue.vsl
trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/HibernateEmbeddedValueImpl.vsl
trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/HibernateEntity.vsl
trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/HibernateEntityImpl.vsl
trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/HibernateEntityPK.vsl
trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/ehcache.xml.vsl
trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/ejb/HibernateSession.vsl
trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/ejb/HibernateSessionBean.vsl
trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/ejb/HibernateSessionBeanImpl.vsl
trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/ejb/HibernateSessionEJBLocator.vsl
trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/ejb/HibernateSessionHome.vsl
trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/ejb/HibernateUtils.vsl
trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/ejb/ejb-jar.xml.vsl
trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/ejb/jboss.xml.vsl
trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/persistence.xml.vsl
trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/test/hibernate-test.cfg.xml.vsl
trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/test/persistence-test.xml.vsl
trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/usertypes/HibernateByteBlobType.vsl
trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/usertypes/HibernateStringClobType.vsl
trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate2/HibernateEnumeration.vsl
trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate2/ejb/HibernateEntityFactory.vsl
trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate2/hibernate.cfg.xml.vsl
trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate2/hibernate.hbm.xml.vsl
trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate3/HibernateEnumeration.vsl
trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate3/ejb/HibernateEntityFactory.vsl
trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate3/hibernate.cfg.xml.vsl
trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate3/hibernate.hbm.xml.vm
trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate3/hibernate.hbm.xml.vsl
trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate3/usertypes/HibernateEnumType.vsl
trunk/cartridges/andromda-hibernate/src/test/expected/cartridge-outputUML2.zip
Modified: trunk/cartridges/andromda-hibernate/src/main/resources/META-INF/andromda/cartridge.xml
===================================================================
--- trunk/cartridges/andromda-hibernate/src/main/resources/META-INF/andromda/cartridge.xml 2013-11-26 13:03:07 UTC (rev 15375)
+++ trunk/cartridges/andromda-hibernate/src/main/resources/META-INF/andromda/cartridge.xml 2013-12-11 20:14:14 UTC (rev 15376)
@@ -71,6 +71,7 @@
<property reference="hibernateCacheProvider"/>
<property reference="hibernateQueryCacheFactory"/>
<property reference="xmlEncoding"/>
+ <property reference="dateTimeGeneratedText"/>
<property reference="generateEntityEqualsAndHashCode"/>
<property reference="hibernateProxy"/>
<property reference="toDoTag"/>
@@ -94,6 +95,7 @@
<condition name="generateDatabaseDependentCode">$generateDatabaseDependentCode.equalsIgnoreCase("true")</condition>
<condition name="enableTemplating">$enableTemplating.equalsIgnoreCase("true")</condition>
<condition name="hibernateEntityAnnotations">$hibernateEntityAnnotations.equalsIgnoreCase("true")</condition>
+ <condition name="dateTimeGeneratedText">$dateTimeGeneratedText.equalsIgnoreCase("true")</condition>
<!-- condition merge-point-->
<!-- cartridge-resource merge-point -->
Modified: trunk/cartridges/andromda-hibernate/src/main/resources/META-INF/andromda/namespace.xml
===================================================================
--- trunk/cartridges/andromda-hibernate/src/main/resources/META-INF/andromda/namespace.xml 2013-11-26 13:03:07 UTC (rev 15375)
+++ trunk/cartridges/andromda-hibernate/src/main/resources/META-INF/andromda/namespace.xml 2013-12-11 20:14:14 UTC (rev 15376)
@@ -906,6 +906,12 @@
Encoding for generated XML files.
</documentation>
</property>
+ <property name="dateTimeGeneratedText">
+ <default>true</default>
+ <documentation>
+ Adds the current date and time to the generated files (as comment).
+ </documentation>
+ </property>
<property name="generateEntityEqualsAndHashCode">
<default>true</default>
<documentation>
Modified: trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/GlobalMacros.vm
===================================================================
--- trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/GlobalMacros.vm 2013-11-26 13:03:07 UTC (rev 15375)
+++ trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/GlobalMacros.vm 2013-12-11 20:14:14 UTC (rev 15376)
@@ -497,10 +497,15 @@
@javax.persistence.JoinTable
(
name = "${associationEnd.association.tableName}",
-#* *##set ($identifiers = $entity.getIdentifiers())
- joinColumns = {#foreach ($attribute in $identifiers)@javax.persistence.JoinColumn(name = "$attribute.columnName")#if($velocityCount != $identifiers.size()), #end#end},
-#* *##set ($identifiers = $target.type.getIdentifiers())
- inverseJoinColumns = {#foreach ($attribute in $identifiers)@javax.persistence.JoinColumn(name = "$attribute.columnName")#if($velocityCount != $identifiers.size()), #end#end}
+#if($entity.getIdentifiers().size() > 1 || $target.type.getIdentifiers().size() > 1)
+#set ($identifiers = $entity.getIdentifiers())
+ joinColumns = {#foreach ($attribute in $identifiers)@javax.persistence.JoinColumn(name = "${attribute.columnName}")#if($velocityCount != $identifiers.size()), #end#end},
+#set ($identifiers = $target.type.getIdentifiers())
+ inverseJoinColumns = {#foreach ($attribute in $identifiers)@javax.persistence.JoinColumn(name = "${attribute.columnName}")#if($velocityCount != $identifiers.size()), #end#end}
+#else
+ joinColumns = {@javax.persistence.JoinColumn(name = "${associationEnd.columnName}")},
+ inverseJoinColumns = {@javax.persistence.JoinColumn(name = "${target.columnName}")}
+#end
)
#* *##end
#* *##if ($target.map)
@@ -631,10 +636,15 @@
@javax.persistence.JoinTable
(
name = "${associationEnd.association.tableName}",
+#if($entity.getIdentifiers().size() > 1 || $target.type.getIdentifiers().size() > 1)
#set ($identifiers = $entity.getIdentifiers())
joinColumns = {#foreach ($attribute in $identifiers)@javax.persistence.JoinColumn(name = "${attribute.columnName}")#if($velocityCount != $identifiers.size()), #end#end},
#set ($identifiers = $target.type.getIdentifiers())
inverseJoinColumns = {#foreach ($attribute in $identifiers)@javax.persistence.JoinColumn(name = "${attribute.columnName}")#if($velocityCount != $identifiers.size()), #end#end}
+#else
+ joinColumns = {@javax.persistence.JoinColumn(name = "${associationEnd.columnName}")},
+ inverseJoinColumns = {@javax.persistence.JoinColumn(name = "${target.columnName}")}
+#end
)
#* *##end
#* *##end
Modified: trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/HibernateEmbeddedValue.vsl
===================================================================
--- trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/HibernateEmbeddedValue.vsl 2013-11-26 13:03:07 UTC (rev 15375)
+++ trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/HibernateEmbeddedValue.vsl 2013-12-11 20:14:14 UTC (rev 15376)
@@ -2,7 +2,7 @@
// license-header java merge-point
//
// Attention: Generated code! Do not modify by hand!
-// Generated by hibernate/HibernateEmbeddedValue.vsl in andromda-hibernate-cartridge.
+// Generated by hibernate/HibernateEmbeddedValue.vsl in andromda-hibernate-cartridge#if($dateTimeGeneratedText) on $hibernateUtils.date#end.
//
#if ($stringUtils.isNotBlank($embeddedValue.packageName))
package $embeddedValue.packageName;
Modified: trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/HibernateEmbeddedValueImpl.vsl
===================================================================
--- trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/HibernateEmbeddedValueImpl.vsl 2013-11-26 13:03:07 UTC (rev 15375)
+++ trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/HibernateEmbeddedValueImpl.vsl 2013-12-11 20:14:14 UTC (rev 15376)
@@ -3,7 +3,7 @@
/**
* This is only generated once! It will never be overwritten.
* You can (and have to!) safely modify it by hand.
- * Generated by hibernate/HibernateEmbeddedValueImpl.vsl in andromda-hibernate-cartridge.
+ * Generated by hibernate/HibernateEmbeddedValueImpl.vsl in andromda-hibernate-cartridge#if($dateTimeGeneratedText) on $hibernateUtils.date#end.
*/
#if ($stringUtils.isNotBlank($embeddedValue.packageName))
package $embeddedValue.packageName;
Modified: trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/HibernateEntity.vsl
===================================================================
--- trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/HibernateEntity.vsl 2013-11-26 13:03:07 UTC (rev 15375)
+++ trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/HibernateEntity.vsl 2013-12-11 20:14:14 UTC (rev 15376)
@@ -2,7 +2,7 @@
// license-header java merge-point
//
// Attention: Generated code! Do not modify by hand!
-// Generated by hibernate/HibernateEntity.vsl in andromda-hibernate-cartridge.
+// Generated by hibernate/HibernateEntity.vsl in andromda-hibernate-cartridge#if($dateTimeGeneratedText) on $hibernateUtils.date#end.
//
#if ($stringUtils.isNotBlank($entity.packageName))
package $entity.packageName;
Modified: trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/HibernateEntityImpl.vsl
===================================================================
--- trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/HibernateEntityImpl.vsl 2013-11-26 13:03:07 UTC (rev 15375)
+++ trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/HibernateEntityImpl.vsl 2013-12-11 20:14:14 UTC (rev 15376)
@@ -4,12 +4,12 @@
/**
* This is only generated once! It will never be overwritten.
* You can (and have to!) safely modify it by hand.
- * Generated by hibernate/HibernateEntityImpl.vsl in andromda-hibernate-cartridge.
+ * Generated by hibernate/HibernateEntityImpl.vsl in andromda-hibernate-cartridge#if($dateTimeGeneratedText) on $hibernateUtils.date#end.
*/
#else
//
// Attention: Generated code! Do not modify by hand!
-// Generated by HibernateEntityImpl.vsl in andromda-hibernate-cartridge.
+// Generated by HibernateEntityImpl.vsl in andromda-hibernate-cartridge#if($dateTimeGeneratedText) on $hibernateUtils.date#end.
//
#end
#if ($stringUtils.isNotBlank($entity.packageName))
@@ -20,6 +20,9 @@
* @see $entity.fullyQualifiedEntityName
*/
// HibernateEntityImpl.vsl annotations merge-point
+#if ($hibernateEntityAnnotations)
+@javax.persistence.Entity
+#end
public#if ($entity.abstract) abstract#end class $entity.entityImplementationName
extends $entity.fullyQualifiedEntityName
{
Modified: trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/HibernateEntityPK.vsl
===================================================================
--- trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/HibernateEntityPK.vsl 2013-11-26 13:03:07 UTC (rev 15375)
+++ trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/HibernateEntityPK.vsl 2013-12-11 20:14:14 UTC (rev 15376)
@@ -2,7 +2,7 @@
// license-header java merge-point
//
// Attention: Generated code! Do not modify by hand!
-// Generated by hibernate/HibernateEntityPK.vsl in andromda-hibernate-cartridge.
+// Generated by hibernate/HibernateEntityPK.vsl in andromda-hibernate-cartridge#if($dateTimeGeneratedText) on $hibernateUtils.date#end.
//
#if ($stringUtils.isNotBlank($entity.packageName))
package $entity.packageName;
Modified: trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/ehcache.xml.vsl
===================================================================
--- trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/ehcache.xml.vsl 2013-11-26 13:03:07 UTC (rev 15375)
+++ trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/ehcache.xml.vsl 2013-12-11 20:14:14 UTC (rev 15376)
@@ -1,7 +1,7 @@
<ehcache>
<!--
Attention: Generated code! Do not modify by hand!
- Generated by hibernate/ehcache.xml.vsl in andromda-hibernate-cartridge.
+ Generated by hibernate/ehcache.xml.vsl in andromda-hibernate-cartridge#if($dateTimeGeneratedText) on $hibernateUtils.date#end.
-->
<!-- Sets the path to the directory where cache .data files are created.
Modified: trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/ejb/HibernateSession.vsl
===================================================================
--- trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/ejb/HibernateSession.vsl 2013-11-26 13:03:07 UTC (rev 15375)
+++ trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/ejb/HibernateSession.vsl 2013-12-11 20:14:14 UTC (rev 15376)
@@ -3,7 +3,7 @@
// license-header java merge-point
//
// Attention: Generated code! Do not modify by hand!
-// Generated by hibernate/ejb/HibernateSession.vsl in andromda-hibernate-cartridge
+// Generated by hibernate/ejb/HibernateSession.vsl in andromda-hibernate-cartridge#if($dateTimeGeneratedText) on $hibernateUtils.date#end
//
#if ($stringUtils.isNotBlank($service.packageName))
package $service.packageName;
Modified: trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/ejb/HibernateSessionBean.vsl
===================================================================
--- trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/ejb/HibernateSessionBean.vsl 2013-11-26 13:03:07 UTC (rev 15375)
+++ trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/ejb/HibernateSessionBean.vsl 2013-12-11 20:14:14 UTC (rev 15376)
@@ -2,7 +2,7 @@
// license-header java merge-point
//
// Attention: Generated code! Do not modify by hand!
-// Generated by hibernate/ejb/HibernateSessionBean.vsl in andromda-hibernate-cartridge.
+// Generated by hibernate/ejb/HibernateSessionBean.vsl in andromda-hibernate-cartridge#if($dateTimeGeneratedText) on $hibernateUtils.date#end.
//
#if ($stringUtils.isNotBlank($service.packageName))
package $service.packageName;
Modified: trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/ejb/HibernateSessionBeanImpl.vsl
===================================================================
--- trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/ejb/HibernateSessionBeanImpl.vsl 2013-11-26 13:03:07 UTC (rev 15375)
+++ trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/ejb/HibernateSessionBeanImpl.vsl 2013-12-11 20:14:14 UTC (rev 15376)
@@ -1,5 +1,5 @@
#parse("templates/hibernate/ejb/HibernateSessionEJBGlobals.vm")
-// Generated by hibernate/ejb/HibernateSessionBeanImpl.vsl in andromda-hibernate-cartridge.
+// Generated by hibernate/ejb/HibernateSessionBeanImpl.vsl in andromda-hibernate-cartridge#if($dateTimeGeneratedText) on $hibernateUtils.date#end.
// license-header java merge-point
#if ($stringUtils.isNotBlank($service.packageName))
package $service.packageName;
Modified: trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/ejb/HibernateSessionEJBLocator.vsl
===================================================================
--- trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/ejb/HibernateSessionEJBLocator.vsl 2013-11-26 13:03:07 UTC (rev 15375)
+++ trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/ejb/HibernateSessionEJBLocator.vsl 2013-12-11 20:14:14 UTC (rev 15376)
@@ -2,7 +2,7 @@
// license-header java merge-point
//
// Attention: Generated code! Do not modify by hand!
-// Generated by hibernate/ejb/HibernateSessionEJBLocator.vsl in andromda-hibernate-cartridge.
+// Generated by hibernate/ejb/HibernateSessionEJBLocator.vsl in andromda-hibernate-cartridge#if($dateTimeGeneratedText) on $hibernateUtils.date#end.
//
#set ($generatedFile = "${serviceLocatorName}.java")
#if($stringUtils.isNotBlank($customTypesPackage))
Modified: trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/ejb/HibernateSessionHome.vsl
===================================================================
--- trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/ejb/HibernateSessionHome.vsl 2013-11-26 13:03:07 UTC (rev 15375)
+++ trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/ejb/HibernateSessionHome.vsl 2013-12-11 20:14:14 UTC (rev 15376)
@@ -3,7 +3,7 @@
// license-header java merge-point
//
// Attention: Generated code! Do not modify by hand!
-// Generated by hibernate/ejb/HibernateSessionHome.vsl in andromda-hibernate-cartridge.
+// Generated by hibernate/ejb/HibernateSessionHome.vsl in andromda-hibernate-cartridge#if($dateTimeGeneratedText) on $hibernateUtils.date#end.
//
#if ($stringUtils.isNotBlank($service.packageName))
package $service.packageName;
Modified: trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/ejb/HibernateUtils.vsl
===================================================================
--- trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/ejb/HibernateUtils.vsl 2013-11-26 13:03:07 UTC (rev 15375)
+++ trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/ejb/HibernateUtils.vsl 2013-12-11 20:14:14 UTC (rev 15376)
@@ -1,7 +1,7 @@
// license-header java merge-point
//
// Attention: Generated code! Do not modify by hand!
-// Generated by hibernate/ejb/HibernateUtils.vsl in andromda-hibernate-cartridge.
+// Generated by hibernate/ejb/HibernateUtils.vsl in andromda-hibernate-cartridge#if($dateTimeGeneratedText) on $hibernateUtils.date#end.
//
#set ($className = "HibernateUtils")
#set ($generatedFile = "$stringUtils.replace($customTypesPackage, '.', '/')/${className}.java")
Modified: trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/ejb/ejb-jar.xml.vsl
===================================================================
--- trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/ejb/ejb-jar.xml.vsl 2013-11-26 13:03:07 UTC (rev 15375)
+++ trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/ejb/ejb-jar.xml.vsl 2013-12-11 20:14:14 UTC (rev 15376)
@@ -2,7 +2,7 @@
<?xml version="1.0" encoding="$xmlEncoding"?>
<!--
Attention: Generated code! Do not modify by hand!
- Generated by hibernate/ejb/ejb-jar.xml.vsl in andromda-hibernate-cartridge.
+ Generated by hibernate/ejb/ejb-jar.xml.vsl in andromda-hibernate-cartridge#if($dateTimeGeneratedText) on $hibernateUtils.date#end.
-->
<!DOCTYPE ejb-jar PUBLIC "-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 2.0//EN"
"http://java.sun.com/dtd/ejb-jar_2_0.dtd">
Modified: trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/ejb/jboss.xml.vsl
===================================================================
--- trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/ejb/jboss.xml.vsl 2013-11-26 13:03:07 UTC (rev 15375)
+++ trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/ejb/jboss.xml.vsl 2013-12-11 20:14:14 UTC (rev 15376)
@@ -2,7 +2,7 @@
<?xml version="1.0" encoding="$xmlEncoding"?>
<!--
Attention: Generated code! Do not modify by hand!
- Generated by hibernate/ejb/jboss.xml.vsl in andromda-hibernate-cartridge.
+ Generated by hibernate/ejb/jboss.xml.vsl in andromda-hibernate-cartridge#if($dateTimeGeneratedText) on $hibernateUtils.date#end.
-->
<!DOCTYPE jboss PUBLIC "-//JBoss//DTD JBOSS 3.0//EN"
"http://www.jboss.org/j2ee/dtd/jboss_3_2.dtd">
Modified: trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/persistence.xml.vsl
===================================================================
--- trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/persistence.xml.vsl 2013-11-26 13:03:07 UTC (rev 15375)
+++ trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/persistence.xml.vsl 2013-12-11 20:14:14 UTC (rev 15376)
@@ -2,7 +2,7 @@
<?xml version="1.0" encoding="${xmlEncoding}"?>
<!--
Attention: Generated code! Do not modify by hand!
- Generated by persistence.xml.vsl in andromda-hibernate-cartridge.
+ Generated by persistence.xml.vsl in andromda-hibernate-cartridge#if($dateTimeGeneratedText) on $hibernateUtils.date#end.
-->
<persistence
xmlns="http://java.sun.com/xml/ns/persistence"
Modified: trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/test/hibernate-test.cfg.xml.vsl
===================================================================
--- trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/test/hibernate-test.cfg.xml.vsl 2013-11-26 13:03:07 UTC (rev 15375)
+++ trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/test/hibernate-test.cfg.xml.vsl 2013-12-11 20:14:14 UTC (rev 15376)
@@ -2,7 +2,7 @@
<?xml version="1.0" encoding="$xmlEncoding"?>
<!--
Attention: Generated code! Do not modify by hand!
- Generated by hibernate3/test/hibernate-test.cfg.xml.vsl in andromda-hibernate-cartridge.
+ Generated by hibernate3/test/hibernate-test.cfg.xml.vsl in andromda-hibernate-cartridge#if($dateTimeGeneratedText) on $hibernateUtils.date#end.
-->
<!DOCTYPE
hibernate-configuration
Modified: trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/test/persistence-test.xml.vsl
===================================================================
--- trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/test/persistence-test.xml.vsl 2013-11-26 13:03:07 UTC (rev 15375)
+++ trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/test/persistence-test.xml.vsl 2013-12-11 20:14:14 UTC (rev 15376)
@@ -2,7 +2,7 @@
<?xml version="1.0" encoding="${xmlEncoding}"?>
<!--
Attention: Generated code! Do not modify by hand!
- Generated by test/persistence.xml.vsl in andromda-hibernate-cartridge.
+ Generated by test/persistence.xml.vsl in andromda-hibernate-cartridge#if($dateTimeGeneratedText) on $hibernateUtils.date#end.
-->
<persistence
xmlns="http://java.sun.com/xml/ns/persistence"
Modified: trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/usertypes/HibernateByteBlobType.vsl
===================================================================
--- trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/usertypes/HibernateByteBlobType.vsl 2013-11-26 13:03:07 UTC (rev 15375)
+++ trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/usertypes/HibernateByteBlobType.vsl 2013-12-11 20:14:14 UTC (rev 15376)
@@ -1,7 +1,7 @@
// license-header java merge-point
//
// Attention: Generated code! Do not modify by hand!
-// Generated by hibernate/usertypes/HibernateByteBlobType.vsl in andromda-hibernate-cartridge.
+// Generated by hibernate/usertypes/HibernateByteBlobType.vsl in andromda-hibernate-cartridge#if($dateTimeGeneratedText) on $hibernateUtils.date#end.
//
#set ($className = "HibernateByteBlobType")
#set ($generatedFile = "$stringUtils.replace($userTypesPackage, '.', '/')/${className}.java")
Modified: trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/usertypes/HibernateStringClobType.vsl
===================================================================
--- trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/usertypes/HibernateStringClobType.vsl 2013-11-26 13:03:07 UTC (rev 15375)
+++ trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate/usertypes/HibernateStringClobType.vsl 2013-12-11 20:14:14 UTC (rev 15376)
@@ -1,7 +1,7 @@
// license-header java merge-point
//
// Attention: Generated code! Do not modify by hand!
-// Generated by hibernate/usertypes/HibernateStringClobType.vsl in andromda-hibernate-cartridge.
+// Generated by hibernate/usertypes/HibernateStringClobType.vsl in andromda-hibernate-cartridge#if($dateTimeGeneratedText) on $hibernateUtils.date#end.
//
#set ($className = "HibernateStringClobType")
#set ($generatedFile = "$stringUtils.replace($userTypesPackage, '.', '/')/${className}.java")
Modified: trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate2/HibernateEnumeration.vsl
===================================================================
--- trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate2/HibernateEnumeration.vsl 2013-11-26 13:03:07 UTC (rev 15375)
+++ trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate2/HibernateEnumeration.vsl 2013-12-11 20:14:14 UTC (rev 15376)
@@ -1,7 +1,7 @@
// license-header java merge-point
//
// Attention: Generated code! Do not modify by hand!
-// Generated by hibernate2/HibernateEnumeration.vsl in andromda-hibernate-cartridge.
+// Generated by hibernate2/HibernateEnumeration.vsl in andromda-hibernate-cartridge#if($dateTimeGeneratedText) on $hibernateUtils.date#end.
//
#if ($stringUtils.isNotBlank($enumTypesPackage))
#set ($packageName = $enumTypesPackage)
Modified: trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate2/ejb/HibernateEntityFactory.vsl
===================================================================
--- trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate2/ejb/HibernateEntityFactory.vsl 2013-11-26 13:03:07 UTC (rev 15375)
+++ trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate2/ejb/HibernateEntityFactory.vsl 2013-12-11 20:14:14 UTC (rev 15376)
@@ -1,7 +1,7 @@
// license-header java merge-point
/**
* Attention: Generated source! Do not modify by hand!
- * Generated by hibernate2/ejb/HibernateEntityFactory.vsl in andromda-hibernate-cartridge.
+ * Generated by hibernate2/ejb/HibernateEntityFactory.vsl in andromda-hibernate-cartridge#if($dateTimeGeneratedText) on $hibernateUtils.date#end.
*/
#if ($entity.packageName)
package $entity.packageName;
Modified: trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate2/hibernate.cfg.xml.vsl
===================================================================
--- trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate2/hibernate.cfg.xml.vsl 2013-11-26 13:03:07 UTC (rev 15375)
+++ trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate2/hibernate.cfg.xml.vsl 2013-12-11 20:14:14 UTC (rev 15376)
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="$xmlEncoding"?>
<!--
Attention: Generated code! Do not modify by hand!
- Generated by hibernate2/hibernate.cfg.xml.vsl in andromda-hibernate-cartridge.
+ Generated by hibernate2/hibernate.cfg.xml.vsl in andromda-hibernate-cartridge#if($dateTimeGeneratedText) on $hibernateUtils.date#end.
-->
<!DOCTYPE
hibernate-configuration
Modified: trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate2/hibernate.hbm.xml.vsl
===================================================================
--- trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate2/hibernate.hbm.xml.vsl 2013-11-26 13:03:07 UTC (rev 15375)
+++ trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate2/hibernate.hbm.xml.vsl 2013-12-11 20:14:14 UTC (rev 15376)
@@ -3,7 +3,7 @@
<?xml version="1.0" encoding="$xmlEncoding"?>
<!--
Attention: Generated code! Do not modify by hand!
- Generated by hibernate2/hibernate.hbm.xml.vsl in andromda-hibernate-cartridge.
+ Generated by hibernate2/hibernate.hbm.xml.vsl in andromda-hibernate-cartridge#if($dateTimeGeneratedText) on $hibernateUtils.date#end.
-->
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 2.0//EN"
"http://www.hibernate.org/dtd/hibernate-mapping-2.0.dtd">
Modified: trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate3/HibernateEnumeration.vsl
===================================================================
--- trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate3/HibernateEnumeration.vsl 2013-11-26 13:03:07 UTC (rev 15375)
+++ trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate3/HibernateEnumeration.vsl 2013-12-11 20:14:14 UTC (rev 15376)
@@ -2,7 +2,7 @@
// license-header java merge-point
//
// Attention: Generated code! Do not modify by hand!
-// Generated by hibernate3/HibernateEnumeration.vsl in andromda-hibernate-cartridge.
+// Generated by hibernate3/HibernateEnumeration.vsl in andromda-hibernate-cartridge#if($dateTimeGeneratedText) on $hibernateUtils.date#end.
//
#if ($stringUtils.isNotBlank($enumTypesPackage))
#set ($packageName = $enumTypesPackage)
Modified: trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate3/ejb/HibernateEntityFactory.vsl
===================================================================
--- trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate3/ejb/HibernateEntityFactory.vsl 2013-11-26 13:03:07 UTC (rev 15375)
+++ trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate3/ejb/HibernateEntityFactory.vsl 2013-12-11 20:14:14 UTC (rev 15376)
@@ -1,5 +1,5 @@
#if(!$hibernateUtils.version2)
-// Generated by hibernate3/ejb/HibernateEntityFactory.vsl in andromda-hibernate-cartridge.
+// Generated by hibernate3/ejb/HibernateEntityFactory.vsl in andromda-hibernate-cartridge#if($dateTimeGeneratedText) on $hibernateUtils.date#end.
// license-header java merge-point
/**
* Attention: Generated source! Do not modify by hand!
Modified: trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate3/hibernate.cfg.xml.vsl
===================================================================
--- trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate3/hibernate.cfg.xml.vsl 2013-11-26 13:03:07 UTC (rev 15375)
+++ trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate3/hibernate.cfg.xml.vsl 2013-12-11 20:14:14 UTC (rev 15376)
@@ -2,7 +2,7 @@
<?xml version="1.0" encoding="$xmlEncoding"?>
<!--
Attention: Generated code! Do not modify by hand!
- Generated by hibernate3/hibernate.cfg.xml.vsl in andromda-hibernate-cartridge.
+ Generated by hibernate3/hibernate.cfg.xml.vsl in andromda-hibernate-cartridge#if($dateTimeGeneratedText) on $hibernateUtils.date#end.
-->
<!DOCTYPE
hibernate-configuration
Modified: trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate3/hibernate.hbm.xml.vm
===================================================================
--- trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate3/hibernate.hbm.xml.vm 2013-11-26 13:03:07 UTC (rev 15375)
+++ trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate3/hibernate.hbm.xml.vm 2013-12-11 20:14:14 UTC (rev 15376)
@@ -173,7 +173,8 @@
#if ($otherEnd.set || $otherEnd.map)
${indent}<$otherEnd.collectionType name="$otherEnd.name" table="$otherEnd.association.tableName"#if($stringUtils.isNotBlank($entity.schema)) schema="$associationSchema"#end order-by="$sourceEnd.orderByColumns" lazy="$otherEnd.lazy" fetch="$otherEnd.outerJoin" inverse="$otherEnd.hibernateInverse"#if ($otherEnd.hibernateCascade) cascade="$otherEnd.hibernateCascade"#end#if ($otherEnd.whereClause) where="$otherEnd.whereClause"#end#if ($stringUtils.isNotBlank($otherEnd.sortType)) sort="$otherEnd.sortType"#end>
#elseif ($otherEnd.bag)
-${indent}<$otherEnd.collectionType name="$otherEnd.name" table="$otherEnd.association.tableName" order-by="$sourceEnd.orderByColumns" lazy="$otherEnd.lazy" fetch="$otherEnd.outerJoin" inverse="$otherEnd.hibernateInverse"#if ($otherEnd.hibernateCascade) cascade="$otherEnd.hibernateCascade"#end#if ($otherEnd.whereClause) where="$otherEnd.whereClause"#end>
+${indent}<$otherEnd.collectionType name="$otherEnd.name" table="$otherEnd.association.tableName"#if($hibernateVersion != "4") order-by="$sourceEnd.orderByColumns"#end lazy="$otherEnd.lazy" fetch="$otherEnd.outerJoin" inverse="$otherEnd.hibernateInverse"#if ($otherEnd.hibernateCascade) cascade="$otherEnd.hibernateCascade"#end#if ($otherEnd.whereClause) where="$otherEnd.whereClause"#end>
+## Not sure why but hibernate 4 does not support the order-by clause in <bag
#elseif ($otherEnd.list)
${indent}<$otherEnd.collectionType name="$otherEnd.name" table="$otherEnd.association.tableName" lazy="$otherEnd.lazy" fetch="$otherEnd.outerJoin" inverse="$otherEnd.hibernateInverse"#if ($otherEnd.hibernateCascade) cascade="$otherEnd.hibernateCascade"#end#if ($otherEnd.whereClause) where="$otherEnd.whereClause"#end>
#end
Modified: trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate3/hibernate.hbm.xml.vsl
===================================================================
--- trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate3/hibernate.hbm.xml.vsl 2013-11-26 13:03:07 UTC (rev 15375)
+++ trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate3/hibernate.hbm.xml.vsl 2013-12-11 20:14:14 UTC (rev 15376)
@@ -4,7 +4,7 @@
<?xml version="1.0" encoding="$xmlEncoding"?>
<!--
Attention: Generated code! Do not modify by hand!
- Generated by hibernate3/hibernate.hbm.xml.vsl in andromda-hibernate-cartridge.
+ Generated by hibernate3/hibernate.hbm.xml.vsl in andromda-hibernate-cartridge#if($dateTimeGeneratedText) on $hibernateUtils.date#end.
-->
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
Modified: trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate3/usertypes/HibernateEnumType.vsl
===================================================================
--- trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate3/usertypes/HibernateEnumType.vsl 2013-11-26 13:03:07 UTC (rev 15375)
+++ trunk/cartridges/andromda-hibernate/src/main/resources/templates/hibernate3/usertypes/HibernateEnumType.vsl 2013-12-11 20:14:14 UTC (rev 15376)
@@ -2,7 +2,7 @@
// license-header java merge-point
//
// Attention: Generated code! Do not modify by hand!
-// Generated by hibernate3/usertypes/HibernateEnumType.vsl in andromda-hibernate-cartridge.
+// Generated by hibernate3/usertypes/HibernateEnumType.vsl in andromda-hibernate-cartridge#if($dateTimeGeneratedText) on $hibernateUtils.date#end.
//
#set ($className = "HibernateEnumType")
#set ($generatedFile = "$stringUtils.replace($userTypesPackage, '.', '/')/${className}.java")
Modified: trunk/cartridges/andromda-hibernate/src/test/expected/cartridge-outputUML2.zip
===================================================================
(Binary files differ)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <wal...@us...> - 2013-11-26 13:03:12
|
Revision: 15375
http://sourceforge.net/p/andromda/svn/15375
Author: walterim
Date: 2013-11-26 13:03:07 +0000 (Tue, 26 Nov 2013)
Log Message:
-----------
Wrong package name in hibernate 4.
Modified Paths:
--------------
trunk/cartridges/andromda-spring/src/main/java/org/andromda/cartridges/spring/SpringHibernateUtils.java
Modified: trunk/cartridges/andromda-spring/src/main/java/org/andromda/cartridges/spring/SpringHibernateUtils.java
===================================================================
--- trunk/cartridges/andromda-spring/src/main/java/org/andromda/cartridges/spring/SpringHibernateUtils.java 2013-11-20 11:06:24 UTC (rev 15374)
+++ trunk/cartridges/andromda-spring/src/main/java/org/andromda/cartridges/spring/SpringHibernateUtils.java 2013-11-26 13:03:07 UTC (rev 15375)
@@ -104,7 +104,7 @@
*/
public String getSpringHibernatePackage()
{
- return this.isVersion3() ? "org.springframework.orm.hibernate3" : this.isVersion4() ? "org.springframework.orm.hibernate3" : "org.springframework.orm.hibernate";
+ return this.isVersion3() ? "org.springframework.orm.hibernate3" : this.isVersion4() ? "org.springframework.orm.hibernate4" : "org.springframework.orm.hibernate";
}
/**
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <wal...@us...> - 2013-11-20 11:06:26
|
Revision: 15374
http://sourceforge.net/p/andromda/svn/15374
Author: walterim
Date: 2013-11-20 11:06:24 +0000 (Wed, 20 Nov 2013)
Log Message:
-----------
Correction in crud available operations.
Modified Paths:
--------------
trunk/cartridges/andromda-spring/src/main/resources/templates/spring/crud/applicationContext-manageable.xml.vsl
Modified: trunk/cartridges/andromda-spring/src/main/resources/templates/spring/crud/applicationContext-manageable.xml.vsl
===================================================================
--- trunk/cartridges/andromda-spring/src/main/resources/templates/spring/crud/applicationContext-manageable.xml.vsl 2013-11-19 20:17:47 UTC (rev 15373)
+++ trunk/cartridges/andromda-spring/src/main/resources/templates/spring/crud/applicationContext-manageable.xml.vsl 2013-11-20 11:06:24 UTC (rev 15374)
@@ -29,7 +29,7 @@
#if ($manageable.delete)
${manageable.fullyQualifiedManageableServiceName}.delete=PROPAGATION_REQUIRED
#end
-#foreach ($operation in $manageable.businessOperations)
+#foreach ($operation in $manageable.manageableBusinessOperations)
${manageable.fullyQualifiedManageableServiceName}.${operation.name}=PROPAGATION_REQUIRED
#end
#end
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <wal...@us...> - 2013-11-19 20:17:50
|
Revision: 15373
http://sourceforge.net/p/andromda/svn/15373
Author: walterim
Date: 2013-11-19 20:17:47 +0000 (Tue, 19 Nov 2013)
Log Message:
-----------
Correction in property reference.
Modified Paths:
--------------
trunk/cartridges/andromda-java/src/main/resources/META-INF/andromda/cartridge.xml
Modified: trunk/cartridges/andromda-java/src/main/resources/META-INF/andromda/cartridge.xml
===================================================================
--- trunk/cartridges/andromda-java/src/main/resources/META-INF/andromda/cartridge.xml 2013-11-19 20:17:17 UTC (rev 15372)
+++ trunk/cartridges/andromda-java/src/main/resources/META-INF/andromda/cartridge.xml 2013-11-19 20:17:47 UTC (rev 15373)
@@ -45,6 +45,7 @@
<condition name="generateIsBooleanGetters">$generateIsBooleanGetters.equalsIgnoreCase("true")</condition>
<condition name="generateChainedSetters">$generateChainedSetters.equalsIgnoreCase("true")</condition>
<condition name="addNamespaceBackslash">$addNamespaceBackslash.equalsIgnoreCase("true")</condition>
+ <condition name="dateTimeGeneratedText">$dateTimeGeneratedText.equalsIgnoreCase("true")</condition>
<!-- condition merge-point-->
<!-- cartridge-resource merge-point -->
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <wal...@us...> - 2013-11-19 20:17:20
|
Revision: 15372
http://sourceforge.net/p/andromda/svn/15372
Author: walterim
Date: 2013-11-19 20:17:17 +0000 (Tue, 19 Nov 2013)
Log Message:
-----------
Enhancements in crud functionality.
Modified Paths:
--------------
trunk/cartridges/andromda-spring/src/main/java/org/andromda/cartridges/spring/metafacades/SpringManageableEntityLogicImpl.java
trunk/cartridges/andromda-spring/src/main/resources/templates/spring/crud/SpringCrudService.vsl
trunk/cartridges/andromda-spring/src/main/resources/templates/spring/crud/SpringCrudServiceBase.vsl
trunk/cartridges/andromda-spring/src/main/resources/templates/spring/crud/applicationContext-manageable.xml.vsl
Modified: trunk/cartridges/andromda-spring/src/main/java/org/andromda/cartridges/spring/metafacades/SpringManageableEntityLogicImpl.java
===================================================================
--- trunk/cartridges/andromda-spring/src/main/java/org/andromda/cartridges/spring/metafacades/SpringManageableEntityLogicImpl.java 2013-11-18 23:03:14 UTC (rev 15371)
+++ trunk/cartridges/andromda-spring/src/main/java/org/andromda/cartridges/spring/metafacades/SpringManageableEntityLogicImpl.java 2013-11-19 20:17:17 UTC (rev 15372)
@@ -1,6 +1,14 @@
package org.andromda.cartridges.spring.metafacades;
+import java.util.Collection;
+
+import org.andromda.metafacades.uml.ClassifierFacade;
+import org.andromda.metafacades.uml.EntityQueryOperation;
+import org.andromda.metafacades.uml.ManageableEntity;
+import org.andromda.metafacades.uml.OperationFacade;
import org.andromda.metafacades.uml.UMLMetafacadeProperties;
+import org.apache.commons.collections.CollectionUtils;
+import org.apache.commons.collections.Predicate;
import org.apache.commons.lang.ObjectUtils;
import org.apache.commons.lang.StringUtils;
@@ -327,5 +335,60 @@
{
return StringUtils.isNotBlank(this.getRemoteContext());
}
+
+ /**
+ * Only allow business operations returning the entity or instances of the id type
+ *
+ * @return Allowed business operations.
+ */
+ public Collection<OperationFacade> getManageableBusinessOperations()
+ {
+ final Collection<OperationFacade> result=super.getBusinessOperations();
+ CollectionUtils.filter(result, new Predicate()
+ {
+ @Override
+ public boolean evaluate(Object obj)
+ {
+ final OperationFacade operation=(OperationFacade)obj;
+ final ClassifierFacade returnType=operation.getReturnType();
+ return operation.getVisibility().equals("public") &&
+ (returnType.isDataType() ||
+ returnType.getFullyQualifiedName().equals(getFullyQualifiedName()));
+ }
+ });
+ return result;
+ }
+ /**
+ * Only allow query operations returning the entity
+ *
+ * @return Allowed query operations.
+ */
+ public Collection<EntityQueryOperation> getManageableQueryOperations()
+ {
+ final Collection<EntityQueryOperation> result=super.getQueryOperations();
+ CollectionUtils.filter(result, new Predicate()
+ {
+ @Override
+ public boolean evaluate(Object obj)
+ {
+ final EntityQueryOperation operation=(EntityQueryOperation)obj;
+ final ClassifierFacade returnType=operation.getReturnType();
+ return operation.getVisibility().equals("public") &&
+ (returnType.isDataType() ||
+ returnType.getFullyQualifiedName().equals(getFullyQualifiedName()));
+ }
+ });
+ return result;
+ }
+
+ /**
+ * Helper function
+ *
+ * @return true if the operation returns a collection
+ */
+ public boolean isCollection(OperationFacade operation)
+ {
+ return (operation.getUpper() > 1 || operation.getUpper() == -1);
+ }
}
\ No newline at end of file
Modified: trunk/cartridges/andromda-spring/src/main/resources/templates/spring/crud/SpringCrudService.vsl
===================================================================
--- trunk/cartridges/andromda-spring/src/main/resources/templates/spring/crud/SpringCrudService.vsl 2013-11-18 23:03:14 UTC (rev 15371)
+++ trunk/cartridges/andromda-spring/src/main/resources/templates/spring/crud/SpringCrudService.vsl 2013-11-19 20:17:17 UTC (rev 15372)
@@ -139,6 +139,33 @@
public ${manageable.fullyQualifiedManageableValueObjectName} $searchUniqueMethod(final ${attribute.type.fullyQualifiedName} ${attribute.name});
#end
#end
+#foreach ($operation in $manageable.manageableBusinessOperations)
+#if ($operation.returnType.dataType)
+#set ($returnType = $operation.getterSetterReturnTypeName)
+#elseif ($manageable.isCollection($operation))
+#set ($returnType = "java.util.Collection<${manageable.fullyQualifiedManageableValueObjectName}>")
+#else
+#set ($returnType = "${manageable.fullyQualifiedManageableValueObjectName}")
+#end
+ /**
+$operation.getDocumentation(" * ")
+#foreach ($argument in $operation.arguments)
+ * @param $argument.name $argument.getDocumentation("")
+#end
+ * @return $returnType
+#foreach ($exception in $operation.exceptions)
+ * @throws $exception.fullyQualifiedName
+#end
+ */
+#if ($operation.exceptionsPresent)
+ public $returnType $operation.signature
+ throws $operation.exceptionList;
+#else
+ public $returnType $operation.signature;
+#end
+
+#end
+
// spring-crud-service merge-point
}
Modified: trunk/cartridges/andromda-spring/src/main/resources/templates/spring/crud/SpringCrudServiceBase.vsl
===================================================================
--- trunk/cartridges/andromda-spring/src/main/resources/templates/spring/crud/SpringCrudServiceBase.vsl 2013-11-18 23:03:14 UTC (rev 15371)
+++ trunk/cartridges/andromda-spring/src/main/resources/templates/spring/crud/SpringCrudServiceBase.vsl 2013-11-19 20:17:17 UTC (rev 15372)
@@ -288,6 +288,43 @@
}
#end
#end
+#foreach ($operation in $manageable.manageableBusinessOperations)
+#if ($operation.returnType.dataType)
+#set ($returnType = $operation.getterSetterReturnTypeName)
+#elseif ($manageable.isCollection($operation))
+#set ($isCollection = true)
+#set ($returnType = "java.util.Collection<${manageable.fullyQualifiedManageableValueObjectName}>")
+#else
+#set ($isCollection = false)
+#set ($returnType = "${manageable.fullyQualifiedManageableValueObjectName}")
+#end
+ /**
+$operation.getDocumentation(" * ")
+#foreach ($argument in $operation.arguments)
+ * @param $argument.name $argument.getDocumentation("")
+#end
+ * @return $returnType
+#foreach ($exception in $operation.exceptions)
+ * @throws $exception.fullyQualifiedName
+#end
+ */
+#if ($operation.exceptionsPresent)
+ public $returnType $operation.signature
+ throws $operation.exceptionList
+#else
+ public $returnType $operation.signature
+#end
+ {
+#if ($operation.returnType.dataType)
+ #if($returnType != "void") return#end this.dao.${operation.call};
+#elseif ($isCollection)
+ return this.dao.toValueObjectCollection(this.dao.${operation.call});
+#else
+ return this.dao.toValueObject(this.dao.${operation.call});
+#end
+ }
+#end
+
// spring-crud-service-base merge-point
}
Modified: trunk/cartridges/andromda-spring/src/main/resources/templates/spring/crud/applicationContext-manageable.xml.vsl
===================================================================
--- trunk/cartridges/andromda-spring/src/main/resources/templates/spring/crud/applicationContext-manageable.xml.vsl 2013-11-18 23:03:14 UTC (rev 15371)
+++ trunk/cartridges/andromda-spring/src/main/resources/templates/spring/crud/applicationContext-manageable.xml.vsl 2013-11-19 20:17:17 UTC (rev 15372)
@@ -29,7 +29,10 @@
#if ($manageable.delete)
${manageable.fullyQualifiedManageableServiceName}.delete=PROPAGATION_REQUIRED
#end
+#foreach ($operation in $manageable.businessOperations)
+ ${manageable.fullyQualifiedManageableServiceName}.${operation.name}=PROPAGATION_REQUIRED
#end
+#end
</value>
</property>
</bean>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <wal...@us...> - 2013-11-13 14:13:23
|
Revision: 15370
http://sourceforge.net/p/andromda/svn/15370
Author: walterim
Date: 2013-11-13 14:13:20 +0000 (Wed, 13 Nov 2013)
Log Message:
-----------
Adding the namespace property dateTimeGeneratedText (default = true) to allow/disallow the generation of the date and time in the generated files.
Modified Paths:
--------------
trunk/cartridges/andromda-ejb3/src/test/expected/cartridge-outputUML2.zip
Modified: trunk/cartridges/andromda-ejb3/src/test/expected/cartridge-outputUML2.zip
===================================================================
(Binary files differ)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <wal...@us...> - 2013-11-12 21:53:46
|
Revision: 15369
http://sourceforge.net/p/andromda/svn/15369
Author: walterim
Date: 2013-11-12 21:53:43 +0000 (Tue, 12 Nov 2013)
Log Message:
-----------
Adding the namespace property dateTimeGeneratedText (default = true) to allow/disallow the generation of the date and time in the generated files.
Modified Paths:
--------------
trunk/cartridges/andromda-java/src/main/resources/META-INF/andromda/cartridge.xml
trunk/cartridges/andromda-java/src/main/resources/META-INF/andromda/namespace.xml
trunk/cartridges/andromda-java/src/main/resources/templates/java/ApplicationException.vsl
trunk/cartridges/andromda-java/src/main/resources/templates/java/Enumeration.vsl
trunk/cartridges/andromda-java/src/main/resources/templates/java/Interface.vsl
trunk/cartridges/andromda-java/src/main/resources/templates/java/InterfaceImpl.vsl
trunk/cartridges/andromda-java/src/main/resources/templates/java/Service.vsl
trunk/cartridges/andromda-java/src/main/resources/templates/java/ServiceImpl.vsl
trunk/cartridges/andromda-java/src/main/resources/templates/java/TypeSafeEnumeration.vsl
trunk/cartridges/andromda-java/src/main/resources/templates/java/UnexpectedException.vsl
trunk/cartridges/andromda-java/src/main/resources/templates/java/ValueObject.vsl
trunk/cartridges/andromda-java/src/test/expected/cartridge-outputUML2.zip
trunk/cartridges/andromda-java/src/test/expected/cartridge-uml2.zip
Modified: trunk/cartridges/andromda-java/src/main/resources/META-INF/andromda/cartridge.xml
===================================================================
--- trunk/cartridges/andromda-java/src/main/resources/META-INF/andromda/cartridge.xml 2013-11-04 11:51:58 UTC (rev 15368)
+++ trunk/cartridges/andromda-java/src/main/resources/META-INF/andromda/cartridge.xml 2013-11-12 21:53:43 UTC (rev 15369)
@@ -31,6 +31,7 @@
<property reference="XMLDecimalAdapter"/>
<property reference="cxfVersion"/>
<property reference="javaVersion"/>
+ <property reference="dateTimeGeneratedText"/>
<!-- cartridge-property merge-point-->
<condition name="generateRefFiles">$generateRefFiles.equalsIgnoreCase("true")</condition>
Modified: trunk/cartridges/andromda-java/src/main/resources/META-INF/andromda/namespace.xml
===================================================================
--- trunk/cartridges/andromda-java/src/main/resources/META-INF/andromda/namespace.xml 2013-11-04 11:51:58 UTC (rev 15368)
+++ trunk/cartridges/andromda-java/src/main/resources/META-INF/andromda/namespace.xml 2013-11-12 21:53:43 UTC (rev 15369)
@@ -115,6 +115,12 @@
If using XMLBindingAnnotations, annotate simple types as attributes instead of elements.
</documentation>
</property>
+ <property name="dateTimeGeneratedText">
+ <default>true</default>
+ <documentation>
+ Adds a comment with the current date and time to the generated.
+ </documentation>
+ </property>
<property name="javaVersion">
<default>1.6</default>
<documentation>
Modified: trunk/cartridges/andromda-java/src/main/resources/templates/java/ApplicationException.vsl
===================================================================
--- trunk/cartridges/andromda-java/src/main/resources/templates/java/ApplicationException.vsl 2013-11-04 11:51:58 UTC (rev 15368)
+++ trunk/cartridges/andromda-java/src/main/resources/templates/java/ApplicationException.vsl 2013-11-12 21:53:43 UTC (rev 15369)
@@ -2,9 +2,15 @@
## IMPORTANT!!! We can remove this when we upgrade to AndroMDA 3.5-SNAPSHOT
// license-header java merge-point
//
-// Attention: Generated code! Do not modify by hand!!
-// Generated by: ApplicationException.vsl in andromda-java-cartridge.
-//
+/**
+ * @author Generated by ApplicationException.vsl in andromda-java-cartridge#if($dateTimeGeneratedText) on $javaUtils.date#end Do not modify by hand!
+ *
+ * TEMPLATE: ApplicationException.vsl in andromda-java-cartridge.
+ * MODEL CLASS: $class.validationName
+#foreach ($stereotype in $class.stereotypes)
+ * STEREOTYPE: $stereotype.name
+#end
+ */
#if ($stringUtils.isNotBlank($class.packageName))
package $class.packageName;
#end
Modified: trunk/cartridges/andromda-java/src/main/resources/templates/java/Enumeration.vsl
===================================================================
--- trunk/cartridges/andromda-java/src/main/resources/templates/java/Enumeration.vsl 2013-11-04 11:51:58 UTC (rev 15368)
+++ trunk/cartridges/andromda-java/src/main/resources/templates/java/Enumeration.vsl 2013-11-12 21:53:43 UTC (rev 15369)
@@ -2,7 +2,7 @@
// license-header java merge-point
//
/**
- * @author GENERATED CODE! Do not modify by hand!
+ * @author Generated by Enumeration.vsl in andromda-java-cartridge#if($dateTimeGeneratedText) on $javaUtils.date#end Do not modify by hand!
*
* TEMPLATE: Enumeration.vsl in andromda-java-cartridge
* MODEL CLASS: $enumeration.validationName
Modified: trunk/cartridges/andromda-java/src/main/resources/templates/java/Interface.vsl
===================================================================
--- trunk/cartridges/andromda-java/src/main/resources/templates/java/Interface.vsl 2013-11-04 11:51:58 UTC (rev 15368)
+++ trunk/cartridges/andromda-java/src/main/resources/templates/java/Interface.vsl 2013-11-12 21:53:43 UTC (rev 15369)
@@ -1,6 +1,15 @@
#if ($umlUtils.shouldOutput($interface))
// license-header java merge-point
-/* Autogenerated by AndroMDA Java cartridge (Interface.vsl) - do not edit */
+//
+/**
+ * @author Generated by Interface.vsl in andromda-java-cartridge#if($dateTimeGeneratedText) on $javaUtils.date#end Do not modify by hand!
+ *
+ * TEMPLATE: Interface.vsl in andromda-java-cartridge.
+ * MODEL CLASS: $class.validationName
+#foreach ($stereotype in $class.stereotypes)
+ * STEREOTYPE: $stereotype.name
+#end
+ */
#if ($stringUtils.isNotBlank($interface.packageName))
package $interface.packageName;
#end
Modified: trunk/cartridges/andromda-java/src/main/resources/templates/java/InterfaceImpl.vsl
===================================================================
--- trunk/cartridges/andromda-java/src/main/resources/templates/java/InterfaceImpl.vsl 2013-11-04 11:51:58 UTC (rev 15368)
+++ trunk/cartridges/andromda-java/src/main/resources/templates/java/InterfaceImpl.vsl 2013-11-12 21:53:43 UTC (rev 15369)
@@ -2,7 +2,16 @@
#set ($className = $interface.interfaceImplementationName)
#set ($generatedFile = "${className}.java")
// license-header java merge-point
-/* Autogenerated by AndroMDA Java cartridge (InterfaceImpl.vsl) - do not edit */
+//
+/**
+ * @author Generated by InterfaceImpl.vsl in andromda-java-cartridge#if($dateTimeGeneratedText) on $javaUtils.date#end Do not modify by hand!
+ *
+ * TEMPLATE: InterfaceImpl.vsl in andromda-java-cartridge.
+ * MODEL CLASS: $class.validationName
+#foreach ($stereotype in $class.stereotypes)
+ * STEREOTYPE: $stereotype.name
+#end
+ */
#if ($stringUtils.isNotBlank($interface.packageName))
package $interface.packageName;
#set ($generatedFile = "${stringUtils.replace($interface.packageName,'.','/')}/${generatedFile}")
Modified: trunk/cartridges/andromda-java/src/main/resources/templates/java/Service.vsl
===================================================================
--- trunk/cartridges/andromda-java/src/main/resources/templates/java/Service.vsl 2013-11-04 11:51:58 UTC (rev 15368)
+++ trunk/cartridges/andromda-java/src/main/resources/templates/java/Service.vsl 2013-11-12 21:53:43 UTC (rev 15369)
@@ -1,9 +1,15 @@
#if ($umlUtils.shouldOutput($service))
// license-header java merge-point
//
-// Attention: Generated code! Do not modify by hand!
-// Generated by: Service.vsl in andromda-java-cartridge.
-//
+/**
+ * @author Generated by Service.vsl in andromda-java-cartridge#if($dateTimeGeneratedText) on $javaUtils.date#end Do not modify by hand!
+ *
+ * TEMPLATE: Service.vsl in andromda-java-cartridge.
+ * MODEL CLASS: $service.validationName
+#foreach ($stereotype in $service.stereotypes)
+ * STEREOTYPE: $stereotype.name
+#end
+ */
#if ($stringUtils.isNotBlank($service.packageName))
package $service.packageName;
#end
Modified: trunk/cartridges/andromda-java/src/main/resources/templates/java/ServiceImpl.vsl
===================================================================
--- trunk/cartridges/andromda-java/src/main/resources/templates/java/ServiceImpl.vsl 2013-11-04 11:51:58 UTC (rev 15368)
+++ trunk/cartridges/andromda-java/src/main/resources/templates/java/ServiceImpl.vsl 2013-11-12 21:53:43 UTC (rev 15369)
@@ -1,7 +1,9 @@
#if ($umlUtils.shouldOutput($service))
// license-header java merge-point
+//
/**
- * Generated by java cartridge ServiceImpl.vsl
+ * @author Generated by ServiceImpl.vsl in andromda-java-cartridge#if($dateTimeGeneratedText) on $javaUtils.date#end
+ *
* This is only generated once! It will never be overwritten.
* You can (and have to!) safely modify it by hand.
*/
Modified: trunk/cartridges/andromda-java/src/main/resources/templates/java/TypeSafeEnumeration.vsl
===================================================================
--- trunk/cartridges/andromda-java/src/main/resources/templates/java/TypeSafeEnumeration.vsl 2013-11-04 11:51:58 UTC (rev 15368)
+++ trunk/cartridges/andromda-java/src/main/resources/templates/java/TypeSafeEnumeration.vsl 2013-11-12 21:53:43 UTC (rev 15369)
@@ -1,13 +1,15 @@
#if ($umlUtils.shouldOutput($enumeration))
// license-header java merge-point
//
-// Attention: Generated code! Do not modify by hand!
-// Generated by: TypeSafeEnumeration.vsl in andromda-java-cartridge.
-// Model Class: $enumeration.validationName
-// Metafacade: org.andromda.metafacades.uml.Enumeration
+/**
+ * @author Generated by TypeSafeEnumeration.vsl in andromda-java-cartridge#if($dateTimeGeneratedText) on $javaUtils.date#end Do not modify by hand!
+ *
+ * TEMPLATE: TypeSafeEnumeration.vsl in andromda-java-cartridge.
+ * MODEL CLASS: $enumeration.validationName
#foreach ($stereotype in $enumeration.stereotypes)
-// Stereotype: ${stereotype.name}
+ * STEREOTYPE: $stereotype.name
#end
+ */
//
## -- start -- set the map and list types as template parameters if required
#set ($valuesTemplateType = "")
Modified: trunk/cartridges/andromda-java/src/main/resources/templates/java/UnexpectedException.vsl
===================================================================
--- trunk/cartridges/andromda-java/src/main/resources/templates/java/UnexpectedException.vsl 2013-11-04 11:51:58 UTC (rev 15368)
+++ trunk/cartridges/andromda-java/src/main/resources/templates/java/UnexpectedException.vsl 2013-11-12 21:53:43 UTC (rev 15369)
@@ -2,9 +2,15 @@
## IMPORTANT!!! We can remove this when we upgrade to AndroMDA 3.4
// license-header java merge-point
//
-// Attention: Generated code! Do not modify by hand!
-// Generated by: UnexpectedException.vsl in andromda-java-cartridge.
-//
+/**
+ * @author Generated by UnexpectedException.vsl in andromda-java-cartridge#if($dateTimeGeneratedText) on $javaUtils.date#end Do not modify by hand!
+ *
+ * TEMPLATE: UnexpectedException.vsl in andromda-java-cartridge.
+ * MODEL CLASS: $class.validationName
+#foreach ($stereotype in $class.stereotypes)
+ * STEREOTYPE: $stereotype.name
+#end
+ */
#if ($stringUtils.isNotBlank($class.packageName))
package $class.packageName;
#end
Modified: trunk/cartridges/andromda-java/src/main/resources/templates/java/ValueObject.vsl
===================================================================
--- trunk/cartridges/andromda-java/src/main/resources/templates/java/ValueObject.vsl 2013-11-04 11:51:58 UTC (rev 15368)
+++ trunk/cartridges/andromda-java/src/main/resources/templates/java/ValueObject.vsl 2013-11-12 21:53:43 UTC (rev 15369)
@@ -2,7 +2,7 @@
// license-header java merge-point
//
/**
- * @author Generated code! Do not modify by hand!
+ * @author Generated by ValueObject.vsl in andromda-java-cartridge#if($dateTimeGeneratedText) on $javaUtils.date#end Do not modify by hand!
*
* TEMPLATE: ValueObject.vsl in andromda-java-cartridge.
* MODEL CLASS: $class.validationName
Modified: trunk/cartridges/andromda-java/src/test/expected/cartridge-outputUML2.zip
===================================================================
(Binary files differ)
Modified: trunk/cartridges/andromda-java/src/test/expected/cartridge-uml2.zip
===================================================================
(Binary files differ)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <wal...@us...> - 2013-11-04 11:52:01
|
Revision: 15368
http://sourceforge.net/p/andromda/svn/15368
Author: walterim
Date: 2013-11-04 11:51:58 +0000 (Mon, 04 Nov 2013)
Log Message:
-----------
Avoid spring transaction control when the service operation is private/protected.
Modified Paths:
--------------
trunk/cartridges/andromda-spring/src/main/resources/templates/spring/applicationContext.xml.vsl
Modified: trunk/cartridges/andromda-spring/src/main/resources/templates/spring/applicationContext.xml.vsl
===================================================================
--- trunk/cartridges/andromda-spring/src/main/resources/templates/spring/applicationContext.xml.vsl 2013-10-30 11:10:23 UTC (rev 15367)
+++ trunk/cartridges/andromda-spring/src/main/resources/templates/spring/applicationContext.xml.vsl 2013-11-04 11:51:58 UTC (rev 15368)
@@ -211,10 +211,12 @@
#foreach ($service in $services)
#if (!$service.private)
#foreach ($operation in $springUtils.filterUniqueByName($service.implementationOperations))
+#if(!$operation.visibility.equalsIgnoreCase("private") && !$operation.visibility.equalsIgnoreCase("protected"))
${service.fullyQualifiedName}.${operation.name}=${operation.transactionType}
#end
#end
#end
+#end
</value>
</property>
<!-- applicationContext serviceTransactionInterceptor merge-point -->
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <wal...@us...> - 2013-10-30 11:10:27
|
Revision: 15367
http://sourceforge.net/p/andromda/svn/15367
Author: walterim
Date: 2013-10-30 11:10:23 +0000 (Wed, 30 Oct 2013)
Log Message:
-----------
New test framework
Modified Paths:
--------------
trunk/cartridges/andromda-jsf2/src/main/resources/META-INF/andromda/cartridge.xml
trunk/cartridges/andromda-jsf2/src/main/resources/META-INF/andromda/namespace.xml
trunk/cartridges/andromda-jsf2/src/main/resources/resources/components/closeDialog.xhtml
trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/controllers/crud/Controller.java.vsl
trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/utils/ControllerBase.java.vsl
trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/utils/UseCasePhaseListener.java.vsl
trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/views/facelets/primefaces/layout/header.xhtml.vsl
trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/views/facelets/primefaces/layout/layout.xhtml.vsl
trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/views/facelets/primefaces/login.xhtml.vsl
Added Paths:
-----------
trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/SeleniumCommand.java.vsl
trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/SeleniumFactory.java.vsl
trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/WebCommand.java.vsl
trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/crud/
trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/crud/CrudEditForm.java.vsl
Removed Paths:
-------------
trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/DBUtil.java.vsl
trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/FieldValue.java.vsl
trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/FormAccess.java.vsl
trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/PageBase.java.vsl
trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/PageImplObject.java.vsl
trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/PageObject.java.vsl
trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/PropertiesUtil.java.vsl
trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/SelectFieldValue.java.vsl
trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/SelectMultipleFieldValue.java.vsl
trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/TestCaseBaseObject.java.vsl
trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/TestCaseImplObject.java.vsl
trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/TestInfoBaseObject.java.vsl
trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/TestInfoImplObject.java.vsl
trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/TestSuiteBase.java.vsl
Modified: trunk/cartridges/andromda-jsf2/src/main/resources/META-INF/andromda/cartridge.xml
===================================================================
--- trunk/cartridges/andromda-jsf2/src/main/resources/META-INF/andromda/cartridge.xml 2013-10-01 21:39:15 UTC (rev 15366)
+++ trunk/cartridges/andromda-jsf2/src/main/resources/META-INF/andromda/cartridge.xml 2013-10-30 11:10:23 UTC (rev 15367)
@@ -32,6 +32,7 @@
<property reference="messageResources"/>
<property reference="facesServletExtension"/>
<property reference="managedBeansPackage"/>
+ <property reference="testPackage"/>
<property reference="applicationName"/>
<property reference="exceptionHandlerPattern"/>
<property reference="converterPattern"/>
@@ -509,6 +510,37 @@
<!-- Test classes -->
+ <template
+ path="templates/jsf2/test/SeleniumCommand.java.vsl"
+ outputPattern="$stringUtils.replace($testPackage, '.', '/')/SeleniumCommand.java"
+ outlet="test"
+ overwrite="true"/>
+
+ <template
+ path="templates/jsf2/test/WebCommand.java.vsl"
+ outputPattern="$stringUtils.replace($testPackage, '.', '/')/WebCommand.java"
+ outlet="test"
+ overwrite="true"/>
+
+ <template
+ path="templates/jsf2/test/SeleniumFactory.java.vsl"
+ outputPattern="$stringUtils.replace($testPackage, '.', '/')/SeleniumFactory.java"
+ outlet="test"
+ overwrite="true"/>
+
+ <template
+ path="templates/jsf2/test/crud/CrudEditForm.java.vsl"
+ outputPattern="$generatedFile"
+ outlet="test"
+ overwrite="true">
+ <modelElements variable="manageable">
+ <modelElement>
+ <type name="org.andromda.cartridges.jsf2.metafacades.JSFManageableEntity">
+ <property name="needsUserInterface"/>
+ </type>
+ </modelElement>
+ </modelElements>
+ </template>
<!--
<template
path="templates/jsf2/test/FormAccess.java.vsl"
Modified: trunk/cartridges/andromda-jsf2/src/main/resources/META-INF/andromda/namespace.xml
===================================================================
--- trunk/cartridges/andromda-jsf2/src/main/resources/META-INF/andromda/namespace.xml 2013-10-01 21:39:15 UTC (rev 15366)
+++ trunk/cartridges/andromda-jsf2/src/main/resources/META-INF/andromda/namespace.xml 2013-10-30 11:10:23 UTC (rev 15367)
@@ -408,6 +408,13 @@
be generated (such as the layout options class, etc).
</documentation>
</property>
+ <property name="testPackage">
+ <default>org.andromda.presentation.jsf.test</default>
+ <documentation>
+ Defines the the package in which any extra test classes will
+ be generated.
+ </documentation>
+ </property>
<!-- <property name="jsfComponentsPackage"> -->
<!-- <default>org.andromda.presentation.jsf.components</default> -->
<!-- <documentation> -->
Modified: trunk/cartridges/andromda-jsf2/src/main/resources/resources/components/closeDialog.xhtml
===================================================================
--- trunk/cartridges/andromda-jsf2/src/main/resources/resources/components/closeDialog.xhtml 2013-10-01 21:39:15 UTC (rev 15366)
+++ trunk/cartridges/andromda-jsf2/src/main/resources/resources/components/closeDialog.xhtml 2013-10-30 11:10:23 UTC (rev 15367)
@@ -1,4 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<!-- Generated by andromda-jsf cartridge (views\facelets/crud/crud-index.xhtml.vsl) DO NOT EDIT! -->
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html">
Modified: trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/controllers/crud/Controller.java.vsl
===================================================================
--- trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/controllers/crud/Controller.java.vsl 2013-10-01 21:39:15 UTC (rev 15366)
+++ trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/controllers/crud/Controller.java.vsl 2013-10-30 11:10:23 UTC (rev 15367)
@@ -551,9 +551,9 @@
#if($member.type.stringType)
searchExample.${member.setterName}(searchValue);
#elseif($member.type.dateType)
- searchExample.${member.setterName}(new ${member.type.fullyQualifiedName}(java.text.DateFormat.getInstance().parse(searchValue).getTime()));
+ searchExample.${member.setterName}(org.apache.commons.lang3.StringUtils.isEmpty(searchValue)? null: new ${member.type.fullyQualifiedName}(java.text.DateFormat.getInstance().parse(searchValue).getTime()));
#else
- searchExample.${member.setterName}(#if($member.type.primitive)${member.type.wrapperName}#else ${member.type.fullyQualifiedName}#end.valueOf(searchValue));
+ searchExample.${member.setterName}(org.apache.commons.lang3.StringUtils.isEmpty(searchValue)? null: #if($member.type.primitive)${member.type.wrapperName}#else ${member.type.fullyQualifiedName}#end.valueOf(searchValue));
#end
#end
#end
Deleted: trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/DBUtil.java.vsl
===================================================================
--- trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/DBUtil.java.vsl 2013-10-01 21:39:15 UTC (rev 15366)
+++ trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/DBUtil.java.vsl 2013-10-30 11:10:23 UTC (rev 15367)
@@ -1,67 +0,0 @@
-// license-header java merge-point
-// Generated by andromda-jsf cartridge (test\DBUtil.java.vsl) DO NOT EDIT!
-#set ($className = "DBUtil")
-#if ($stringUtils.isNotEmpty($managedBeansPackage))
-package $managedBeansPackage;
-#end
-
-public class DBUtil {
-
- private java.sql.Connection connection;
- private org.dbunit.database.IDatabaseConnection iDatabaseconnection;
-
- public DBUtil() {
- try {
- Class.forName(System.getProperty("dbunitDriver"));
- } catch (ClassNotFoundException e) {
- throw new IllegalStateException("Database driver not found.");
- }
- }
-
- public void cleanDataBase(String file) throws Exception {
- try {
- openDataBaseConnection();
- final org.dbunit.dataset.IDataSet dataSet = new org.dbunit.dataset.xml.FlatXmlDataSetBuilder().build(new java.io.File(file));
- org.dbunit.operation.DatabaseOperation.CLEAN_INSERT.execute(iDatabaseconnection, dataSet);
- } finally {
- closeDataBaseConnection();
- }
- }
-
- public int getTableRowCount(String table) throws Exception {
- int rowCount;
- try {
- openDataBaseConnection();
- final org.dbunit.dataset.IDataSet databaseDataSet = iDatabaseconnection.createDataSet();
- final org.dbunit.dataset.ITable iTable = databaseDataSet.getTable(table);
- rowCount = iTable.getRowCount();
- } finally {
- closeDataBaseConnection();
- }
- return rowCount;
- }
-
- private void openDataBaseConnection() {
- final String url = System.getProperty("dbunitUrl");
- final String username = System.getProperty("dbunitUsername");
- final String password = System.getProperty("dbunitPassword");
- try {
- if(connection != null && !connection.isClosed()) {
- closeDataBaseConnection();
- }
- connection = java.sql.DriverManager.getConnection(url, username, password);
- iDatabaseconnection = new org.dbunit.database.DatabaseConnection(connection);
- } catch (Exception e) {
- throw new IllegalStateException("Could not open a connection to the database.");
- }
- }
-
- private void closeDataBaseConnection() {
- try {
- iDatabaseconnection.close();
- connection.close();
- } catch (java.sql.SQLException e) {
- throw new IllegalStateException("Could not close a connection to the database.");
- }
- }
-}
Deleted: trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/FieldValue.java.vsl
===================================================================
--- trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/FieldValue.java.vsl 2013-10-01 21:39:15 UTC (rev 15366)
+++ trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/FieldValue.java.vsl 2013-10-30 11:10:23 UTC (rev 15367)
@@ -1,41 +0,0 @@
-// license-header java merge-point
-// Generated by andromda-jsf cartridge (test\FieldValue.java.vsl) DO NOT EDIT!
-#set ($className = "FieldValue")
-#if ($stringUtils.isNotEmpty($managedBeansPackage))
-package $managedBeansPackage;
-#end
-
-public class ${className}
-{
-
- private String id;
- private String value;
- private String[] values;
-
- public FieldValue(String id, String value)
- {
- this.id = id;
- this.value = value;
- }
-
- public FieldValue(String id, String... values)
- {
- this.id = id;
- this.values = values;
- }
-
- public String getId()
- {
- return id;
- }
-
- public String getValue()
- {
- return value;
- }
-
- public String[] getValues()
- {
- return values;
- }
-}
Deleted: trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/FormAccess.java.vsl
===================================================================
--- trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/FormAccess.java.vsl 2013-10-01 21:39:15 UTC (rev 15366)
+++ trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/FormAccess.java.vsl 2013-10-30 11:10:23 UTC (rev 15367)
@@ -1,153 +0,0 @@
-#set ($generatedFile = "${action.fullyQualifiedActionClassPath}")
-// license-header java merge-point
-// Generated by andromda-jsf cartridge (test\FormAccess.java.vsl)
-package $action.packageName;
-
-public class ${action.fullyQualifiedActionClassName}FormAccess
-{
-
-#if (!$action.formFields.empty)
- // Action $action.name formFields
-#end
-## Impl uses $action.formFields, Form uses $operation.formFields
-#foreach ($field in $action.formFields)
-#setFieldTypeName($field $fieldTypeName)
-#foreach($annotation in $field.annotations)
- $annotation
-#end
- private $fieldTypeName $field.name;
-
- /**
-$field.getDocumentation(" * ")
- *
- * @return ${field.name} $field.getDocumentation("")
- */
-##if ($implList)
-## @Override
-##end
- public $fieldTypeName ${field.getterName}()
- {
-#if ($field.complex && !$field.many && !$field.type.enumeration)
- if (this.$field.name == null)
- {
- this.$field.name = new ${field.type.fullyQualifiedName}();
- this.${field.setterName}(this.$field.name);
- }
-#end
- return this.${field.name};
- }
-#renderAlternateGetterForPrimitiveBoolean($field.name $fieldTypeName ${field.getterName})
-
- /**
- * Keeps track of whether or not the value of $field.name has
- * be populated at least once.
- */
- private boolean $field.formAttributeSetProperty = false;
-## WIM: it looks to the values should be kept during all the form life (useCaseScope)
-## /**
-## * Resets the value of the $field.formAttributeSetProperty to false
-## */
-## public void reset${stringUtils.capitalize($field.formAttributeSetProperty)}()
-## {
-## this.$field.formAttributeSetProperty = false;
-## }
-
- /**
- * Indicates whether or not the value for $field.name has been set at least
- * once.
- *
- * @return true/false
- */
- public boolean is${stringUtils.capitalize($field.formAttributeSetProperty)}()
- {
- return this.$field.formAttributeSetProperty;
- }
-
- /**
-$field.getDocumentation(" * ")
- *
- * @param ${field.name}In $field.getDocumentation("")
- */
-##if ($implList)
-## @Override
-##end
- public void ${field.setterName}($fieldTypeName ${field.name}In)
- {
-#if($trimInputStrings && $field.type.stringType && !$field.many)
- this.$field.name = org.apache.commons.lang.StringUtils.trimToNull(${field.name}In);
-#else
- this.$field.name = ${field.name}In;
-#end
- this.$field.formAttributeSetProperty = true;
- }
-#renderBackingListImplSupport($field "")
-#if (!$field.type.enumeration)
-#if (!$field.attributes.empty)
-
- // $field.name attributes
-#end
-#foreach ($attribute in $field.attributes)
-## - Chad Brandon - we ALWAYS render the backing list for attributes in the form
-## impl (because there are complex conditions where they might not show up and cause
-## uncompilable code; if we always render, we don't need to figure out what they are)
-#renderBackingListImplSupport($attribute $field)
-#end
-#end
-
-#end
-## WIM: it looks to the values should be kept during all the form life (useCaseScope)
-## /**
-## * Resets all the "isSet" flags.
-## */
-## public void resetIsSetFlags()
-## {
-###foreach ($field in $action.formFields)
-## this.reset${stringUtils.capitalize($field.formAttributeSetProperty)}();
-###end
-## }
-##
-###if ($action.formResetRequired)
-##
-## /**
-## * Resets any fields of the form that need to be reset.
-## */
-## public void reset()
-## {
-###foreach($field in $action.parameters)
-###if ($field.reset)
-## this.$field.name = $field.type.javaNullString;
-###elseif ($field.complex && !$field.type.enumeration)
-###foreach ($attribute in $field.type.getAttributes(true))
-###if ($attribute.reset)
-## this.${field.name}.${attribute.setterName}($attribute.type.javaNullString);
-###end
-###end
-###end
-###end
-## }
-##
-###end
-
- /*
- * Append this form's fields and values to a Map
- *
- * @param dest the destination Map
- */
- public java.util.Map<String,Object> copyTo(java.util.Map<String,Object> dest)
- {
-#foreach ($field in $action.formFields)
- if(this.${field.formAttributeSetProperty})
- {
- dest.put("${field.name}",this.${field.name});
- }
-#end
- return dest;
- }
-
-#renderCopyFrom($action.formImplementationName $action.formFields "")
-
- /**
- * The serial version UID of this class. Needed for serialization.
- */
- private static final long serialVersionUID = ${action.formSerialVersionUID}L;
-}
Deleted: trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/PageBase.java.vsl
===================================================================
--- trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/PageBase.java.vsl 2013-10-01 21:39:15 UTC (rev 15366)
+++ trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/PageBase.java.vsl 2013-10-30 11:10:23 UTC (rev 15367)
@@ -1,213 +0,0 @@
-// license-header java merge-point
-// Generated by andromda-jsf cartridge (test\PageBase.java.vsl) DO NOT EDIT!
-#set ($className = "PageBase")
-#if ($stringUtils.isNotEmpty($managedBeansPackage))
-package $managedBeansPackage;
-#end
-
-import java.io.File;
-import java.io.IOException;
-
-import org.apache.commons.io.FileUtils;
-import org.apache.commons.lang.StringUtils;
-import org.openqa.selenium.By;
-import org.openqa.selenium.By.ByLinkText;
-import org.openqa.selenium.OutputType;
-import org.openqa.selenium.TakesScreenshot;
-import org.openqa.selenium.WebDriver;
-import org.openqa.selenium.WebElement;
-import org.openqa.selenium.support.ui.ExpectedConditions;
-import org.openqa.selenium.support.ui.Select;
-import org.openqa.selenium.support.ui.WebDriverWait;
-
-public class ${className}
-{
- public static final String GLOBAL_MESSAGES = "appMessages";
- public static final long WEBDRIVER_TIMEOUT_IN_SECONDS = 30;
-
- private static final PropertiesUtil messageProperties = new PropertiesUtil(System.getProperty("fileMessageProperties"));
- private WebDriver driver = TestSuiteBase.getDriver();
-
- /**
- * Create a screenshot
- *
- * @param file Destination file name
- */
- public void createScreenShotAs(String file) throws IOException
- {
- File srcFile = ((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE);
- FileUtils.copyFile(srcFile, new File(file));
- }
-
- /**
- * Return an instance of the WebDriver
- *
- * @return Instance of WebDriver
- */
- public WebDriver getDriver()
- {
- return driver;
- }
-
- /**
- * Gets message propertis
- *
- * @return Message properties
- */
- public static PropertiesUtil getMessageProperties()
- {
- return messageProperties;
- }
-
- /**
- * Gets an element text
- *
- * @param id Element id
- * @return Text of an element
- */
- public String getTextById(String id)
- {
- return driver.findElement(By.id(id)).getText();
- }
-
- /**
- * Goes to some url
- *
- * @param url Destiny url
- */
- public void gotoUrl(String url)
- {
- driver.get(url);
- }
-
- /**
- * Finds out if the current url contains an url
- *
- * @param url Some url
- * @return True if current url contains some url
- */
- public boolean isCurrentUrlContains(String url)
- {
- String currentUrl = driver.getCurrentUrl();
- return currentUrl.contains(url);
- }
-
- /**
- * Finds out if an element is displayed
- *
- * @param id Element id
- * @return True if element is displayed
- */
- public boolean isDisplayedById(String id)
- {
- return driver.findElement(By.id(id)).isDisplayed();
- }
-
- /**
- * Finds out if the page source code contains some text
- *
- * @param text Some text
- * @return True if page source code contains text
- */
- public boolean isPageSourceContains(String text)
- {
- String pageSource = driver.getPageSource();
- return pageSource.contains(text);
- }
-
- /**
- * Sends a click to an element
- *
- * @param link Link text
- */
- public void sendClickByLink(String link)
- {
- driver.findElement(ByLinkText.linkText(link)).click();
- }
-
- /**
- * Sends a click to an element
- *
- * @param id Element id
- */
- public void sendClickById(String id)
- {
- waitToBeClickable(id);
- driver.findElement(By.id(id)).click();
- }
-
- /**
- * Sets the value of a field
- *
- * @param field Field to be set
- */
- public void setFieldValue(FieldValue field)
- {
- final WebElement element = driver.findElement(By.id(field.getId()));
- if(field instanceof SelectFieldValue)
- {
- Select select = new Select(element);
- select.selectByVisibleText(field.getValue());
- }
- else if(field instanceof SelectMultipleFieldValue)
- {
- Select select = new Select(element);
- select.deselectAll();
- for(String value : field.getValues())
- {
- if(StringUtils.isNotBlank(value))
- {
- select.selectByVisibleText(value);
- }
- }
- }
- else
- {
- element.clear();
- element.sendKeys(field.getValue());
- }
- }
-
- /**
- * Sets form fields
- *
- * @param fiels Fields to be set
- */
- public void setForm(FieldValue... fields)
- {
- for(FieldValue field : fields)
- {
- setFieldValue(field);
- }
- }
-
- /**
- * Waits for an element to be visible
- *
- * @param id Element id
- */
- public void waitVisibilityById(final String id)
- {
- WebDriverWait wait = new WebDriverWait(driver, WEBDRIVER_TIMEOUT_IN_SECONDS);
- wait.until(ExpectedConditions.visibilityOfElementLocated(By.id(id)));
- }
-
- /**
- * Waits for global messages to be visible
- *
- */
- public void waitVisibilityOfGlobalMessages() {
- waitVisibilityById(GLOBAL_MESSAGES);
- }
-
- /**
- * Waits for an element to be clickable
- *
- * @param id Element id
- */
- public void waitToBeClickable(final String id)
- {
- WebDriverWait wait = new WebDriverWait(driver, WEBDRIVER_TIMEOUT_IN_SECONDS);
- wait.until(ExpectedConditions.elementToBeClickable(By.id(id)));
- }
-}
Deleted: trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/PageImplObject.java.vsl
===================================================================
--- trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/PageImplObject.java.vsl 2013-10-01 21:39:15 UTC (rev 15366)
+++ trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/PageImplObject.java.vsl 2013-10-30 11:10:23 UTC (rev 15367)
@@ -1,13 +0,0 @@
-#set ($className = "${view.pageObjectClassName}PageImpl")
-#set ($generatedFile = "${view.fullyQualifiedPageObjectClassPath}PageImpl.java")
-// license-header java merge-point
-// Generated by andromda-jsf cartridge (test\PageImplObject.java.vsl)
-package $view.packageName;
-
-/**
- * PageImplObject of $view.name
- */
-public class ${className} extends ${view.pageObjectClassName}Page
-{
-
-}
Deleted: trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/PageObject.java.vsl
===================================================================
--- trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/PageObject.java.vsl 2013-10-01 21:39:15 UTC (rev 15366)
+++ trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/PageObject.java.vsl 2013-10-30 11:10:23 UTC (rev 15367)
@@ -1,50 +0,0 @@
-#set ($className = "${view.pageObjectClassName}Page")
-#set ($generatedFile = "${view.fullyQualifiedPageObjectClassPath}Page.java")
-// license-header java merge-point
-// Generated by andromda-jsf cartridge (test\PageObject.java.vsl)
-package $view.packageName;
-
-import ${managedBeansPackage}.PageBase;
-import ${managedBeansPackage}.FieldValue;
-
-/**
- * PageObject of $view.name
- */
-public abstract class ${className} extends PageBase
-{
-
-#foreach ($action in $view.actions)
-
-#foreach ($field in $action.formFields)
-#set($constName = "CONST_${action.formBeanName.toUpperCase()}_${field.name.toUpperCase()}")
- public static final String ${constName} = "${action.formBeanName}:${field.name}";
- public static final String ${constName}_ICON = "${action.formBeanName}:${field.name}::icon";
- public static final String ${constName}_MSG = "${action.formBeanName}:${field.name}::msg";
-
- public boolean isDisplayed${stringUtils.upperCamelCaseName($action.formBeanName)}${stringUtils.upperCamelCaseName($field.name)}Icon()
- {
- waitVisibilityById(${constName}_ICON);
- return isDisplayedById(${constName}_ICON);
- }
-
- public String getDisplayed${stringUtils.upperCamelCaseName($action.formBeanName)}${stringUtils.upperCamelCaseName($field.name)}Msg() {
- waitVisibilityById(${constName}_MSG);
- return getTextById(${constName}_MSG);
- }
-#end
-
-#if(!$action.tableLink)
-#set($triggerId="${action.triggerName}Action")
-#set($triggerConst="CONST_${action.triggerName.toUpperCase()}_ACTION")
- public static final String ${triggerConst} = "${action.formBeanName}:${triggerId}";
-
- public void do${stringUtils.upperCamelCaseName($action.formBeanName)}${stringUtils.upperCamelCaseName($triggerId)}(FieldValue... fields)
- {
- setForm(fields);
- sendClickById(${triggerConst});
- }
-
-#end
-#end
-
-}
Deleted: trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/PropertiesUtil.java.vsl
===================================================================
--- trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/PropertiesUtil.java.vsl 2013-10-01 21:39:15 UTC (rev 15366)
+++ trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/PropertiesUtil.java.vsl 2013-10-30 11:10:23 UTC (rev 15367)
@@ -1,39 +0,0 @@
-// license-header java merge-point
-// Generated by andromda-jsf cartridge (test\PropertiesUtil.java.vsl) DO NOT EDIT!
-#set ($className = "PropertiesUtil")
-#if ($stringUtils.isNotEmpty($managedBeansPackage))
-package $managedBeansPackage;
-#end
-
-public class ${className} {
-
- private java.util.Properties properties;
-
- public PropertiesUtil(String file) {
- properties = new java.util.Properties();
- try {
- final java.io.InputStream in = new java.io.FileInputStream(file);
- properties.load(in);
- } catch (java.io.IOException e) {
- throw new IllegalStateException("Unable to load the properties file.");
- }
- }
-
- public String get(String key) {
- return get(key, (Object[])null);
- }
-
- public String get(String key, Object[] arguments) {
- String result;
- if(properties == null) {
- throw new IllegalStateException("No properties file was uploaded.");
- }
- result = properties.getProperty(key);
- if(arguments != null) {
- final java.text.MessageFormat format = new java.text.MessageFormat(result);
- result = format.format(arguments);
- }
- return result;
- }
-
-}
Deleted: trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/SelectFieldValue.java.vsl
===================================================================
--- trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/SelectFieldValue.java.vsl 2013-10-01 21:39:15 UTC (rev 15366)
+++ trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/SelectFieldValue.java.vsl 2013-10-30 11:10:23 UTC (rev 15367)
@@ -1,16 +0,0 @@
-// license-header java merge-point
-// Generated by andromda-jsf cartridge (test\SelectFieldValue.java.vsl) DO NOT EDIT!
-#set ($className = "SelectFieldValue")
-#if ($stringUtils.isNotEmpty($managedBeansPackage))
-package $managedBeansPackage;
-#end
-
-public class ${className} extends FieldValue
-{
-
- public SelectFieldValue(String id, String value)
- {
- super(id, value);
- }
-
-}
Deleted: trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/SelectMultipleFieldValue.java.vsl
===================================================================
--- trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/SelectMultipleFieldValue.java.vsl 2013-10-01 21:39:15 UTC (rev 15366)
+++ trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/SelectMultipleFieldValue.java.vsl 2013-10-30 11:10:23 UTC (rev 15367)
@@ -1,16 +0,0 @@
-// license-header java merge-point
-// Generated by andromda-jsf cartridge (test\SelectMultipleFieldValue.java.vsl) DO NOT EDIT!
-#set ($className = "SelectMultipleFieldValue")
-#if ($stringUtils.isNotEmpty($managedBeansPackage))
-package $managedBeansPackage;
-#end
-
-public class ${className} extends FieldValue
-{
-
- public SelectMultipleFieldValue(String id, String... values)
- {
- super(id, values);
- }
-
-}
Added: trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/SeleniumCommand.java.vsl
===================================================================
--- trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/SeleniumCommand.java.vsl (rev 0)
+++ trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/SeleniumCommand.java.vsl 2013-10-30 11:10:23 UTC (rev 15367)
@@ -0,0 +1,228 @@
+// license-header java merge-point
+// Generated by andromda-jsf cartridge (test\SeleniumCommand.java.vsl) DO NOT EDIT!
+#if ($stringUtils.isNotEmpty($testPackage))
+package $testPackage;
+#end
+
+import java.util.Collection;
+import java.util.regex.Pattern;
+
+import org.openqa.selenium.Alert;
+import org.openqa.selenium.By;
+import org.openqa.selenium.Keys;
+import org.openqa.selenium.WebDriver;
+import org.openqa.selenium.WebElement;
+import org.openqa.selenium.interactions.Actions;
+import org.openqa.selenium.support.ui.ExpectedConditions;
+import org.openqa.selenium.support.ui.WebDriverWait;
+
+import com.arcadian.logOne.util.helper.SeleniumHelper;
+
+public class SeleniumCommand implements WebCommand {
+
+ private WebDriver driver = SeleniumHelper.instance().getDriver();
+ private WebDriverWait wait = SeleniumHelper.instance().getWait();
+
+ @Override
+ public void alertAccept()
+ {
+ getAlert().accept();
+ }
+
+ @Override
+ public void alertDismiss()
+ {
+ getAlert().dismiss();
+ }
+
+ @Override
+ public void clear(String id)
+ {
+ getElement(By.id(id)).clear();
+ }
+
+ @Override
+ public void click(String id)
+ {
+ getElement(By.id(id)).click();
+ }
+
+ @Override
+ public void clickByXpath(String xpath)
+ {
+ getElement(By.xpath(xpath)).click();
+ }
+
+ @Override
+ public void clickByXpathAndLink(String xpath, String link)
+ {
+ WebElement element= getElement(By.xpath(xpath));
+ element.findElement(By.linkText(link)).click();
+ }
+
+ @Override
+ public String getAttributeValue(String id)
+ {
+ return getElement(By.id(id)).getAttribute("value");
+ }
+
+ @Override
+ public String getAttributeClass(String id)
+ {
+ return getElement(By.id(id)).getAttribute("class");
+ }
+
+ @Override
+ public String getElementText(String id)
+ {
+ return getElement(By.id(id)).getText();
+ }
+
+ @Override
+ public String[] getElementsByAttributeClass(String className)
+ {
+ Collection<WebElement> elements = getElements(By.className(className));
+ String[] result = new String[elements.size()];
+ int index = 0;
+ for(WebElement element : elements)
+ {
+ result[index++] = element.getText();
+ }
+ return result;
+ }
+
+ @Override
+ public boolean isElementDisplayed(String id)
+ {
+ return getElement(By.id(id)).isDisplayed();
+ }
+
+ @Override
+ public boolean isSelected(String id)
+ {
+ return getElement(By.id(id)).isSelected();
+ }
+
+ @Override
+ public boolean isTextPresent(String regex)
+ {
+ Pattern p = Pattern.compile(regex);
+ Matcher m = p.matcher(driver.getPageSource());
+ boolean result = false;
+ if(m.find())
+ {
+ result = true;
+ }
+ return result;
+ }
+
+ @Override
+ public void moveToElement(String id)
+ {
+ WebElement element = getElement(By.id(id));
+ if("input".equalsIgnoreCase(element.getTagName()))
+ {
+ element.sendKeys("");
+ }
+ else
+ {
+ new Actions(driver).moveToElement(element).perform();
+ }
+ }
+
+ @Override
+ public void showAllSubMenu(String idRoot, String className, String tagNameFind, String tagNameClick)
+ {
+ WebElement root = getElement(By.id(idRoot));
+ Collection<WebElement> elements = root.findElements(By.className(className));
+ for(WebElement element : elements)
+ {
+ WebElement div = element.findElement(By.tagName(tagNameFind));
+ if(div != null && !div.isDisplayed())
+ {
+ WebElement h3 = element.findElement(By.tagName(tagNameClick));
+ h3.click();
+ }
+ }
+ }
+
+ @Override
+ public void select(String id, String value)
+ {
+ getElement(By.id(id)).click();
+ clickByXpath("//div[@id='" + id + "_panel']/div/ul/li[text()='" + value + "']");
+ }
+
+ @Override
+ public void selectPanelValue(String id, String value)
+ {
+ WebElement root = getElement(By.id(id));
+ Collection<WebElement> elements = root.findElements(By.tagName("li"));
+ for(WebElement element : elements)
+ {
+ if(element.getText().startsWith(value))
+ {
+ element.click();
+ break;
+ }
+ }
+ }
+
+ @Override
+ public void sendKeys(String id, String value)
+ {
+ getElement(By.id(id)).sendKeys(value);
+ }
+
+ @Override
+ public void sendKeyTab(String id)
+ {
+ getElement(By.id(id)).sendKeys(Keys.TAB);
+ }
+
+ @Override
+ public void switchToDefaultContent()
+ {
+ driver.switchTo().defaultContent();
+ }
+
+ @Override
+ public void switchToFrame(String id)
+ {
+ WebElement frame = getElement(By.id(id));
+ driver.switchTo().frame(frame);
+ }
+
+ @Override
+ public void waitAjaxLoader(String id)
+ {
+ wait.until(ExpectedConditions.invisibilityOfElementLocated(By.id(id)));
+ }
+
+ @Override
+ public void waitElementDisplayed(String id)
+ {
+ wait.until(ExpectedConditions.visibilityOfElementLocated(By.id(id)));
+ }
+
+ @Override
+ public void waitElementNotDisplayed(String id)
+ {
+ wait.until(ExpectedConditions.invisibilityOfElementLocated(By.id(id)));
+ }
+
+ private Alert getAlert()
+ {
+ return driver.switchTo().alert();
+ }
+
+ private WebElement getElement(By by)
+ {
+ return driver.findElement(by);
+ }
+
+ private Collection<WebElement> getElements(By by)
+ {
+ return driver.findElements(by);
+ }
+}
\ No newline at end of file
Property changes on: trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/SeleniumCommand.java.vsl
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Added: trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/SeleniumFactory.java.vsl
===================================================================
--- trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/SeleniumFactory.java.vsl (rev 0)
+++ trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/SeleniumFactory.java.vsl 2013-10-30 11:10:23 UTC (rev 15367)
@@ -0,0 +1,84 @@
+// license-header java merge-point
+// Generated by andromda-jsf cartridge (test\SeleniumFactory.java.vsl) DO NOT EDIT!
+#if ($stringUtils.isNotEmpty($testPackage))
+package $testPackage;
+#end
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.apache.commons.lang3.StringUtils;
+import org.openqa.selenium.WebDriver;
+import org.openqa.selenium.chrome.ChromeDriver;
+import org.openqa.selenium.chrome.ChromeDriverService;
+import org.openqa.selenium.firefox.FirefoxDriver;
+import org.openqa.selenium.firefox.FirefoxProfile;
+import org.openqa.selenium.ie.InternetExplorerDriver;
+import org.openqa.selenium.ie.InternetExplorerDriverService;
+
+public class SeleniumFactory {
+
+ public WebDriver newInstance(String driver)
+ {
+ try
+ {
+ SeleniumStrategy strategy = availableDrivers.get(driver.toLowerCase());
+ return strategy.create();
+ }
+ catch(Exception e)
+ {
+ throw new RuntimeException("The WebDriver can't be instanciated", e);
+ }
+ }
+
+ private static Map<String, SeleniumStrategy> availableDrivers;
+ static
+ {
+ availableDrivers = new HashMap<String, SeleniumStrategy>();
+ availableDrivers.put("firefox", SeleniumStrategy.FIREFOX);
+ availableDrivers.put("chrome", SeleniumStrategy.CHROME);
+ availableDrivers.put("ie", SeleniumStrategy.IE);
+ }
+
+ private enum SeleniumStrategy {
+ FIREFOX
+ {
+ @Override
+ protected WebDriver create()
+ {
+ FirefoxProfile profile = new FirefoxProfile();
+ profile.setPreference("browser.safebrowsing.malware.enabled", false);
+ return new FirefoxDriver(profile);
+ }
+ },
+ CHROME
+ {
+ @Override
+ protected WebDriver create()
+ {
+ String path = System.getProperty("chromeDriverPath");
+ if(StringUtils.isBlank(path))
+ {
+ throw new RuntimeException("Chrome driver not found");
+ }
+ System.setProperty(ChromeDriverService.CHROME_DRIVER_EXE_PROPERTY, path);
+ return new ChromeDriver();
+ }
+ },
+ IE
+ {
+ @Override
+ protected WebDriver create()
+ {
+ String path = System.getProperty("ieDriverPath");
+ if(StringUtils.isBlank(path))
+ {
+ throw new RuntimeException("IE driver not found");
+ }
+ System.setProperty(InternetExplorerDriverService.IE_DRIVER_EXE_PROPERTY, path);
+ return new InternetExplorerDriver();
+ }
+ };
+ protected abstract WebDriver create();
+ }
+}
Property changes on: trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/SeleniumFactory.java.vsl
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Deleted: trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/TestCaseBaseObject.java.vsl
===================================================================
--- trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/TestCaseBaseObject.java.vsl 2013-10-01 21:39:15 UTC (rev 15366)
+++ trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/TestCaseBaseObject.java.vsl 2013-10-30 11:10:23 UTC (rev 15367)
@@ -1,36 +0,0 @@
-#set ($className = "${useCase.actionClassName}TestCaseBase")
-// license-header java merge-point
-// Generated by andromda-jsf cartridge (test\TestCaseBaseObject.java.vsl)
-package $useCase.packageName;
-
-import ${managedBeansPackage}.TestSuiteBase;
-import org.junit.Before;
-import org.junit.BeforeClass;
-
-/**
- * TestCaseBaseObject of ${useCase.actionClassName}
- */
-public abstract class ${className}
-{
- private final String fileCleanDataBase = System.getProperty("user.dir") + "/src/resources${useCase.path}-db-init.xml";
-
- private static ${useCase.actionClassName}TestInfoImpl ${stringUtils.lowerCamelCaseName($useCase.actionClassName)}Info;
-
-#foreach ($view in $useCase.views)
- private ${view.pageObjectClassName}PageImpl ${stringUtils.lowerCamelCaseName($view.pageObjectClassName)}Page;
-#end
-
- @BeforeClass
- public static void beforeClass() {
- ${stringUtils.lowerCamelCaseName($useCase.actionClassName)}Info = new ${useCase.actionClassName}TestInfoImpl();
- }
-
- @Before
- public void before() throws Exception {
- TestSuiteBase.getDatabase().cleanDataBase(fileCleanDataBase);
-#foreach ($view in $useCase.views)
- ${stringUtils.lowerCamelCaseName($view.pageObjectClassName)}Page = ${stringUtils.lowerCamelCaseName($useCase.actionClassName)}Info.get${view.pageObjectClassName}Page();
-#end
- }
-
-}
Deleted: trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/TestCaseImplObject.java.vsl
===================================================================
--- trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/TestCaseImplObject.java.vsl 2013-10-01 21:39:15 UTC (rev 15366)
+++ trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/TestCaseImplObject.java.vsl 2013-10-30 11:10:23 UTC (rev 15367)
@@ -1,12 +0,0 @@
-#set ($className = "${useCase.actionClassName}TestCaseImpl")
-// license-header java merge-point
-// Generated by andromda-jsf cartridge (test\TestCaseImplObject.java.vsl)
-package $useCase.packageName;
-
-/**
- * TestCaseImplObject of ${useCase.actionClassName}
- */
-public class ${className} extends ${useCase.actionClassName}TestCaseBase
-{
-
-}
Deleted: trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/TestInfoBaseObject.java.vsl
===================================================================
--- trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/TestInfoBaseObject.java.vsl 2013-10-01 21:39:15 UTC (rev 15366)
+++ trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/TestInfoBaseObject.java.vsl 2013-10-30 11:10:23 UTC (rev 15367)
@@ -1,28 +0,0 @@
-#set ($className = "${useCase.actionClassName}TestInfoBase")
-// license-header java merge-point
-// Generated by andromda-jsf cartridge (test\TestInfoBaseObject.java.vsl)
-package $useCase.packageName;
-
-import ${managedBeansPackage}.TestSuiteBase;
-
-/**
- * TestInfoBaseObject of ${useCase.actionClassName}
- */
-public abstract class ${className}
-{
-#foreach ($view in $useCase.views)
- /**
- * Instantiates a new Page Object of $view.name
- *
- * @return ${view.pageObjectClassName}PageImpl
- * @throws IllegalStateException
- */
- public ${view.pageObjectClassName}PageImpl get${view.pageObjectClassName}Page() throws IllegalStateException
- {
- ${view.pageObjectClassName}PageImpl page = new ${view.pageObjectClassName}PageImpl();
- //TODO Verify if page exists
- return page;
- }
-#end
-
-}
Deleted: trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/TestInfoImplObject.java.vsl
===================================================================
--- trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/TestInfoImplObject.java.vsl 2013-10-01 21:39:15 UTC (rev 15366)
+++ trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/TestInfoImplObject.java.vsl 2013-10-30 11:10:23 UTC (rev 15367)
@@ -1,12 +0,0 @@
-#set ($className = "${useCase.actionClassName}TestInfoImpl")
-// license-header java merge-point
-// Generated by andromda-jsf cartridge (test\TestInfoImplObject.java.vsl)
-package $useCase.packageName;
-
-/**
- * TestInfoImplObject of ${useCase.actionClassName}
- */
-public class ${className} extends ${useCase.actionClassName}TestInfoBase
-{
-
-}
Deleted: trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/TestSuiteBase.java.vsl
===================================================================
--- trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/TestSuiteBase.java.vsl 2013-10-01 21:39:15 UTC (rev 15366)
+++ trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/TestSuiteBase.java.vsl 2013-10-30 11:10:23 UTC (rev 15367)
@@ -1,35 +0,0 @@
-// license-header java merge-point
-// Generated by andromda-jsf cartridge (test\TestSuiteBase.java.vsl) DO NOT EDIT!
-#set ($className = "TestSuiteBase")
-#if ($stringUtils.isNotEmpty($managedBeansPackage))
-package $managedBeansPackage;
-#end
-
-@org.junit.runner.RunWith(org.junit.runners.Suite.class)
-@org.junit.runners.Suite.SuiteClasses({
-#set($comma="")
-#foreach ($useCase in $useCases)
- ${comma}${useCase.fullyQualifiedActionClassName}TestCaseImpl.class
-#set($comma=",")
-#end
-})
-public class TestSuiteBase {
-
- public static final String URL_HOME = System.getProperty("test.home.url");
-
- private static final org.openqa.selenium.WebDriver driver = new org.openqa.selenium.firefox.FirefoxDriver();
- private static final DBUtil database = new DBUtil();
-
- public static DBUtil getDatabase() {
- return database;
- }
-
- public static org.openqa.selenium.WebDriver getDriver() {
- return driver;
- }
-
- @org.junit.AfterClass
- public static void tearDown() {
- driver.quit();
- }
-}
Added: trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/WebCommand.java.vsl
===================================================================
--- trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/WebCommand.java.vsl (rev 0)
+++ trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/WebCommand.java.vsl 2013-10-30 11:10:23 UTC (rev 15367)
@@ -0,0 +1,34 @@
+// license-header java merge-point
+// Generated by andromda-jsf cartridge (test\WebCommand.java.vsl) DO NOT EDIT!
+#if ($stringUtils.isNotEmpty($testPackage))
+package $testPackage;
+#end
+
+public interface WebCommand {
+
+ void alertAccept();
+ void alertDismiss();
+ void clear(String id);
+ void click(String id);
+ void clickByXpath(String xpath);
+ void clickByXpathAndLink(String xpath, String link);
+ void showAllSubMenu(String idRoot, String className, String tagNameFind, String tagNameClick);
+ String getAttributeValue(String id);
+ String getAttributeClass(String id);
+ String getElementText(String id);
+ String[] getElementsByAttributeClass(String className);
+ boolean isElementDisplayed(String id);
+ boolean isSelected(String id);
+ boolean isTextPresent(String regex);
+ void moveToElement(String id);
+ void select(String id, String value);
+ void selectPanelValue(String id, String value);
+ void sendKeys(String id, String value);
+ void sendKeyTab(String id);
+ void switchToDefaultContent();
+ void switchToFrame(String id);
+ void waitAjaxLoader(String id);
+ void waitElementDisplayed(String id);
+ void waitElementNotDisplayed(String id);
+
+}
\ No newline at end of file
Property changes on: trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/WebCommand.java.vsl
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Added: trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/crud/CrudEditForm.java.vsl
===================================================================
--- trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/crud/CrudEditForm.java.vsl (rev 0)
+++ trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/crud/CrudEditForm.java.vsl 2013-10-30 11:10:23 UTC (rev 15367)
@@ -0,0 +1,59 @@
+#set ($generatedFile = "${manageable.testEditFormBeanFullPath}.java")
+// license-header java merge-point
+// Generated by andromda-jsf cartridge (forms\crud\Form.java.vsl) DO NOT EDIT!
+package $manageable.manageablePackageName;
+
+public class $manageable.testEditFormBeanClassName extends ${testPackage}.ManageEditForm {
+#foreach ($field in $manageable.manageableAttributes)
+
+ public String getFieldId_${field.name}()
+ {
+ return createFieldId("${field.name}");
+ }
+
+ public String getFieldMessage_${field.name}()
+ {
+ return page.getText(getFieldId_${field.name}()+MESSAGE_SUFFIX);
+ }
+
+ public boolean isFieldContainsError_${field.name}()
+ {
+ return page.isFieldContainsError(getFieldMessage_${field.name}());
+ }
+#end
+#foreach ($field in $manageable.manageableAssociationEnds)
+#if($field.otherEnd.navigable && $field.otherEnd.composition && $field.many)
+
+ public ${field.type.fullyQualifiedTestEditFormBeanClassName} ${field.type.testEditFormBeanGetter}()
+ {
+ return new ${field.type.fullyQualifiedTestEditFormBeanClassName}("${field.type.formBeanName}", true);
+ }
+
+ public void newAction_${field.name}(${testPackage}.Field...fields) {
+ page.click(createFieldId("${field.name}_newAction"));
+ String iframe = createFieldId("${field.name}_dialog:iframe");
+ page.switchToFrame(iframe);
+ page.waitElementDisplayed("${field.type.formBeanName}");
+ ${field.type.testEditFormBeanGetter}().saveSelectAction(fields);
+ page.switchToDefaultContent();
+ page.waitElementDisplayed(formId);
+ }
+#else
+
+ public String getFieldId_${field.name}()
+ {
+ return createFieldId("${field.name}");
+ }
+
+ public String getFieldMessage_${field.name}()
+ {
+ return page.getText(getFieldId_${field.name}()+MESSAGE_SUFFIX);
+ }
+
+ public boolean isFieldContainsError_${field.name}()
+ {
+ return page.isFieldContainsError(getFieldMessage_${field.name}());
+ }
+#end
+#end
+}
Property changes on: trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/test/crud/CrudEditForm.java.vsl
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Modified: trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/utils/ControllerBase.java.vsl
===================================================================
--- trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/utils/ControllerBase.java.vsl 2013-10-01 21:39:15 UTC (rev 15366)
+++ trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/utils/ControllerBase.java.vsl 2013-10-30 11:10:23 UTC (rev 15367)
@@ -154,7 +154,8 @@
useCaseParameters=this.getUseCaseParameters();
}
- this.resetUseCaseScope();
+ //reset the useCaseScope and put the parameters available.
+ this.resetUseCaseScope().put(USE_CASE_PARAMETERS_KEY,useCaseParameters);
setUseCaseInDialog(org.apache.commons.lang.BooleanUtils.toBoolean(org.apache.commons.lang.ObjectUtils.toString(useCaseParameters.get(USE_CASE_IN_DIALOG_KEY))));
Modified: trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/utils/UseCasePhaseListener.java.vsl
===================================================================
--- trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/utils/UseCasePhaseListener.java.vsl 2013-10-01 21:39:15 UTC (rev 15366)
+++ trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/utils/UseCasePhaseListener.java.vsl 2013-10-30 11:10:23 UTC (rev 15367)
@@ -22,6 +22,20 @@
}
}
}
+ else if(event.getPhaseId().equals(PhaseId.RENDER_RESPONSE))
+ {
+ //forward to the same usecase
+ final javax.faces.context.FacesContext facesContext=event.getFacesContext();
+ final java.util.Map<String, Object> requestMap = facesContext.getExternalContext().getRequestMap();
+ final java.util.Map<String, Object> viewScope = facesContext.getViewRoot().getViewMap();
+ //Response: if the current view does not have the scope key but the request has, new view - forward
+ if(!viewScope.containsKey(ControllerBase.USE_CASE_SCOPE_KEY) &&
+ requestMap.containsKey(ControllerBase.USE_CASE_SCOPE_KEY))
+ {
+ //copy the scope key
+ viewScope.put(ControllerBase.USE_CASE_SCOPE_KEY,requestMap.get(ControllerBase.USE_CASE_SCOPE_KEY));
+ }
+ }
}
@Override
@@ -44,7 +58,8 @@
viewScope.put(ControllerBase.USE_CASE_SCOPE_KEY,requestMap.get(ControllerBase.USE_CASE_SCOPE_KEY));
}
}
- else if(event.getPhaseId().equals(javax.faces.event.PhaseId.RENDER_RESPONSE)){
+ else if(event.getPhaseId().equals(javax.faces.event.PhaseId.RENDER_RESPONSE))
+ {
// keep the useCaseScope alive in the next request
event.getFacesContext().getExternalContext().getFlash().keep(ControllerBase.USE_CASE_SCOPE_KEY);
}
Modified: trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/views/facelets/primefaces/layout/header.xhtml.vsl
===================================================================
--- trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/views/facelets/primefaces/layout/header.xhtml.vsl 2013-10-01 21:39:15 UTC (rev 15366)
+++ trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/views/facelets/primefaces/layout/header.xhtml.vsl 2013-10-30 11:10:23 UTC (rev 15367)
@@ -13,7 +13,7 @@
</p:menuButton>
</h:form>
#end
- <p:ajaxStatus >
+ <p:ajaxStatus id="ajax-loader">
<f:facet name="start">
<h:graphicImage value="resources/images/ajax-loader.gif" />
</f:facet>
Modified: trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/views/facelets/primefaces/layout/layout.xhtml.vsl
===================================================================
--- trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/views/facelets/primefaces/layout/layout.xhtml.vsl 2013-10-01 21:39:15 UTC (rev 15366)
+++ trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/views/facelets/primefaces/layout/layout.xhtml.vsl 2013-10-30 11:10:23 UTC (rev 15367)
@@ -1,4 +1,5 @@
<?xml version="1.0" encoding="${xmlEncoding}"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<!-- Generated by andromda-jsf cartridge (views\facelets\layout\layout.xhtml.vsl) DO NOT EDIT! -->
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
Modified: trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/views/facelets/primefaces/login.xhtml.vsl
===================================================================
--- trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/views/facelets/primefaces/login.xhtml.vsl 2013-10-01 21:39:15 UTC (rev 15366)
+++ trunk/cartridges/andromda-jsf2/src/main/resources/templates/jsf2/views/facelets/primefaces/login.xhtml.vsl 2013-10-30 11:10:23 UTC (rev 15367)
@@ -1,4 +1,6 @@
<?xml version="1.0" encoding="${xmlEncoding}"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<!-- Generated by andromda-jsf cartridge (views\facelets\login.xhtml.vsl) DO NOT EDIT! -->
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://java.sun.com/jsf/facelets"
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <wal...@us...> - 2013-10-01 21:39:20
|
Revision: 15366
http://sourceforge.net/p/andromda/svn/15366
Author: walterim
Date: 2013-10-01 21:39:15 +0000 (Tue, 01 Oct 2013)
Log Message:
-----------
Removing 'Generated on $javaUtils.date' from the header. It causes undesired commits when the generated code is versioned.
Modified Paths:
--------------
trunk/cartridges/andromda-ejb3/src/test/expected/cartridge-outputUML2.zip
Modified: trunk/cartridges/andromda-ejb3/src/test/expected/cartridge-outputUML2.zip
===================================================================
(Binary files differ)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|