ORCA Actor Registry XMLRPC Query Interface

Overview

ORCA Actor registry presents two interfaces: a web-based (.jsp) accessible by traditional browsers and an XMLRPC accessible by programmatic clients and tools. The web interface and the XMLRPC interface return similar results, however the XMLRPC interface will only return valid actors (those that have detectable heartbeat and that are accessible on publicly available IP addresses). The web interface will show all actors that have had heartbeats within the past 12 hours.

Actors in the registry can be in a number of states based on the information they provided and how recent their heartbeat was detected. Valid actors have publicly accessible SOAP URLs and have 'ticked' in the past two minutes. Verified actors are those that have been administratively verified by RENCI staff. Only valid and verified actors are allowed to connect to other actors in production ORCA infrastructure.

XMLRPC Query Interface

The registry XMLRPC service resides on https://geni.renci.org:12443/registry/ (for secure operations) or http://geni.renci.org:12080/registry/ for unsecured operations. It uses a self-signed certificate with the following MD5 fingerprint:

Certificate fingerprint (MD5): 78:B6:1A:F0:6C:F8:C7:0F:C0:05:10:13:06:79:E0:AC

Queriers can use either interface. The choice of secured or unsecured interface depends on whether the reply needs to be authoritative. In the case of secured interface the caller has the opportunity to validate the registry server certificate and treat the answer as authoritative.

Each XMLRPC method name must be prepended with 'registryService.' before executing. All query calls return some forms of a Map<String, Map<String, String>>, which is organized by actor GUID strings and each map entry has standard fields (with string names) containing actor information. 'essentialOnly' flag indicates whether you want to receive only the basic information about an actor (name, guid, location and certificate) or extended (including policy and control classes it uses, and full and abstracted resource information in NDL-OWL).

The following query methods are available:

  • Map<String, Map<String, String>> getActors(boolean essentialOnly) - get all valid actors
  • Map<String, Map<String, String>> getActorsOtherThan(List<String> guids, boolean essentialOnly) - get all valid actors other than those whose guids are on the list.
  • Map<String, Map<String, String>> getActorsVerifiedOtherThan(List<String> guids, boolean essentialOnly) - get only valid verified actors that are not on the provided list
  • Map<String, Map<String, String>> getBrokers(boolean essentialOnly) - get all valid brokers
  • Map<String, Map<String, String>> getSMs(boolean essentialOnly) - get all valid Service/Slice Managers
  • Map<String, Map<String, String>> getAMs(boolean essentialOnly) - get all valid Site Authorities
  • String getRegistryVersion() - get the version of this registry