object-manager: remove deprecated API

This commit is contained in:
George Kiagiadakis
2020-05-14 16:24:34 +03:00
parent 1e4a79c80e
commit 5eecc5b68a
22 changed files with 44 additions and 206 deletions

View File

@@ -110,12 +110,12 @@ wp_endpoint_ensure_feature_streams (WpEndpoint * self, guint32 bound_id)
priv->streams_om = wp_object_manager_new (); priv->streams_om = wp_object_manager_new ();
/* proxy endpoint stream -> check for endpoint.id in global properties */ /* proxy endpoint stream -> check for endpoint.id in global properties */
wp_object_manager_add_interest_1 (priv->streams_om, wp_object_manager_add_interest (priv->streams_om,
WP_TYPE_ENDPOINT_STREAM, WP_TYPE_ENDPOINT_STREAM,
WP_CONSTRAINT_TYPE_PW_GLOBAL_PROPERTY, PW_KEY_ENDPOINT_ID, "=u", bound_id, WP_CONSTRAINT_TYPE_PW_GLOBAL_PROPERTY, PW_KEY_ENDPOINT_ID, "=u", bound_id,
NULL); NULL);
/* impl endpoint stream -> check for endpoint.id in standard properties */ /* impl endpoint stream -> check for endpoint.id in standard properties */
wp_object_manager_add_interest_1 (priv->streams_om, wp_object_manager_add_interest (priv->streams_om,
WP_TYPE_IMPL_ENDPOINT_STREAM, WP_TYPE_IMPL_ENDPOINT_STREAM,
WP_CONSTRAINT_TYPE_PW_PROPERTY, PW_KEY_ENDPOINT_ID, "=u", bound_id, WP_CONSTRAINT_TYPE_PW_PROPERTY, PW_KEY_ENDPOINT_ID, "=u", bound_id,
NULL); NULL);

View File

@@ -102,7 +102,7 @@ wp_node_ensure_feature_ports (WpNode * self, guint32 bound_id)
bound_id); bound_id);
priv->ports_om = wp_object_manager_new (); priv->ports_om = wp_object_manager_new ();
wp_object_manager_add_interest_1 (priv->ports_om, wp_object_manager_add_interest (priv->ports_om,
WP_TYPE_PORT, WP_TYPE_PORT,
WP_CONSTRAINT_TYPE_PW_GLOBAL_PROPERTY, PW_KEY_NODE_ID, "=u", bound_id, WP_CONSTRAINT_TYPE_PW_GLOBAL_PROPERTY, PW_KEY_NODE_ID, "=u", bound_id,
NULL); NULL);

View File

@@ -225,108 +225,6 @@ wp_object_manager_is_installed (WpObjectManager * self)
* wp_object_manager_add_interest: * wp_object_manager_add_interest:
* @self: the object manager * @self: the object manager
* @gtype: the #GType of the objects that we are declaring interest in * @gtype: the #GType of the objects that we are declaring interest in
* @constraints: (nullable): a variant of type "aa{sv}" (array of dictionaries)
* with additional constraints on the managed objects
* @wanted_features: a set of features that will automatically be enabled
* on managed objects, if they are subclasses of #WpProxy
*
* Declares interest in a certain kind of object. Interest consists of a #GType
* that the object must be an ancestor of (g_type_is_a must match) and
* optionally, a set of additional constraints on certain properties of the
* object.
*
* The @constraints #GVariant should contain an array of dictionaries ("aa{sv}").
* Each dictionary must have the following fields:
* - "type" (i): The constraint type, #WpObjectManagerConstraintType
* - "name" (s): The name of the constrained property
* - "value" (s): The value that the property must have
*
* For example, to discover all the 'node' objects in the PipeWire graph,
* the following code can be used:
* |[
* WpObjectManager *om = wp_object_manager_new ();
* wp_object_manager_add_interest (om, WP_TYPE_NODE, NULL,
* WP_PROXY_FEATURES_STANDARD);
* wp_core_install_object_manager (core, om);
* WpIterator *nodes_it = wp_object_manager_iterate (om);
* ]|
*
* and to discover all 'port' objects that belong to a specific 'node':
* |[
* WpObjectManager *om = wp_object_manager_new ();
*
* GVariantBuilder b;
* g_variant_builder_init (&b, G_VARIANT_TYPE ("aa{sv}"));
* g_variant_builder_open (&b, G_VARIANT_TYPE_VARDICT);
* g_variant_builder_add (&b, "{sv}", "type",
* g_variant_new_int32 (WP_OBJECT_MANAGER_CONSTRAINT_PW_GLOBAL_PROPERTY));
* g_variant_builder_add (&b, "{sv}", "name",
* g_variant_new_string (PW_KEY_NODE_ID));
* g_variant_builder_add (&b, "{sv}", "value",
* g_variant_new_string (node_id));
* g_variant_builder_close (&b);
*
* wp_object_manager_add_interest (om, WP_TYPE_PORT,
* g_variant_builder_end (&b),
* WP_PROXY_FEATURES_STANDARD);
*
* wp_core_install_object_manager (core, om);
* WpIterator *ports_it = wp_object_manager_iterate (om);
* ]|
*/
void
wp_object_manager_add_interest (WpObjectManager *self,
GType gtype, GVariant * constraints,
WpProxyFeatures wanted_features)
{
g_autoptr (WpObjectInterest) interest = NULL;
g_autoptr (GVariant) c = NULL;
GVariantIter iter;
WpObjectManagerConstraintType ctype;
const gchar *prop_name, *prop_value;
g_return_if_fail (WP_IS_OBJECT_MANAGER (self));
g_return_if_fail (constraints == NULL ||
g_variant_is_of_type (constraints, G_VARIANT_TYPE ("aa{sv}")));
interest = wp_object_interest_new_type (gtype);
if (constraints) {
g_variant_iter_init (&iter, constraints);
while (g_variant_iter_next (&iter, "@a{sv}", &c)) {
GVariantDict dict = G_VARIANT_DICT_INIT (c);
if (!g_variant_dict_lookup (&dict, "type", "i", &ctype)) {
g_critical ("Invalid object manager constraint without a type");
return;
}
if (!g_variant_dict_lookup (&dict, "name", "&s", &prop_name)) {
g_critical ("property constraint is without a property name");
return;
}
if (!g_variant_dict_lookup (&dict, "value", "&s", &prop_value)) {
g_critical ("property constraint is without a property value");
return;
}
wp_object_interest_add_constraint (interest, (WpConstraintType) ctype,
prop_name, WP_CONSTRAINT_VERB_EQUALS, g_variant_new_string (prop_value));
g_variant_dict_clear (&dict);
g_clear_pointer (&c, g_variant_unref);
}
}
wp_object_manager_add_interest_full (self, g_steal_pointer (&interest));
if (wanted_features != 0)
wp_object_manager_request_proxy_features (self, gtype, wanted_features);
}
/**
* wp_object_manager_add_interest_1:
* @self: the object manager
* @gtype: the #GType of the objects that we are declaring interest in
* @...: a list of constraints, terminated by %NULL * @...: a list of constraints, terminated by %NULL
* *
* Equivalent to: * Equivalent to:
@@ -339,7 +237,7 @@ wp_object_manager_add_interest (WpObjectManager *self,
* documented in wp_object_interest_new(). * documented in wp_object_interest_new().
*/ */
void void
wp_object_manager_add_interest_1 (WpObjectManager * self, GType gtype, ...) wp_object_manager_add_interest (WpObjectManager * self, GType gtype, ...)
{ {
WpObjectInterest *interest; WpObjectInterest *interest;
va_list args; va_list args;
@@ -588,42 +486,6 @@ wp_object_manager_iterate_filtered_full (WpObjectManager * self,
return it; return it;
} }
static gboolean
find_proxy_fold_func (const GValue *item, GValue *ret, gpointer data)
{
if (g_type_is_a (G_VALUE_TYPE (item), WP_TYPE_PROXY)) {
WpProxy *proxy = g_value_get_object (item);
if (wp_proxy_get_bound_id (proxy) == GPOINTER_TO_UINT (data)) {
g_value_init_from_instance (ret, proxy);
return FALSE;
}
}
return TRUE;
}
/**
* wp_object_manager_find_proxy:
* @self: the object manager
* @bound_id: the bound id of the proxy to get
*
* Searches the managed objects to find a #WpProxy that has the given @bound_id
*
* Returns: (transfer full) (nullable): the proxy that has the given @bound_id,
* or %NULL if there is no such proxy managed by this object manager
*/
WpProxy *
wp_object_manager_find_proxy (WpObjectManager *self, guint bound_id)
{
g_autoptr (WpIterator) it = wp_object_manager_iterate (self);
g_auto (GValue) ret = G_VALUE_INIT;
if (!wp_iterator_fold (it, find_proxy_fold_func, &ret,
GUINT_TO_POINTER (bound_id)))
return g_value_dup_object (&ret);
return NULL;
}
/** /**
* wp_object_manager_lookup: * wp_object_manager_lookup:
* @self: the object manager * @self: the object manager

View File

@@ -16,23 +16,6 @@
G_BEGIN_DECLS G_BEGIN_DECLS
/**
* WpObjectManagerConstraintType:
* @WP_OBJECT_MANAGER_CONSTRAINT_PW_GLOBAL_PROPERTY: constraint applies
* to a PipeWire global property of an object (the ones returned by
* wp_proxy_get_global_properties())
* @WP_OBJECT_MANAGER_CONSTRAINT_PW_PROPERTY: constraint applies
* to a PipeWire property of the object (the ones returned by
* wp_proxy_get_properties())
* @WP_OBJECT_MANAGER_CONSTRAINT_G_PROPERTY: constraint applies to a #GObject
* property of the managed object
*/
typedef enum {
WP_OBJECT_MANAGER_CONSTRAINT_PW_GLOBAL_PROPERTY = WP_CONSTRAINT_TYPE_PW_GLOBAL_PROPERTY,
WP_OBJECT_MANAGER_CONSTRAINT_PW_PROPERTY,
WP_OBJECT_MANAGER_CONSTRAINT_G_PROPERTY,
} WpObjectManagerConstraintType G_GNUC_DEPRECATED;
/** /**
* WP_TYPE_OBJECT_MANAGER: * WP_TYPE_OBJECT_MANAGER:
* *
@@ -52,12 +35,8 @@ gboolean wp_object_manager_is_installed (WpObjectManager * self);
/* interest */ /* interest */
WP_API G_DEPRECATED
void wp_object_manager_add_interest (WpObjectManager *self,
GType gtype, GVariant * constraints, WpProxyFeatures wanted_features);
WP_API WP_API
void wp_object_manager_add_interest_1 (WpObjectManager * self, void wp_object_manager_add_interest (WpObjectManager * self,
GType gtype, ...) G_GNUC_NULL_TERMINATED; GType gtype, ...) G_GNUC_NULL_TERMINATED;
WP_API WP_API
@@ -86,9 +65,6 @@ WP_API
WpIterator * wp_object_manager_iterate_filtered_full (WpObjectManager * self, WpIterator * wp_object_manager_iterate_filtered_full (WpObjectManager * self,
WpObjectInterest * interest); WpObjectInterest * interest);
WP_API G_DEPRECATED
WpProxy * wp_object_manager_find_proxy (WpObjectManager *self, guint bound_id);
WP_API WP_API
gpointer wp_object_manager_lookup (WpObjectManager * self, gpointer wp_object_manager_lookup (WpObjectManager * self,
GType gtype, ...) G_GNUC_NULL_TERMINATED; GType gtype, ...) G_GNUC_NULL_TERMINATED;

View File

@@ -129,12 +129,12 @@ wp_session_ensure_features_endpoints_links (WpSession * self, guint32 bound_id)
priv->endpoints_om = wp_object_manager_new (); priv->endpoints_om = wp_object_manager_new ();
/* proxy endpoint -> check for session.id in global properties */ /* proxy endpoint -> check for session.id in global properties */
wp_object_manager_add_interest_1 (priv->endpoints_om, wp_object_manager_add_interest (priv->endpoints_om,
WP_TYPE_ENDPOINT, WP_TYPE_ENDPOINT,
WP_CONSTRAINT_TYPE_PW_GLOBAL_PROPERTY, PW_KEY_SESSION_ID, "=u", bound_id, WP_CONSTRAINT_TYPE_PW_GLOBAL_PROPERTY, PW_KEY_SESSION_ID, "=u", bound_id,
NULL); NULL);
/* impl endpoint -> check for session.id in standard properties */ /* impl endpoint -> check for session.id in standard properties */
wp_object_manager_add_interest_1 (priv->endpoints_om, wp_object_manager_add_interest (priv->endpoints_om,
WP_TYPE_IMPL_ENDPOINT, WP_TYPE_IMPL_ENDPOINT,
WP_CONSTRAINT_TYPE_PW_PROPERTY, PW_KEY_SESSION_ID, "=u", bound_id, WP_CONSTRAINT_TYPE_PW_PROPERTY, PW_KEY_SESSION_ID, "=u", bound_id,
NULL); NULL);
@@ -156,12 +156,12 @@ wp_session_ensure_features_endpoints_links (WpSession * self, guint32 bound_id)
priv->links_om = wp_object_manager_new (); priv->links_om = wp_object_manager_new ();
/* proxy link -> check for session.id in global properties */ /* proxy link -> check for session.id in global properties */
wp_object_manager_add_interest_1 (priv->links_om, wp_object_manager_add_interest (priv->links_om,
WP_TYPE_ENDPOINT_LINK, WP_TYPE_ENDPOINT_LINK,
WP_CONSTRAINT_TYPE_PW_GLOBAL_PROPERTY, PW_KEY_SESSION_ID, "=u", bound_id, WP_CONSTRAINT_TYPE_PW_GLOBAL_PROPERTY, PW_KEY_SESSION_ID, "=u", bound_id,
NULL); NULL);
/* impl link -> check for session.id in standard properties */ /* impl link -> check for session.id in standard properties */
wp_object_manager_add_interest_1 (priv->links_om, wp_object_manager_add_interest (priv->links_om,
WP_TYPE_IMPL_ENDPOINT_LINK, WP_TYPE_IMPL_ENDPOINT_LINK,
WP_CONSTRAINT_TYPE_PW_PROPERTY, PW_KEY_SESSION_ID, "=u", bound_id, WP_CONSTRAINT_TYPE_PW_PROPERTY, PW_KEY_SESSION_ID, "=u", bound_id,
NULL); NULL);

View File

@@ -33,7 +33,7 @@ wireplumber__module_init (WpModule * module, WpCore * core, GVariant * args)
WpObjectManager *om; WpObjectManager *om;
om = wp_object_manager_new (); om = wp_object_manager_new ();
wp_object_manager_add_interest_1 (om, WP_TYPE_CLIENT, NULL); wp_object_manager_add_interest (om, WP_TYPE_CLIENT, NULL);
wp_object_manager_request_proxy_features (om, WP_TYPE_CLIENT, wp_object_manager_request_proxy_features (om, WP_TYPE_CLIENT,
WP_PROXY_FEATURES_STANDARD); WP_PROXY_FEATURES_STANDARD);

View File

@@ -240,14 +240,14 @@ wp_config_endpoint_context_activate (WpPlugin * plugin)
/* Install the session object manager */ /* Install the session object manager */
self->sessions_om = wp_object_manager_new (); self->sessions_om = wp_object_manager_new ();
wp_object_manager_add_interest_1 (self->sessions_om, WP_TYPE_SESSION, NULL); wp_object_manager_add_interest (self->sessions_om, WP_TYPE_SESSION, NULL);
wp_object_manager_request_proxy_features (self->sessions_om, WP_TYPE_SESSION, wp_object_manager_request_proxy_features (self->sessions_om, WP_TYPE_SESSION,
WP_SESSION_FEATURES_STANDARD); WP_SESSION_FEATURES_STANDARD);
wp_core_install_object_manager (core, self->sessions_om); wp_core_install_object_manager (core, self->sessions_om);
/* Handle node-added signal and install the nodes object manager */ /* Handle node-added signal and install the nodes object manager */
self->nodes_om = wp_object_manager_new (); self->nodes_om = wp_object_manager_new ();
wp_object_manager_add_interest_1 (self->nodes_om, WP_TYPE_NODE, NULL); wp_object_manager_add_interest (self->nodes_om, WP_TYPE_NODE, NULL);
wp_object_manager_request_proxy_features (self->nodes_om, WP_TYPE_NODE, wp_object_manager_request_proxy_features (self->nodes_om, WP_TYPE_NODE,
WP_PROXY_FEATURES_STANDARD); WP_PROXY_FEATURES_STANDARD);
g_signal_connect_object (self->nodes_om, "object-added", g_signal_connect_object (self->nodes_om, "object-added",

View File

@@ -324,7 +324,7 @@ wp_config_policy_context_activate (WpPlugin * plugin)
/* Install the session object manager */ /* Install the session object manager */
self->sessions_om = wp_object_manager_new (); self->sessions_om = wp_object_manager_new ();
wp_object_manager_add_interest_1 (self->sessions_om, WP_TYPE_SESSION, NULL); wp_object_manager_add_interest (self->sessions_om, WP_TYPE_SESSION, NULL);
wp_object_manager_request_proxy_features (self->sessions_om, WP_TYPE_SESSION, wp_object_manager_request_proxy_features (self->sessions_om, WP_TYPE_SESSION,
WP_SESSION_FEATURES_STANDARD); WP_SESSION_FEATURES_STANDARD);
g_signal_connect_object (self->sessions_om, "object-added", g_signal_connect_object (self->sessions_om, "object-added",

View File

@@ -168,7 +168,7 @@ wp_config_static_nodes_context_init (WpConfigStaticNodesContext *self)
self->devices_om = wp_object_manager_new (); self->devices_om = wp_object_manager_new ();
/* Only handle devices */ /* Only handle devices */
wp_object_manager_add_interest_1 (self->devices_om, WP_TYPE_DEVICE, NULL); wp_object_manager_add_interest (self->devices_om, WP_TYPE_DEVICE, NULL);
wp_object_manager_request_proxy_features (self->devices_om, WP_TYPE_DEVICE, wp_object_manager_request_proxy_features (self->devices_om, WP_TYPE_DEVICE,
WP_PROXY_FEATURE_INFO); WP_PROXY_FEATURE_INFO);
g_signal_connect (self->devices_om, "object-added", g_signal_connect (self->devices_om, "object-added",

View File

@@ -82,7 +82,7 @@ activate_plugins (struct WpDaemonData *d)
g_autoptr (WpObjectManager) om = NULL; g_autoptr (WpObjectManager) om = NULL;
om = wp_object_manager_new (); om = wp_object_manager_new ();
wp_object_manager_add_interest_1 (om, WP_TYPE_PLUGIN, NULL); wp_object_manager_add_interest (om, WP_TYPE_PLUGIN, NULL);
g_signal_connect (om, "object-added", G_CALLBACK (on_plugin_added), d); g_signal_connect (om, "object-added", G_CALLBACK (on_plugin_added), d);
wp_core_install_object_manager (d->core, om); wp_core_install_object_manager (d->core, om);

View File

@@ -218,7 +218,7 @@ start_endpoints_provider (AppData * d)
/* for example purposes, we pretend we don't have access to the data set by /* for example purposes, we pretend we don't have access to the data set by
start_nodes_provider(), i.e. d->audiotestsrc & d->alsasink */ start_nodes_provider(), i.e. d->audiotestsrc & d->alsasink */
d->nodes_om = wp_object_manager_new (); d->nodes_om = wp_object_manager_new ();
wp_object_manager_add_interest_1 (d->nodes_om, WP_TYPE_NODE, NULL); wp_object_manager_add_interest (d->nodes_om, WP_TYPE_NODE, NULL);
wp_object_manager_request_proxy_features (d->nodes_om, WP_TYPE_NODE, wp_object_manager_request_proxy_features (d->nodes_om, WP_TYPE_NODE,
WP_PROXY_FEATURES_STANDARD); WP_PROXY_FEATURES_STANDARD);

View File

@@ -132,7 +132,7 @@ simple (TestConfigEndpointFixture *f, gconstpointer data)
/* Find the plugin context and handle the endpoint-created callback */ /* Find the plugin context and handle the endpoint-created callback */
g_autoptr (WpObjectManager) om = wp_object_manager_new (); g_autoptr (WpObjectManager) om = wp_object_manager_new ();
wp_object_manager_add_interest_1 (om, WP_TYPE_PLUGIN, NULL); wp_object_manager_add_interest (om, WP_TYPE_PLUGIN, NULL);
wp_core_install_object_manager (f->base.core, om); wp_core_install_object_manager (f->base.core, om);
g_autoptr (WpPlugin) ctx = wp_object_manager_lookup (om, WP_TYPE_PLUGIN, NULL); g_autoptr (WpPlugin) ctx = wp_object_manager_lookup (om, WP_TYPE_PLUGIN, NULL);
@@ -171,7 +171,7 @@ streams (TestConfigEndpointFixture *f, gconstpointer data)
/* Find the plugin context and handle the endpoint-created callback */ /* Find the plugin context and handle the endpoint-created callback */
g_autoptr (WpObjectManager) om = wp_object_manager_new (); g_autoptr (WpObjectManager) om = wp_object_manager_new ();
wp_object_manager_add_interest_1 (om, WP_TYPE_PLUGIN, NULL); wp_object_manager_add_interest (om, WP_TYPE_PLUGIN, NULL);
wp_core_install_object_manager (f->base.core, om); wp_core_install_object_manager (f->base.core, om);
g_autoptr (WpPlugin) ctx = wp_object_manager_lookup (om, WP_TYPE_PLUGIN, NULL); g_autoptr (WpPlugin) ctx = wp_object_manager_lookup (om, WP_TYPE_PLUGIN, NULL);

View File

@@ -232,7 +232,7 @@ playback (TestFixture *f, gconstpointer data)
/* Find the plugin context and handle the link-activated callback */ /* Find the plugin context and handle the link-activated callback */
g_autoptr (WpObjectManager) om = wp_object_manager_new (); g_autoptr (WpObjectManager) om = wp_object_manager_new ();
wp_object_manager_add_interest_1 (om, WP_TYPE_PLUGIN, NULL); wp_object_manager_add_interest (om, WP_TYPE_PLUGIN, NULL);
wp_core_install_object_manager (f->base.core, om); wp_core_install_object_manager (f->base.core, om);
g_autoptr (WpPlugin) ctx = wp_object_manager_lookup (om, WP_TYPE_PLUGIN, NULL); g_autoptr (WpPlugin) ctx = wp_object_manager_lookup (om, WP_TYPE_PLUGIN, NULL);
g_assert_nonnull (ctx); g_assert_nonnull (ctx);

View File

@@ -58,7 +58,7 @@ basic (TestConfigStaticNodesFixture *f, gconstpointer data)
/* Find the plugin context and handle the node-created callback */ /* Find the plugin context and handle the node-created callback */
g_autoptr (WpObjectManager) om = wp_object_manager_new (); g_autoptr (WpObjectManager) om = wp_object_manager_new ();
wp_object_manager_add_interest_1 (om, WP_TYPE_PLUGIN, NULL); wp_object_manager_add_interest (om, WP_TYPE_PLUGIN, NULL);
wp_core_install_object_manager (f->base.core, om); wp_core_install_object_manager (f->base.core, om);
g_autoptr (WpPlugin) ctx = wp_object_manager_lookup (om, WP_TYPE_PLUGIN, NULL); g_autoptr (WpPlugin) ctx = wp_object_manager_lookup (om, WP_TYPE_PLUGIN, NULL);
g_assert_nonnull (ctx); g_assert_nonnull (ctx);

View File

@@ -238,7 +238,7 @@ test_si_audio_softdsp_endpoint_export (TestFixture * f, gconstpointer user_data)
/* find self_client, to be used for verifying endpoint.client.id */ /* find self_client, to be used for verifying endpoint.client.id */
clients_om = wp_object_manager_new (); clients_om = wp_object_manager_new ();
wp_object_manager_add_interest_1 (clients_om, WP_TYPE_CLIENT, NULL); wp_object_manager_add_interest (clients_om, WP_TYPE_CLIENT, NULL);
wp_object_manager_request_proxy_features (clients_om, wp_object_manager_request_proxy_features (clients_om,
WP_TYPE_CLIENT, WP_PROXY_FEATURE_BOUND); WP_TYPE_CLIENT, WP_PROXY_FEATURE_BOUND);
g_signal_connect_swapped (clients_om, "objects-changed", g_signal_connect_swapped (clients_om, "objects-changed",

View File

@@ -235,7 +235,7 @@ test_si_simple_node_endpoint_export (TestFixture * f, gconstpointer user_data)
/* find self_client, to be used for verifying endpoint.client.id */ /* find self_client, to be used for verifying endpoint.client.id */
clients_om = wp_object_manager_new (); clients_om = wp_object_manager_new ();
wp_object_manager_add_interest_1 (clients_om, WP_TYPE_CLIENT, NULL); wp_object_manager_add_interest (clients_om, WP_TYPE_CLIENT, NULL);
wp_object_manager_request_proxy_features (clients_om, wp_object_manager_request_proxy_features (clients_om,
WP_TYPE_CLIENT, WP_PROXY_FEATURE_BOUND); WP_TYPE_CLIENT, WP_PROXY_FEATURE_BOUND);
g_signal_connect_swapped (clients_om, "objects-changed", g_signal_connect_swapped (clients_om, "objects-changed",

View File

@@ -153,7 +153,7 @@ test_si_standard_link_main (TestFixture * f, gconstpointer user_data)
/* find the "audio" session from the client */ /* find the "audio" session from the client */
{ {
g_autoptr (WpObjectManager) om = wp_object_manager_new (); g_autoptr (WpObjectManager) om = wp_object_manager_new ();
wp_object_manager_add_interest_1 (om, WP_TYPE_SESSION, NULL); wp_object_manager_add_interest (om, WP_TYPE_SESSION, NULL);
wp_object_manager_request_proxy_features (om, WP_TYPE_SESSION, wp_object_manager_request_proxy_features (om, WP_TYPE_SESSION,
WP_SESSION_FEATURES_STANDARD); WP_SESSION_FEATURES_STANDARD);
test_ensure_object_manager_is_installed (om, f->base.client_core, test_ensure_object_manager_is_installed (om, f->base.client_core,
@@ -246,9 +246,9 @@ test_si_standard_link_main (TestFixture * f, gconstpointer user_data)
g_autoptr (WpLink) link = NULL; g_autoptr (WpLink) link = NULL;
g_autoptr (WpObjectManager) om = wp_object_manager_new (); g_autoptr (WpObjectManager) om = wp_object_manager_new ();
wp_object_manager_add_interest_1 (om, WP_TYPE_NODE, NULL); wp_object_manager_add_interest (om, WP_TYPE_NODE, NULL);
wp_object_manager_add_interest_1 (om, WP_TYPE_PORT, NULL); wp_object_manager_add_interest (om, WP_TYPE_PORT, NULL);
wp_object_manager_add_interest_1 (om, WP_TYPE_LINK, NULL); wp_object_manager_add_interest (om, WP_TYPE_LINK, NULL);
wp_object_manager_request_proxy_features (om, WP_TYPE_PROXY, wp_object_manager_request_proxy_features (om, WP_TYPE_PROXY,
WP_PROXY_FEATURES_STANDARD); WP_PROXY_FEATURES_STANDARD);
test_ensure_object_manager_is_installed (om, f->base.client_core, test_ensure_object_manager_is_installed (om, f->base.client_core,
@@ -299,9 +299,9 @@ test_si_standard_link_main (TestFixture * f, gconstpointer user_data)
g_autoptr (WpLink) link = NULL; g_autoptr (WpLink) link = NULL;
g_autoptr (WpObjectManager) om = wp_object_manager_new (); g_autoptr (WpObjectManager) om = wp_object_manager_new ();
wp_object_manager_add_interest_1 (om, WP_TYPE_NODE, NULL); wp_object_manager_add_interest (om, WP_TYPE_NODE, NULL);
wp_object_manager_add_interest_1 (om, WP_TYPE_PORT, NULL); wp_object_manager_add_interest (om, WP_TYPE_PORT, NULL);
wp_object_manager_add_interest_1 (om, WP_TYPE_LINK, NULL); wp_object_manager_add_interest (om, WP_TYPE_LINK, NULL);
wp_object_manager_request_proxy_features (om, WP_TYPE_PROXY, wp_object_manager_request_proxy_features (om, WP_TYPE_PROXY,
WP_PROXY_FEATURES_STANDARD); WP_PROXY_FEATURES_STANDARD);
test_ensure_object_manager_is_installed (om, f->base.client_core, test_ensure_object_manager_is_installed (om, f->base.client_core,
@@ -341,7 +341,7 @@ test_si_standard_link_destroy (TestFixture * f, gconstpointer user_data)
/* find the "audio" session from the client */ /* find the "audio" session from the client */
{ {
g_autoptr (WpObjectManager) om = wp_object_manager_new (); g_autoptr (WpObjectManager) om = wp_object_manager_new ();
wp_object_manager_add_interest_1 (om, WP_TYPE_SESSION, NULL); wp_object_manager_add_interest (om, WP_TYPE_SESSION, NULL);
wp_object_manager_request_proxy_features (om, WP_TYPE_SESSION, wp_object_manager_request_proxy_features (om, WP_TYPE_SESSION,
WP_SESSION_FEATURES_STANDARD); WP_SESSION_FEATURES_STANDARD);
test_ensure_object_manager_is_installed (om, f->base.client_core, test_ensure_object_manager_is_installed (om, f->base.client_core,
@@ -415,7 +415,7 @@ test_si_standard_link_destroy (TestFixture * f, gconstpointer user_data)
{ {
g_autoptr (WpObjectManager) om = wp_object_manager_new (); g_autoptr (WpObjectManager) om = wp_object_manager_new ();
wp_object_manager_add_interest_1 (om, WP_TYPE_ENDPOINT_LINK, NULL); wp_object_manager_add_interest (om, WP_TYPE_ENDPOINT_LINK, NULL);
test_ensure_object_manager_is_installed (om, f->base.core, f->base.loop); test_ensure_object_manager_is_installed (om, f->base.core, f->base.loop);
g_assert_cmpuint (wp_object_manager_get_n_objects (om), ==, 0); g_assert_cmpuint (wp_object_manager_get_n_objects (om), ==, 0);

View File

@@ -54,7 +54,7 @@ test_core_server_disconnected (TestFixture *f, gconstpointer data)
g_signal_connect (f->om, "object-added", g_signal_connect (f->om, "object-added",
G_CALLBACK (expect_object_added), f); G_CALLBACK (expect_object_added), f);
wp_object_manager_add_interest_1 (f->om, WP_TYPE_CLIENT, NULL); wp_object_manager_add_interest (f->om, WP_TYPE_CLIENT, NULL);
wp_core_install_object_manager (f->base.core, f->om); wp_core_install_object_manager (f->base.core, f->om);
/* connect */ /* connect */
@@ -82,7 +82,7 @@ test_core_client_disconnected (TestFixture *f, gconstpointer data)
g_signal_connect (f->om, "object-added", g_signal_connect (f->om, "object-added",
G_CALLBACK (expect_object_added), f); G_CALLBACK (expect_object_added), f);
wp_object_manager_add_interest_1 (f->om, WP_TYPE_CLIENT, NULL); wp_object_manager_add_interest (f->om, WP_TYPE_CLIENT, NULL);
wp_core_install_object_manager (f->base.core, f->om); wp_core_install_object_manager (f->base.core, f->om);
/* connect */ /* connect */

View File

@@ -287,7 +287,7 @@ test_endpoint_basic (TestEndpointFixture *fixture, gconstpointer data)
(GCallback) test_endpoint_basic_impl_object_added, fixture); (GCallback) test_endpoint_basic_impl_object_added, fixture);
g_signal_connect (fixture->export_om, "object-removed", g_signal_connect (fixture->export_om, "object-removed",
(GCallback) test_endpoint_basic_impl_object_removed, fixture); (GCallback) test_endpoint_basic_impl_object_removed, fixture);
wp_object_manager_add_interest_1 (fixture->export_om, WP_TYPE_ENDPOINT, NULL); wp_object_manager_add_interest (fixture->export_om, WP_TYPE_ENDPOINT, NULL);
wp_object_manager_request_proxy_features (fixture->export_om, wp_object_manager_request_proxy_features (fixture->export_om,
WP_TYPE_ENDPOINT, WP_PROXY_FEATURES_STANDARD | WP_PROXY_FEATURE_CONTROLS); WP_TYPE_ENDPOINT, WP_PROXY_FEATURES_STANDARD | WP_PROXY_FEATURE_CONTROLS);
wp_core_install_object_manager (fixture->base.core, fixture->export_om); wp_core_install_object_manager (fixture->base.core, fixture->export_om);
@@ -297,7 +297,7 @@ test_endpoint_basic (TestEndpointFixture *fixture, gconstpointer data)
(GCallback) test_endpoint_basic_proxy_object_added, fixture); (GCallback) test_endpoint_basic_proxy_object_added, fixture);
g_signal_connect (fixture->proxy_om, "object-removed", g_signal_connect (fixture->proxy_om, "object-removed",
(GCallback) test_endpoint_basic_proxy_object_removed, fixture); (GCallback) test_endpoint_basic_proxy_object_removed, fixture);
wp_object_manager_add_interest_1 (fixture->proxy_om, WP_TYPE_ENDPOINT, NULL); wp_object_manager_add_interest (fixture->proxy_om, WP_TYPE_ENDPOINT, NULL);
wp_object_manager_request_proxy_features (fixture->proxy_om, WP_TYPE_ENDPOINT, wp_object_manager_request_proxy_features (fixture->proxy_om, WP_TYPE_ENDPOINT,
WP_PROXY_FEATURES_STANDARD | WP_PROXY_FEATURE_CONTROLS); WP_PROXY_FEATURES_STANDARD | WP_PROXY_FEATURE_CONTROLS);
wp_core_install_object_manager (fixture->base.client_core, fixture->proxy_om); wp_core_install_object_manager (fixture->base.client_core, fixture->proxy_om);

View File

@@ -83,7 +83,7 @@ test_proxy_basic (TestProxyFixture *fixture, gconstpointer data)
g_signal_connect (fixture->om, "object-added", g_signal_connect (fixture->om, "object-added",
(GCallback) test_proxy_basic_object_added, fixture); (GCallback) test_proxy_basic_object_added, fixture);
wp_object_manager_add_interest_1 (fixture->om, WP_TYPE_CLIENT, NULL); wp_object_manager_add_interest (fixture->om, WP_TYPE_CLIENT, NULL);
wp_core_install_object_manager (fixture->base.core, fixture->om); wp_core_install_object_manager (fixture->base.core, fixture->om);
g_main_loop_run (fixture->base.loop); g_main_loop_run (fixture->base.loop);
@@ -184,7 +184,7 @@ test_node (TestProxyFixture *fixture, gconstpointer data)
/* declare interest and set default features to be ready /* declare interest and set default features to be ready
when the signal is fired */ when the signal is fired */
wp_object_manager_add_interest_1 (fixture->om, WP_TYPE_NODE, NULL); wp_object_manager_add_interest (fixture->om, WP_TYPE_NODE, NULL);
wp_object_manager_request_proxy_features (fixture->om, WP_TYPE_NODE, wp_object_manager_request_proxy_features (fixture->om, WP_TYPE_NODE,
WP_PROXY_FEATURES_STANDARD); WP_PROXY_FEATURES_STANDARD);
wp_core_install_object_manager (fixture->base.core, fixture->om); wp_core_install_object_manager (fixture->base.core, fixture->om);

View File

@@ -150,7 +150,7 @@ test_session_basic (TestSessionFixture *fixture, gconstpointer data)
(GCallback) test_session_basic_exported_object_added, fixture); (GCallback) test_session_basic_exported_object_added, fixture);
g_signal_connect (fixture->export_om, "object-removed", g_signal_connect (fixture->export_om, "object-removed",
(GCallback) test_session_basic_exported_object_removed, fixture); (GCallback) test_session_basic_exported_object_removed, fixture);
wp_object_manager_add_interest_1 (fixture->export_om, wp_object_manager_add_interest (fixture->export_om,
WP_TYPE_IMPL_SESSION, NULL); WP_TYPE_IMPL_SESSION, NULL);
wp_object_manager_request_proxy_features (fixture->export_om, wp_object_manager_request_proxy_features (fixture->export_om,
WP_TYPE_IMPL_SESSION, WP_SESSION_FEATURES_STANDARD); WP_TYPE_IMPL_SESSION, WP_SESSION_FEATURES_STANDARD);
@@ -161,7 +161,7 @@ test_session_basic (TestSessionFixture *fixture, gconstpointer data)
(GCallback) test_session_basic_proxy_object_added, fixture); (GCallback) test_session_basic_proxy_object_added, fixture);
g_signal_connect (fixture->proxy_om, "object-removed", g_signal_connect (fixture->proxy_om, "object-removed",
(GCallback) test_session_basic_proxy_object_removed, fixture); (GCallback) test_session_basic_proxy_object_removed, fixture);
wp_object_manager_add_interest_1 (fixture->proxy_om, WP_TYPE_SESSION, NULL); wp_object_manager_add_interest (fixture->proxy_om, WP_TYPE_SESSION, NULL);
wp_object_manager_request_proxy_features (fixture->proxy_om, wp_object_manager_request_proxy_features (fixture->proxy_om,
WP_TYPE_SESSION, WP_SESSION_FEATURES_STANDARD); WP_TYPE_SESSION, WP_SESSION_FEATURES_STANDARD);
wp_core_install_object_manager (fixture->base.client_core, fixture->proxy_om); wp_core_install_object_manager (fixture->base.client_core, fixture->proxy_om);

View File

@@ -277,7 +277,7 @@ main (gint argc, gchar **argv)
/* ls-endpoints */ /* ls-endpoints */
if (argc == 2 && !g_strcmp0 (argv[1], "ls-endpoints")) { if (argc == 2 && !g_strcmp0 (argv[1], "ls-endpoints")) {
wp_object_manager_add_interest_1 (om, WP_TYPE_SESSION, NULL); wp_object_manager_add_interest (om, WP_TYPE_SESSION, NULL);
wp_object_manager_request_proxy_features (om, WP_TYPE_SESSION, wp_object_manager_request_proxy_features (om, WP_TYPE_SESSION,
WP_SESSION_FEATURES_STANDARD); WP_SESSION_FEATURES_STANDARD);
func = (GCallback) list_endpoints; func = (GCallback) list_endpoints;
@@ -291,8 +291,8 @@ main (gint argc, gchar **argv)
} }
data.params.set_default.id = id; data.params.set_default.id = id;
wp_object_manager_add_interest_1 (om, WP_TYPE_SESSION, NULL); wp_object_manager_add_interest (om, WP_TYPE_SESSION, NULL);
wp_object_manager_add_interest_1 (om, WP_TYPE_ENDPOINT, NULL); wp_object_manager_add_interest (om, WP_TYPE_ENDPOINT, NULL);
wp_object_manager_request_proxy_features (om, WP_TYPE_PROXY, wp_object_manager_request_proxy_features (om, WP_TYPE_PROXY,
WP_PROXY_FEATURES_STANDARD | WP_PROXY_FEATURE_CONTROLS); WP_PROXY_FEATURES_STANDARD | WP_PROXY_FEATURE_CONTROLS);
func = (GCallback) set_default; func = (GCallback) set_default;
@@ -308,14 +308,14 @@ main (gint argc, gchar **argv)
data.params.set_volume.id = id; data.params.set_volume.id = id;
data.params.set_volume.volume = volume; data.params.set_volume.volume = volume;
wp_object_manager_add_interest_1 (om, WP_TYPE_ENDPOINT, NULL); wp_object_manager_add_interest (om, WP_TYPE_ENDPOINT, NULL);
wp_object_manager_request_proxy_features (om, WP_TYPE_ENDPOINT, wp_object_manager_request_proxy_features (om, WP_TYPE_ENDPOINT,
WP_PROXY_FEATURES_STANDARD | WP_PROXY_FEATURE_CONTROLS); WP_PROXY_FEATURES_STANDARD | WP_PROXY_FEATURE_CONTROLS);
func = (GCallback) set_volume; func = (GCallback) set_volume;
} }
/* device-node-props */ /* device-node-props */
else if (argc == 2 && !g_strcmp0 (argv[1], "device-node-props")) { else if (argc == 2 && !g_strcmp0 (argv[1], "device-node-props")) {
wp_object_manager_add_interest_1 (om, WP_TYPE_NODE, NULL); wp_object_manager_add_interest (om, WP_TYPE_NODE, NULL);
wp_object_manager_request_proxy_features (om, WP_TYPE_NODE, wp_object_manager_request_proxy_features (om, WP_TYPE_NODE,
WP_PROXY_FEATURES_STANDARD); WP_PROXY_FEATURES_STANDARD);
func = (GCallback) device_node_props; func = (GCallback) device_node_props;