public void _register(Registrations r, String key, String caller_id, String caller_api, String service_api = null) { bool changed = false; NodeRef node_ref = _register_node_api(caller_id, caller_api, ref changed); node_ref.add(r.type, key); if (changed) { publishers.unregister_all(caller_id); subscribers.unregister_all(caller_id); services.unregister_all(caller_id); param_subscribers.unregister_all(caller_id); } r.register(key, caller_id, caller_api, service_api); }