agent: Add function to retrieve the current component state
authorOlivier Crête <olivier.crete@collabora.com>
Sun, 5 Oct 2014 17:34:22 +0000 (13:34 -0400)
committerOlivier Crête <olivier.crete@collabora.com>
Thu, 9 Oct 2014 20:26:07 +0000 (16:26 -0400)
agent/agent.c
agent/agent.h
nice/libnice.sym

index a11f55b..d17f3d2 100644 (file)
@@ -5866,3 +5866,20 @@ agent_socket_send (NiceSocket *sock, const NiceAddress *addr, gsize len,
     return ret;
   }
 }
+
+NiceComponentState
+nice_agent_get_component_state (NiceAgent *agent,
+    guint stream_id, guint component_id)
+{
+  NiceComponentState state = NICE_COMPONENT_STATE_FAILED;
+  Component *component;
+
+  agent_lock ();
+
+  if (agent_find_component (agent, stream_id, component_id, NULL, &component))
+    state = component->state;
+
+  agent_unlock ();
+
+  return state;
+}
index da59b45..501933f 100644 (file)
@@ -1487,6 +1487,24 @@ nice_agent_forget_relays (NiceAgent *agent,
     guint stream_id,
     guint component_id);
 
+/**
+ * nice_agent_get_component_state:
+ * @agent: The #NiceAgent Object
+ * @stream_id: The ID of the stream
+ * @component_id: The ID of the component
+ *
+ * Retrieves the current state of a component.
+ *
+ * Returns: the #NiceComponentState of the component and
+ * %NICE_COMPONENT_STATE_FAILED if the component was invalid.
+ *
+ * Since: 0.1.7
+ */
+NiceComponentState
+nice_agent_get_component_state (NiceAgent *agent,
+    guint stream_id,
+    guint component_id);
+
 G_END_DECLS
 
 #endif /* _AGENT_H */
index 117d00a..9a7cc79 100644 (file)
@@ -27,6 +27,7 @@ nice_agent_gather_candidates
 nice_agent_generate_local_candidate_sdp
 nice_agent_generate_local_sdp
 nice_agent_generate_local_stream_sdp
+nice_agent_get_component_state
 nice_agent_get_default_local_candidate
 nice_agent_get_io_stream
 nice_agent_get_local_candidates