From: Robert L. <rle...@us...> - 2007-03-23 11:04:23
|
Update of /cvsroot/ccmtools/ccmtools/src/templates/CppLocalTemplates In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv17271/src/templates/CppLocalTemplates Modified Files: MHomeDef Log Message: C++: the local home adapter has no longer a dependency to the home's implementation Index: MHomeDef =================================================================== RCS file: /cvsroot/ccmtools/ccmtools/src/templates/CppLocalTemplates/MHomeDef,v retrieving revision 1.25 retrieving revision 1.26 diff -C2 -d -r1.25 -r1.26 *** MHomeDef 19 Mar 2007 08:11:34 -0000 1.25 --- MHomeDef 23 Mar 2007 11:03:43 -0000 1.26 *************** *** 71,76 **** typedef wamas::platform::utils::SmartPtr<%(Identifier)s> SmartPtr; ! %(Identifier)s(); ! %(Identifier)s(::Components::AssemblyFactory::SmartPtr assembly_factory); virtual ~%(Identifier)s(); --- 71,77 ---- typedef wamas::platform::utils::SmartPtr<%(Identifier)s> SmartPtr; ! %(Identifier)s(%(LocalNamespace)sCCM_%(Identifier)s* lh); ! %(Identifier)s(%(LocalNamespace)sCCM_%(Identifier)s* lh, ! ::Components::AssemblyFactory::SmartPtr assembly_factory); virtual ~%(Identifier)s(); *************** *** 103,122 **** %(CloseNamespace)s - //============================================================================== - // entry point - //============================================================================== - - ::Components::CCMHome::SmartPtr - create_%(AbsoluteLocalHomeName)sAdapter(); - - int - deploy_%(AbsoluteLocalHomeName)s(char* name); - - int - deploy_with_assembly_%(AbsoluteLocalHomeName)s(char* name, - ::Components::AssemblyFactory::SmartPtr assembly_factory); - - int undeploy_%(AbsoluteLocalHomeName)s(char* name); - #endif --- 104,107 ---- *************** *** 137,141 **** #include "%(Identifier)s_gen.h" - #include <%(AbsoluteLocalHomeName)s_entry.h> %(OpenNamespace)s --- 122,125 ---- *************** *** 147,162 **** //============================================================================== ! %(Identifier)s::%(Identifier)s() { - local_home = dynamic_cast< %(LocalNamespace)sCCM_%(Identifier)s*>( - create_%(AbsoluteLocalHomeName)s()); - assembly_factory = ::Components::AssemblyFactory::SmartPtr(); } ! %(Identifier)s::%(Identifier)s(::Components::AssemblyFactory::SmartPtr f) ! : assembly_factory(f) { - local_home = dynamic_cast< %(LocalNamespace)sCCM_%(Identifier)s*>( - create_%(AbsoluteLocalHomeName)s()); } --- 131,144 ---- //============================================================================== ! %(Identifier)s::%(Identifier)s(%(LocalNamespace)sCCM_%(Identifier)s* lh) ! : local_home(lh) { } ! %(Identifier)s::%(Identifier)s(%(LocalNamespace)sCCM_%(Identifier)s* lh, ! ::Components::AssemblyFactory::SmartPtr f) ! : local_home(lh) ! , assembly_factory(f) { } *************** *** 229,283 **** - //============================================================================== - // entry point - //============================================================================== - - ::Components::CCMHome::SmartPtr - create_%(AbsoluteLocalHomeName)sAdapter() - { - ::Components::CCMHome::SmartPtr - ret(new %(LocalNamespace)s%(Identifier)s()); - return ret; - } - - int - deploy_%(AbsoluteLocalHomeName)s(char* name) - { - return deploy_with_assembly_%(AbsoluteLocalHomeName)s( - name, ::Components::AssemblyFactory::SmartPtr()); - } - - int - deploy_with_assembly_%(AbsoluteLocalHomeName)s(char* name, - ::Components::AssemblyFactory::SmartPtr assembly_factory) - { - try - { - ::Components::CCMHome::SmartPtr - ret(new %(LocalNamespace)s%(Identifier)s(assembly_factory)); - ::Components::HomeFinder::Instance()->register_home(ret, name); - } - catch(...) - { - return -1; - } - return 0; - } - - int - undeploy_%(AbsoluteLocalHomeName)s(char* name) - { - try - { - ::Components::HomeFinder::Instance()->unregister_home(name); - } - catch(...) - { - return -1; - } - return 0; - } - - <<<<<<<SPLIT>>>>>>> --- 211,214 ---- *************** *** 354,367 **** */ ! //============================================================================== ! // %(Identifier)s - entry point ! //============================================================================== #ifndef __HOME_%(PreprocIdentifier)s_ENTRY__H__ #define __HOME_%(PreprocIdentifier)s_ENTRY__H__ ::Components::HomeExecutorBase* create_%(AbsoluteLocalHomeName)s(); #endif // __HOME_%(PreprocIdentifier)s_ENTRY__H__ --- 285,314 ---- */ ! /***************************************************************************** ! * ! * %(Identifier)s - entry point ! * ! \****************************************************************************/ #ifndef __HOME_%(PreprocIdentifier)s_ENTRY__H__ #define __HOME_%(PreprocIdentifier)s_ENTRY__H__ + #include <Components/ccmtools.h> + ::Components::HomeExecutorBase* create_%(AbsoluteLocalHomeName)s(); + ::Components::CCMHome::SmartPtr + create_%(AbsoluteLocalHomeName)sAdapter(); + + int + deploy_with_assembly_%(AbsoluteLocalHomeName)s(char* name, + ::Components::AssemblyFactory::SmartPtr assembly_factory); + + /// deploy the implementation of %(Identifier)s + int deploy_%(AbsoluteLocalHomeName)s(char* name); + + int undeploy_%(AbsoluteLocalHomeName)s(char* name); + #endif // __HOME_%(PreprocIdentifier)s_ENTRY__H__ *************** *** 430,433 **** --- 377,381 ---- #include <iostream> + #include <%(HomeInclude)s_gen.h> #include "%(ComponentType)s_impl.h" #include "%(Identifier)s_impl.h" *************** *** 476,477 **** --- 424,476 ---- } + + + ::Components::CCMHome::SmartPtr + create_%(AbsoluteLocalHomeName)sAdapter() + { + ::Components::CCMHome::SmartPtr + ret(new %(LocalNamespace)s%(Identifier)s( + new %(LocalNamespace)s%(Identifier)s_impl())); + return ret; + } + + int + deploy_%(AbsoluteLocalHomeName)s(char* name) + { + return deploy_with_assembly_%(AbsoluteLocalHomeName)s( + name, ::Components::AssemblyFactory::SmartPtr()); + } + + int + deploy_with_assembly_%(AbsoluteLocalHomeName)s(char* name, + ::Components::AssemblyFactory::SmartPtr assembly_factory) + { + try + { + ::Components::CCMHome::SmartPtr + ret(new %(LocalNamespace)s%(Identifier)s( + new %(LocalNamespace)s%(Identifier)s_impl(), + assembly_factory)); + ::Components::HomeFinder::Instance()->register_home(ret, name); + } + catch(...) + { + return -1; + } + return 0; + } + + int + undeploy_%(AbsoluteLocalHomeName)s(char* name) + { + try + { + ::Components::HomeFinder::Instance()->unregister_home(name); + } + catch(...) + { + return -1; + } + return 0; + } + |