#include <services.hh>
Inheritance diagram for Services:
A services object contains a list of hypercards to services. It is intended to be used as a registry of interesting VOS application running on a host, such as virtual worlds, GUI clients, chat clients, mp3 jukeboxes, print servers, etc to make it easy to discover these services.
The LocalServices object will typically be used by a service list daemon to hold a list of services for one host. When queried, the daemon will search its local list as well as perform a broadcast query to the local network, or into some other service discovery system such as SSDP or MDNS. An application searching for services can simply connect to this default Services for its local host (the default URL is vop://localhost:4231/services) and perform the query via the query() method in the RemoteServices interface. An application wishing to register a service does the same, using the registerService() method. As a shortcut, the static method registerServiceWithDefault() can be used as well.
The hypercards in a services list will have, as co-types, a list of the types of the objects that the hypercard links to prefixed with "linktype=". For example, a hypercard in a services directory points to a A3DL virtual world. The hypercard itself will have as types both "misc:hypercard" and "linktype=a3dl:world". Note that the latter is a perfectly legal type! This enables the user to do searches on a particular type string to look for particular services, but doesn't actually cause an application to try to load the hypercard as that type.
Definition at line 74 of file services.hh.
|
Constructor.
Definition at line 39 of file services.cc. |
|
Destructor.
Definition at line 46 of file services.cc. |
|
Implemented in LocalServices, and RemoteServices. |
|
Definition at line 57 of file services.cc. Referenced by registerServiceWithDefault(). |
|
Get default access control policy.
Definition at line 53 of file services.cc. |
|
Return type string ("misc:services").
Definition at line 196 of file services.cc. |
|
Implemented in LocalServices, and RemoteServices. |
|
Register Extenders.
Definition at line 201 of file services.cc. |
|
Definition at line 83 of file services.cc. |
|
Definition at line 77 of file services.cc. |
|
Definition at line 72 of file services.cc. |
|
Set default access control policy.
Definition at line 50 of file services.cc. |
|
Definition at line 79 of file services.hh. Referenced by getPropertyAccessControl(), LocalServices::initialize(), LocalServices::LocalServices(), Services(), and setPropertyAccessControl(). |
|
Definition at line 34 of file services.cc. Referenced by getDefaultServicesDir(). |
|
Definition at line 82 of file services.hh. Referenced by RemoteServices::endQuery(), RemoteServices::handleAdvertisement(), LocalServices::handleEndQuery(), LocalServices::handleQuery(), ServiceListenerSiteWrapper::notifyObjectExcise(), and RemoteServices::query(). |
|
Referenced by getDefaultServicesDir(), and setDefaultServiceDir(). |