[openrtm-commit:02586] r816 - trunk/OpenRTM-aist-Python/OpenRTM_aist
openrtm @ openrtm.org
openrtm @ openrtm.org
2017年 4月 20日 (木) 14:23:00 JST
Author: miyamoto
Date: 2017-04-20 14:23:00 +0900 (Thu, 20 Apr 2017)
New Revision: 816
Modified:
trunk/OpenRTM-aist-Python/OpenRTM_aist/Manager.py
trunk/OpenRTM-aist-Python/OpenRTM_aist/ManagerServant.py
Log:
[compat,bugfix,->RELENG_1_2] fixed bug.
Modified: trunk/OpenRTM-aist-Python/OpenRTM_aist/Manager.py
===================================================================
--- trunk/OpenRTM-aist-Python/OpenRTM_aist/Manager.py 2017-04-18 03:14:52 UTC (rev 815)
+++ trunk/OpenRTM-aist-Python/OpenRTM_aist/Manager.py 2017-04-20 05:23:00 UTC (rev 816)
@@ -318,6 +318,7 @@
self._listeners.manager_.preShutdown()
self.shutdownTimer()
self.shutdownComponents()
+ self.shutdownManagerServant()
self.shutdownNaming()
self.shutdownORB()
self.shutdownManager()
@@ -1415,6 +1416,23 @@
return
+ ##
+ # @if jp
+ # @brief Managerサーバントの終了処理(未実装)
+ #
+ # Managerサーバントを終了する
+ #
+ #
+ # @param self
+ #
+ # @else
+ #
+ # @endif
+ def shutdownManagerServant(self):
+ self._rtcout.RTC_TRACE("Manager.shutdownManagerServant()")
+ self._mgrservant.exit()
+ self._mgrservant = None
+ return
##
# @if jp
Modified: trunk/OpenRTM-aist-Python/OpenRTM_aist/ManagerServant.py
===================================================================
--- trunk/OpenRTM-aist-Python/OpenRTM_aist/ManagerServant.py 2017-04-18 03:14:52 UTC (rev 815)
+++ trunk/OpenRTM-aist-Python/OpenRTM_aist/ManagerServant.py 2017-04-20 05:23:00 UTC (rev 816)
@@ -97,6 +97,21 @@
#
# @endif
def __del__(self):
+ pass
+
+
+
+ ##
+ # @if jp
+ #
+ # @brief 終了関数
+ #
+ # @else
+ #
+ # @brief
+ #
+ # @endif
+ def exit(self):
guard_master = OpenRTM_aist.ScopedLock(self._masterMutex)
for i in range(len(self._masters)):
try:
@@ -123,7 +138,6 @@
self._objref._release()
return
-
##
# @if jp
# @brief モジュールをロードする
@@ -306,8 +320,13 @@
- module_name = module_name.split("&")[0]
+ #module_name = module_name.split("&")[0]
+ module_name = [module_name]
+ self.get_parameter_by_modulename("manager_address",module_name)
+ self.get_parameter_by_modulename("manager_name",module_name)
+ module_name = module_name[0]
+
if self._isMaster:
guard = OpenRTM_aist.ScopedLock(self._slaveMutex)
for slave in self._slaves:
@@ -1057,7 +1076,11 @@
endpos = arg.find('&', pos + 1)
if endpos == -1:
- paramstr = arg[(pos + 1):]
+ endpos = arg.find('?', pos + 1)
+ if endpos == -1:
+ paramstr = arg[(pos + 1):]
+ else:
+ paramstr = arg[(pos + 1): endpos]
else:
paramstr = arg[(pos + 1): endpos]
self._rtcout.RTC_VERBOSE("%s arg: %s", (param_name, paramstr))
openrtm-commit メーリングリストの案内