[openrtm-commit:01803] r793 - trunk/OpenRTM-aist-Java/jp.go.aist.rtm.RTC/src/jp/go/aist/rtm/RTC
openrtm @ openrtm.org
openrtm @ openrtm.org
2016年 3月 5日 (土) 16:07:22 JST
Author: win-ei
Date: 2016-03-05 16:07:22 +0900 (Sat, 05 Mar 2016)
New Revision: 793
Modified:
trunk/OpenRTM-aist-Java/jp.go.aist.rtm.RTC/src/jp/go/aist/rtm/RTC/NamingManager.java
Log:
NamingManager can register a reference of Port to naming service. refs #3391
Modified: trunk/OpenRTM-aist-Java/jp.go.aist.rtm.RTC/src/jp/go/aist/rtm/RTC/NamingManager.java
===================================================================
--- trunk/OpenRTM-aist-Java/jp.go.aist.rtm.RTC/src/jp/go/aist/rtm/RTC/NamingManager.java 2016-03-05 06:08:59 UTC (rev 792)
+++ trunk/OpenRTM-aist-Java/jp.go.aist.rtm.RTC/src/jp/go/aist/rtm/RTC/NamingManager.java 2016-03-05 07:07:22 UTC (rev 793)
@@ -314,6 +314,7 @@
}
unregisterCompName(name);
unregisterMgrName(name);
+ unregisterPortName(name);
}
}
@@ -351,9 +352,20 @@
unbindObject(names.elementAt(i));
}
}
+ synchronized (m_portNames) {
+ Vector<String> names = new Vector<String>();
+ // unbindObject modifiy m_portNames
+ for (int i=0, len=m_portNames.size(); i < len; ++i) {
+ names.add(m_portNames.elementAt(i).name);
+ }
+ for (int i=0; i < names.size(); ++i) {
+ unbindObject(names.elementAt(i));
+ }
+ }
}
/**
+ *
* {@.ja バインドされている全てのオブジェクトを取得。}
* {@.en Get all bound objects}
*
@@ -374,6 +386,15 @@
return comps;
}
+ /**
+ *
+ * {@.ja 登録したネームサービスのリストを取得する}
+ * {@.en Get the list of registered NameServices.}
+ *
+ * @return
+ * {@.ja ネームサービスのリスト}
+ * {@.en List of NameService}
+ */
public Vector<NamingService> getNameServices() {
return m_names;
}
@@ -583,7 +604,24 @@
return;
}
+ /**
+ * {@.ja NameServer に登録するポートの設定解除}
+ * {@.en releases setting in the port registered with NameServer.}
+ *
+ * @param name
+ * {@.ja 設定解除対象ポートの名称}
+ * {@.en portname)
+ *
+ */
protected void unregisterPortName(final String name) {
+ int len = m_portNames.size();
+ for( int intIdx=0; intIdx < len; ++intIdx ) {
+ if( m_portNames.elementAt(intIdx).name.equals(name)) {
+ m_portNames.remove(m_portNames.elementAt(intIdx));
+ return;
+ }
+ }
+ return;
}
/**
* {@.ja NameServer に登録するManagerServantの設定解除。}
More information about the openrtm-commit
mailing list