Skip to content

Api improvements

  • Refactor WpSession and WpEndpoint to use the proxy model without WpExported
  • remove WpExported
  • refactor object manager and the whole code around registry handling, so that locally created proxies are associated with globals. This means that when you create a WpProxy subclass somewhere in the code, let's say
WpNode *node = wp_node_new_from_factory (...);
wp_proxy_augment (node, WP_PROXY_FEATURE_BOUND, ...);

then all object managers that are interested in a WpNode will receive a pointer to that same WpNode instead of receiving another one that gets created through the registry "global" event.

The same happens with implementation proxies... so some code is doing:

WpImplNode *node = wp_impl_node_new (...);
wp_proxy_augment (node, WP_PROXY_FEATURE_BOUND, ...);

then all object managers that are interested in a WpNode will receive a pointer to that WpImplNode. This avoids doing round-trips through the server and allows client code to handle the implementation object directly as if it was a proxy to a remote object.

Merge request reports