All calls may result in access/modifications to node registrations 
  dictionary, so be careful to guarantee appropriate thread-safeness.
  Data structure for storing a set of registrations (e.g. publications, 
  services). The underlying data storage is the same except for services, 
  which have the constraint that only one registration may be active for a 
  given key.
    |  |  | 
    |  |  | 
    |  |  | 
    |  |  | 
    |  |  | 
    | [str] |  | 
    |  | 
        
          | __contains__(self,
        key) Emulate mapping type for has_key()
 | source code |  | 
    | [(str, str),] | 
        
          | __getitem__(self,
        key) Returns:
      (caller_id, caller_api) for registered key, empty list if 
      registration is not valid
 | source code |  | 
    | bool |  | 
    | [str, [str]...] | 
        
          | get_state(self) Returns:
      state in getSystemState()-friendly format [ [key, 
      [callerId1...callerIdN]] ...
 | source code |  | 
    |  | 
        
          | register(self,
        key,
        caller_id,
        caller_api,
        service_api=None) Add caller_id into the map as a provider of the specified service 
      (key).
 | source code |  | 
    |  |  | 
    | code, msg, val | 
        
          | unregister(self,
        key,
        caller_id,
        caller_api,
        service_api=None) Remove caller_id from the map as a provider of the specified service 
      (key).
 | source code |  | 
  
    | Inherited from object:__delattr__,__format__,__getattribute__,__hash__,__new__,__reduce__,__reduce_ex__,__repr__,__setattr__,__sizeof__,__str__,__subclasshook__ |