Skip to content
This repository has been archived by the owner on Nov 3, 2021. It is now read-only.

Refactor pool external object #1660

Open
wants to merge 2 commits into
base: develop
Choose a base branch
from

Conversation

catunlock
Copy link

Working on #1053 we found that full name of the Pool Tango object (External measurement group channel. i.e: /sys/tg_test/1/ampli) full name is wrongly discovered.

The ways of retrieving the tango database host between PyTango and TangoNameValidators are inconsistent. For instance, inside a docker container PyTango returns <docker_network>.<docker_container_name>: while using a Taurus validator returns the host and port specified by the TANGO_HOST environment variable. Leading to names like: "tango://sardana_network. sardana_dev_databaseds:10000/sys/tg_test/1/ampli" instead of "tango://databaseds:10000/sys/tg_test/1/ampli".

The use of Taurus validators instead of accessing PyTango database host and port API for discovery the full name of a PoolTangoObject fixes the problem.

PoolExternalObject requires many kwargs describing the object identity, this forces the API users to discover those kwargs using Taurus validators. Since PoolTangoObject can do this discovery by itself, we decided to change the PoolExternalObject API and we adapted its usage in Sardana code base.

The ways of retrieving the tango database host between PyTango and TangoNameValidators are inconsistent. For instance, inside a docker container PyTango returns <docker_network>.<docker_container_name>:<port> while using a Taurus validator returns the host and port specified by the TANGO_HOST environment variable.

Use Taurus validators instead of accessing PyTango database host and port API for discovery the full name of a PoolTangoObject.
PoolExternalObject requires many kwargs describing the object identity,
this forces the API users to discover those kwargs using Taurus validators.
Since PoolTangoObject can do this discovery by itself, we decided to
change the PoolExternalObject API and we adapted its usage in
Sardana code base.
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant