[Rock-dev] orocos.rb re-factoring: Nameservice and Orocos::TaskContext

Alexander Duda Alexander.Duda at dfki.de
Thu Oct 25 15:49:02 CEST 2012


Hi,

I am going to push the following changes to orocos.rb master on Monday 
morning.
The documentation on the web will be updated on Monday as well.

Greets Alex

CHANGES:
* default Orocos::NameService instance which is bundling all added name 
services
     Orocos.name_service

* default Orocos::CORBA::NameService instance which is added to 
Orocos.name_service
     Orocos::CORBA.name_service

* support for n CORBA and Avahi name services
     Orocos.name_service << Orocos::CORBA::NameServoce.new("host1")
     Orocos.name_service << Orocos::CORBA::NameServoce.new("host2")
     Orocos.name_service << Orocos::Avhi::NameService.new("_robot._tcp")
     Orocos.name_service << Orocos::Avhi::NameService.new("_robot2._tcp")

* CORBA default name service can now be changed at any time
     Orocos::CORBA.name_service.ip = "host3"

* support for name spaces
     task = Orocos.name_service.get("host1/my_task")

* 'new' operator for TaskContext which is completely independent from 
the name service
     task = Orocos::TaskContext.new(ior)

* supports for bind/unbind operation for Avahi and CORBA name services
     task = Orocos.name_service.get("my_task")
     ns = Orocos::CORBA::NameService.new("host1")
     ns.bind(task)
     ns.unbind(task) #will not work for Avahi if published by another 
process

* support for getting ior from CORBA name services
     ior = Orocos::CORBA.name_service.ior("my_task")

DEPRECATIONS:
Nameservice --> Orocos::NameService
Nameservice::CORBA --> Orocos::CORBA::NameService
Nameservice::AVAHI --> Orocos::Avahi::NameService
Nameservice::LOCAL --> Orocos::Local::NameService
Nameservice.enabled?
Nameservice.enable(CORBA) -> Orocos::CORBA::NameService.new
Nameservice.enable(AVAHI) -> Orocos::Avahi::NameService.new
Nameservice.enable(LOCAL) -> Orocos::Local::NameService.new
Nameservice.reset -> Orocos.name_service.clean
NameService.resolve --> Orocos.name_service.get
NameService.available? --> Orocos.name_service.initialized?

TaskContext.get --> Orocos.name_service.get
TaskContext.find_one_running --> Orocos.name_service.find_one_running
TaskContext.each_task --> Orocos.name_service.each_task
TaskContext.get (:provides)--> Orocos.name_service.get_provides

REMOVED
TaskContext.find_running
Nameservice.resolve_by_type
Nameservice.options

-- 
Dipl.-Ing. Alexander Duda
Unterwasserrobotik

DFKI Bremen
Robotics Innovation Center
Robert-Hooke-Straße 5
28359 Bremen, Germany

Phone: +49 (0)421 178-456620
Fax:   +49 (0)421 178-454150
E-Mail: alexander.duda at dfki.de

Weitere Informationen: http://www.dfki.de/robotik
-----------------------------------------------------------------------
Deutsches Forschungszentrum fuer Kuenstliche Intelligenz GmbH
Firmensitz: Trippstadter Straße 122, D-67663 Kaiserslautern
Geschaeftsfuehrung: Prof. Dr. Dr. h.c. mult. Wolfgang Wahlster
(Vorsitzender) Dr. Walter Olthoff
Vorsitzender des Aufsichtsrats: Prof. Dr. h.c. Hans A. Aukes
Amtsgericht Kaiserslautern, HRB 2313
Sitz der Gesellschaft: Kaiserslautern (HRB 2313)
USt-Id.Nr.:    DE 148646973
Steuernummer:  19/673/0060/3



More information about the Rock-dev mailing list