void registerExtension(String method, ServiceExtensionHandler handler(String method, Map<String, String> parameters))

Register a ServiceExtensionHandler that will be invoked in this isolate for method. NOTE: Service protocol extensions must be registered in each isolate and users of extensions must always specify a target isolate.

Source

void registerExtension(String method, ServiceExtensionHandler handler) {
  if (method is! String) {
    throw new ArgumentError.value(method,
                                  'method',
                                  'Must be a String');
  }
  if (_lookupExtension(method) != null) {
    throw new ArgumentError('Extension already registered: $method');
  }
  if (handler is! ServiceExtensionHandler) {
    throw new ArgumentError.value(handler,
                                  'handler',
                                  'Must be a ServiceExtensionHandler');
  }
  _registerExtension(method, handler);
}