[ http://jira.andromda.org/browse/NETCART-9?page=comments#action_13731 ]
Campbell Boucher-Burnet commented on NETCART-9: ----------------------------------------------- Something like... In cartridge.xml: <template path="templates/nspring/NSpringDaoFactory.cs.vsl" outputPattern="$generatedFile" outlet="daos" overwrite="true" outputToSingleFile="true" outputOnEmptyElements="false"> <modelElements variable="entities"> <modelElement> <type name="org.andromda.cartridges.nspring.metafacades.SpringEntity"/> </modelElement> </modelElements> </template> in templates/nspring/NSpringDaoFactory.cs.vsl: #set ($generatedFile = "ServiceFactory.cs") #if($stringUtils.isNotEmpty($springTypesPackage)) #set ($generatedFile = "${stringUtils.replace($springTypesPackage,'.','/')}/$generatedFile") #end // Name: ServiceFactory.cs // license-header cs merge-point // // Attention: Generated code! Do not modify by hand! // Generated by: NSpringServiceFactory.cs.vsl in andromda-nspring-cartridge. using System; #if ($stringUtils.isNotBlank($springTypesPackage)) namespace ${springTypesPackage} { #end //TODO: local versus remote? // .NET remoting versus SOAP/Hessian, etc.? // Generate service agent classes that are clients of this? #region Service Factory /// <summary> /// Factory for obtaining Service Interface implementation instances. /// </summary> public class ServiceFactory { #region Backing Fields #foreach($service in $services) #region m_$stringUtils.lowerCamelCaseName($service.name) /// <summary> /// Backing field for ${service.fullyQualifiedInterfaceName}. /// </summary> private static ${service.fullyQualifiedInterfaceName} m_$stringUtils.lowerCamelCaseName($service.name) = null; #endregion #end #endregion Backing Fields #region Factory Methods #foreach($service in $services) #region Get${service.name}() /// <summary> /// Factory method to obtain concrete instances of ${service.fullyQualifiedInterfaceName}. /// </summary> public static ${service.fullyQualifiedInterfaceName} Get${service.name}() { if (m_$stringUtils.lowerCamelCaseName($service.name) == null) { m_$stringUtils.lowerCamelCaseName($service.name) = new ${service.fullyQualifiedImplementationName}(); } return m_$stringUtils.lowerCamelCaseName($service.name); } #endregion #end #endregion Factory Methods } #endregion Service Factory #if ($stringUtils.isNotBlank($springTypesPackage)) } #end > Create a template for generating a service locator class > -------------------------------------------------------- > > Key: NETCART-9 > URL: http://jira.andromda.org/browse/NETCART-9 > Project: .NET Cartridges > Type: Improvement > Reporter: Naresh Bhatia > Assignee: Naresh Bhatia > Priority: Minor > > Create a template for generating a service locator class -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://jira.andromda.org/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV