diff options
author | Kai Koehne <kai.koehne@nokia.com> | 2010-09-22 19:03:57 (GMT) |
---|---|---|
committer | Jason McDonald <jason.mcdonald@nokia.com> | 2010-10-04 04:49:09 (GMT) |
commit | a506b183332f313a9a197d5fd7359153eb1728c8 (patch) | |
tree | 9b0a0d8a4b3ee2183aa2f94baecafd59ebc26f8d /tests/auto/qstate | |
parent | ac0eeca641214a60b13dcabb8749b92bad155fc8 (diff) | |
download | Qt-a506b183332f313a9a197d5fd7359153eb1728c8.zip Qt-a506b183332f313a9a197d5fd7359153eb1728c8.tar.gz Qt-a506b183332f313a9a197d5fd7359153eb1728c8.tar.bz2 |
Make QmlDebug protocol more robust
The protocol so far was client->server only. That is, there was no
sane way for a client to check whether a plugin on the server (service)
was available or not. E.g. calling Client::setEnabled(true) 'succeeded',
without a check whether there is actually a service to talk to.
The new protocol replaces this shortcoming by a service discovery
mechanism: Both client & service announce their available plugins at
handshake time, and later on if there are changes. The status is
reflected in Client::status() and Service::Status() , which are either
NotConnected - no network connection, or not registered properly
Unavailable - TCP/IP connection works, but no plugin with the same
name on the other side
Enabled - You can connect to plugin on other side
The status changes happen automatically (no setEnabled() anymore).
Furthermore a version ID was added to the handshake, so that we can
extend the protocol further in the future :)
(cherry picked from commit fd9771c29d401d88779ab7c5d7715c9ca41dd723)
Diffstat (limited to 'tests/auto/qstate')
0 files changed, 0 insertions, 0 deletions