From: Vance K. <va...@us...> - 2006-07-25 06:42:54
|
User: vancek Date: 06/07/24 23:42:52 Modified: andromda-ejb3/src/main/resources/templates/ejb3 SessionBeanBase.vsl Globals.vm EntityEmbeddable.vsl andromda-ejb3/src/main/resources/META-INF/andromda namespace.xml metafacades.xml cartridge.xml andromda-ejb3/src/site/xdoc howto17.xml howto21.xml andromda-ejb3/src/changes changes.xml Log: add persistenceProviderExtensions namespace property to decouple hibernate specific annotations Revision Changes Path 1.8 +6 -2 cartridges/andromda-ejb3/src/main/resources/templates/ejb3/SessionBeanBase.vsl Index: SessionBeanBase.vsl =================================================================== RCS file: /cvsroot/andromdaplugins/cartridges/andromda-ejb3/src/main/resources/templates/ejb3/SessionBeanBase.vsl,v retrieving revision 1.7 retrieving revision 1.8 diff -u -w -r1.7 -r1.8 --- SessionBeanBase.vsl 15 Jul 2006 05:10:28 -0000 1.7 +++ SessionBeanBase.vsl 25 Jul 2006 06:42:51 -0000 1.8 @@ -1,3 +1,4 @@ +#parse("templates/ejb3/Globals.vm") // license-header java merge-point // // Attention: Generated code! Do not modify by hand! @@ -36,7 +37,7 @@ @javax.ejb.TransactionAttribute(javax.ejb.TransactionAttributeType.${service.transactionType}) #**##end #end -#if ($stringUtils.isNotBlank($service.securityRealm)) +#if ($service.securityEnabled) #**##if ($service.persistenceContainerJboss) @org.jboss.annotation.security.SecurityDomain("${service.securityRealm}") #**##end @@ -192,7 +193,10 @@ /** * The $attribute.name property */ -#* *##if ($service.seamComponent) +#* *##if ($hibernateExtensionEnabled && $service.seamComponent) +## +## Only enable JBoss Seam components if Hibernate extensions are enabled +## #* *##if ($attribute.seamComponentIn) @org.jboss.seam.annotations.In#if (!$attribute.required)(required = false)#else#**#(create = true)#end 1.3 +2 -1 cartridges/andromda-ejb3/src/main/resources/templates/ejb3/Globals.vm Index: Globals.vm =================================================================== RCS file: /cvsroot/andromdaplugins/cartridges/andromda-ejb3/src/main/resources/templates/ejb3/Globals.vm,v retrieving revision 1.2 retrieving revision 1.3 diff -u -w -r1.2 -r1.3 --- Globals.vm 28 Jan 2006 02:44:57 -0000 1.2 +++ Globals.vm 25 Jul 2006 06:42:51 -0000 1.3 @@ -1,2 +1,3 @@ #set ($requiredCheckEnabled = $parameterRequiredCheck.equalsIgnoreCase('true')) #set ($ejbSecurityEnabled = $stringUtils.isNotBlank($securityRealm)) \ No newline at end of file +#set ($hibernateExtensionEnabled = $stringUtils.equalsIgnoreCase('hibernate')) \ No newline at end of file 1.39 +28 -9 cartridges/andromda-ejb3/src/main/resources/templates/ejb3/EntityEmbeddable.vsl Index: EntityEmbeddable.vsl =================================================================== RCS file: /cvsroot/andromdaplugins/cartridges/andromda-ejb3/src/main/resources/templates/ejb3/EntityEmbeddable.vsl,v retrieving revision 1.38 retrieving revision 1.39 diff -u -w -r1.38 -r1.39 --- EntityEmbeddable.vsl 24 Jul 2006 14:02:02 -0000 1.38 +++ EntityEmbeddable.vsl 25 Jul 2006 06:42:51 -0000 1.39 @@ -1,3 +1,4 @@ +#parse("templates/ejb3/Globals.vm") // license-header java merge-point // // Attention: Generated code! Do not modify by hand! @@ -82,7 +83,7 @@ ## @javax.persistence.DiscriminatorValue("${entity.discriminatorValue}") #**##end -#**##if ($entity.cacheEnabled) +#**##if ($hibernateExtensionEnabled && $entity.cacheEnabled) @org.hibernate.annotations.Cache(usage = org.hibernate.annotations.CacheConcurrencyStrategy.${entity.cacheType}) #**##end ## @@ -476,9 +477,9 @@ #* *##if ($stringUtils.isNotBlank($attribute.enumerationType)) @javax.persistence.Enumerated(javax.persistence.EnumType.${attribute.enumerationType}) #* *##end -#* *##if ($entity.seamComponent) +#* *##if ($hibernateExtensionEnabled && $entity.seamComponent) ## -## If JBoss Seam is enabled, add NotNull and Length annotations +## If JBoss Seam and Hibernate extensions are both enabled, add NotNull and Length annotations ## #* *##if (!$attribute.columnNullable) @org.hibernate.validator.NotNull @@ -603,16 +604,25 @@ #* *##else @javax.persistence.OrderBy #* *##end -#* *##else +#* *##elseif ($hibernateExtensionEnabled) #* *##if ($target.list) +## +## Only add the IndexColumn annotation if Hibernate extensions are enabled +## @org.hibernate.annotations.IndexColumn(name = "${target.collectionIndexName}") #* *##end #* *##end #* *##end -#* *##if ($target.associationCacheEnabled) +#* *##if ($hibernateExtensionEnabled && $target.associationCacheEnabled) +## +## Add Cache annotations if association cache and Hibernate extensions are both enabled +## @org.hibernate.annotations.Cache(usage = org.hibernate.annotations.CacheConcurrencyStrategy.${target.cacheType}) #* *##end -#* *##if ($target.collectionInterfaceSortedSet) +#* *##if ($hibernateExtensionEnabled && $target.collectionInterfaceSortedSet) +## +## Only add the Sort annotation if interface is SortedSet and Hibernate extentions are enabled +## @org.hibernate.annotations.Sort(type = org.hibernate.annotations.SortType.NATURAL) #* *##end #* *##end @@ -730,16 +740,25 @@ #* *##else @javax.persistence.OrderBy #* *##end -#* *##else +#* *##elseif ($hibernateExtensionEnabled) +## +## Only add the IndexColumn annotation if Hibernate extensions are enabled +## #* *##if ($target.list) @org.hibernate.annotations.IndexColumn(name = "${target.collectionIndexName}") #* *##end #* *##end #* *##end -#* *##if ($target.associationCacheEnabled) +#* *##if ($hibernateExtensionEnabled && $target.associationCacheEnabled) +## +## Only add the Cache annotation if assocation cache and Hibernate extensions are both enabled +## @org.hibernate.annotations.Cache(usage = org.hibernate.annotations.CacheConcurrencyStrategy.${target.cacheType}) #* *##end -#* *##if ($target.collectionInterfaceSortedSet) +#* *##if ($hibernateExtensionEnabled && $target.collectionInterfaceSortedSet) +## +## Only add Sort annotation if collection interface is SortedSet and Hibernate extensions are enabled +## @org.hibernate.annotations.Sort(type = org.hibernate.annotations.SortType.NATURAL) #* *##end #* *##end 1.30 +20 -0 cartridges/andromda-ejb3/src/main/resources/META-INF/andromda/namespace.xml Index: namespace.xml =================================================================== RCS file: /cvsroot/andromdaplugins/cartridges/andromda-ejb3/src/main/resources/META-INF/andromda/namespace.xml,v retrieving revision 1.29 retrieving revision 1.30 diff -u -w -r1.29 -r1.30 --- namespace.xml 24 Jul 2006 06:20:49 -0000 1.29 +++ namespace.xml 25 Jul 2006 06:42:51 -0000 1.30 @@ -973,6 +973,26 @@ </property> </propertyGroup> <propertyGroup name="Other Properties"> + <property name="persistenceProviderExtensions"> + <default>none</default> + <documentation> + Determines whether the default persistence provider + extensions such as annotations should also be rendered. + By default, this is disabled. + To enable caching: + this must be set to <b>hibernate</b> such that + the Hibernate caching annotations are rendered. + To enable JBoss Seam: + this must be set to <b>hibernate</b> such that + the hibernate validator annotations are + rendered. + Possible values are: + <ul> + <li>none</li> + <li>hibernate</li> + </ul> + </documentation> + </property> <property name="persistenceContainerName"> <default>jboss</default> <documentation> 1.26 +1 -0 cartridges/andromda-ejb3/src/main/resources/META-INF/andromda/metafacades.xml Index: metafacades.xml =================================================================== RCS file: /cvsroot/andromdaplugins/cartridges/andromda-ejb3/src/main/resources/META-INF/andromda/metafacades.xml,v retrieving revision 1.25 retrieving revision 1.26 diff -u -w -r1.25 -r1.26 --- metafacades.xml 10 Jul 2006 05:29:36 -0000 1.25 +++ metafacades.xml 25 Jul 2006 06:42:51 -0000 1.26 @@ -38,6 +38,7 @@ <property reference="entityDefaultTemporalType"/> <property reference="serviceViewType"/> <property reference="entityGenericFinders"/> + <property reference="persistenceProviderExtensions"/> <property reference="persistenceContainerName"/> <property reference="persistenceContextUnitName"/> <property reference="securityRealm"/> 1.31 +1 -0 cartridges/andromda-ejb3/src/main/resources/META-INF/andromda/cartridge.xml Index: cartridge.xml =================================================================== RCS file: /cvsroot/andromdaplugins/cartridges/andromda-ejb3/src/main/resources/META-INF/andromda/cartridge.xml,v retrieving revision 1.30 retrieving revision 1.31 diff -u -w -r1.30 -r1.31 --- cartridge.xml 24 Jul 2006 14:04:57 -0000 1.30 +++ cartridge.xml 25 Jul 2006 06:42:51 -0000 1.31 @@ -34,6 +34,7 @@ <property reference="serviceLocatorName"/> <property reference="manageableServiceLocatorName"/> <property reference="ejb3TypesPackage"/> + <property reference="persistenceProviderExtensions"/> <property reference="persistenceContextUnitName"/> <property reference="persistenceContainerName"/> <property reference="parameterRequiredCheck"/> 1.6 +5 -0 cartridges/andromda-ejb3/src/site/xdoc/howto17.xml Index: howto17.xml =================================================================== RCS file: /cvsroot/andromdaplugins/cartridges/andromda-ejb3/src/site/xdoc/howto17.xml,v retrieving revision 1.5 retrieving revision 1.6 diff -u -w -r1.5 -r1.6 --- howto17.xml 28 Jun 2006 04:54:08 -0000 1.5 +++ howto17.xml 25 Jul 2006 06:42:51 -0000 1.6 @@ -90,6 +90,11 @@ <li class="gen"><p><a class="changed" href="src/org/andromda/test/howto17/a/andromda.xml"><code>andromda.xml</code></a></p></li> </ul> </p> + <p class="highlight"> + Remember: You must set the + <a href="namespace.html#persistenceProviderExtensions">persistenceProviderExtensions</a> + namespace property such that Hibernate cache specific annotations are generated. + </p> <p> The following sections will show you how to enable and configure caching and clustering. </p> 1.2 +6 -2 cartridges/andromda-ejb3/src/site/xdoc/howto21.xml Index: howto21.xml =================================================================== RCS file: /cvsroot/andromdaplugins/cartridges/andromda-ejb3/src/site/xdoc/howto21.xml,v retrieving revision 1.1 retrieving revision 1.2 diff -u -w -r1.1 -r1.2 --- howto21.xml 1 Jul 2006 03:07:39 -0000 1.1 +++ howto21.xml 25 Jul 2006 06:42:51 -0000 1.2 @@ -11,8 +11,12 @@ This latest addition is work in progress. </p> <p> - Here is the initial roadmap for JBoss Seam integration from the forum - + Here is the initial roadmap for JBoss Seam integration from the forum. + </p> + <p class="highlight"> + Remember: You must set the + <a href="namespace.html#persistenceProviderExtensions">persistenceProviderExtensions</a> + namespace property such that Hibernate validator specific annotations are generated. </p> <a name="Seam_Roadmap"/> <subsection name="Seam Roadmap"> 1.27 +5 -0 cartridges/andromda-ejb3/src/changes/changes.xml Index: changes.xml =================================================================== RCS file: /cvsroot/andromdaplugins/cartridges/andromda-ejb3/src/changes/changes.xml,v retrieving revision 1.26 retrieving revision 1.27 diff -u -w -r1.26 -r1.27 --- changes.xml 24 Jul 2006 14:04:57 -0000 1.26 +++ changes.xml 25 Jul 2006 06:42:51 -0000 1.27 @@ -271,6 +271,11 @@ Generate JBoss MQ destinations service XML descriptor when hot deployed under JBoss, creates the Queue/Topics. </action> + <action dev="vancek" due-to="KnisterPeter" type="update"> + Added new namespace property persistenceProviderExtensions. Default value is none. Currently, ony + hibernate extensions are supported. If set to hibernate, then hibernate specifc annotations are + rendered in appropriate locations based on the model. + </action> </release> </body> </document> \ No newline at end of file |