-
Notifications
You must be signed in to change notification settings - Fork 93
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fixed problems with introspection, the path names and structure were not #140
base: master
Are you sure you want to change the base?
Conversation
correct and didn't allow for proper recursion. Now the path names for all child nodes have names relative to the path specified in the query, and are provided with a null node placeholder entry so they appear in the xml, and the caller can then recursively scan as desired. The code could probably be made more efficient with fewer checks for exceptions.
Hi @dashxdr ! I think I understand the issue, but could you provide step-by-step example where old code would fail? |
Here is an example, it mimics the ofono dbus interface (just a little). It can be placed in the node-dbus/test directory.
When you run it you can test functionality with this:
To verify some instrospection functionality do this first:
NOW to cause the failure, add the --recurse onto the query:
... etc With my version we get this for both queries, which is what we want:
|
One other note, you need to make sure your permissions are set to allow queries on the system dbus, I'm a little hazy on the details. Here is my /etc/dbus-1/system.d/ofono.conf file if it helps...
|
thanks! I'll try to have a look soon ( there is a huge backlog on this project I never had enough time to action ) |
correct and didn't allow for proper recursion. Now the path names for all
child nodes have names relative to the path specified in the query, and are
provided with a null node placeholder entry so they appear in the xml, and
the caller can then recursively scan as desired.
The code could probably be made more efficient with fewer checks for
exceptions.