summaryrefslogtreecommitdiff
path: root/pjsip/src
diff options
context:
space:
mode:
authorBenny Prijono <bennylp@teluu.com>2007-11-23 03:47:50 +0000
committerBenny Prijono <bennylp@teluu.com>2007-11-23 03:47:50 +0000
commitc0632bb3950869b6e77bd3a84486ada7f6b1f33d (patch)
tree1f032072bad2d7cc3b252c3315dfc35cfdd11b9a /pjsip/src
parentb937bb4be79174728bd73af4f48a98af9e382061 (diff)
Ticket #424: Added API to retrieve number of transactions and dialogs (thanks Sergey Bakulin)
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@1594 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'pjsip/src')
-rw-r--r--pjsip/src/pjsip/sip_transaction.c19
-rw-r--r--pjsip/src/pjsip/sip_ua_layer.c18
2 files changed, 37 insertions, 0 deletions
diff --git a/pjsip/src/pjsip/sip_transaction.c b/pjsip/src/pjsip/sip_transaction.c
index dbbccf60..61f85cef 100644
--- a/pjsip/src/pjsip/sip_transaction.c
+++ b/pjsip/src/pjsip/sip_transaction.c
@@ -581,6 +581,25 @@ static void mod_tsx_layer_unregister_tsx( pjsip_transaction *tsx)
/*
+ * Retrieve the current number of transactions currently registered in
+ * the hash table.
+ */
+PJ_DEF(unsigned) pjsip_tsx_layer_get_tsx_count(void)
+{
+ unsigned count;
+
+ /* Are we registered? */
+ PJ_ASSERT_RETURN(mod_tsx_layer.endpt!=NULL, 0);
+
+ pj_mutex_lock(mod_tsx_layer.mutex);
+ count = pj_hash_count(mod_tsx_layer.htable);
+ pj_mutex_unlock(mod_tsx_layer.mutex);
+
+ return count;
+}
+
+
+/*
* Find a transaction.
*/
PJ_DEF(pjsip_transaction*) pjsip_tsx_layer_find_tsx( const pj_str_t *key,
diff --git a/pjsip/src/pjsip/sip_ua_layer.c b/pjsip/src/pjsip/sip_ua_layer.c
index c345b011..19cccbd0 100644
--- a/pjsip/src/pjsip/sip_ua_layer.c
+++ b/pjsip/src/pjsip/sip_ua_layer.c
@@ -412,6 +412,24 @@ PJ_DEF(pjsip_dialog*) pjsip_tsx_get_dlg( pjsip_transaction *tsx )
}
+/*
+ * Retrieve the current number of dialog-set currently registered
+ * in the hash table.
+ */
+PJ_DEF(unsigned) pjsip_ua_get_dlg_set_count(void)
+{
+ unsigned count;
+
+ PJ_ASSERT_RETURN(mod_ua.endpt, 0);
+
+ pj_mutex_lock(mod_ua.mutex);
+ count = pj_hash_count(mod_ua.dlg_table);
+ pj_mutex_unlock(mod_ua.mutex);
+
+ return count;
+}
+
+
/*
* Find a dialog.
*/