[asterisk-commits] file: branch 1.4 r66398 -
/branches/1.4/doc/datastores.txt
asterisk-commits at lists.digium.com
asterisk-commits at lists.digium.com
Tue May 29 08:43:16 MST 2007
Author: file
Date: Tue May 29 10:43:16 2007
New Revision: 66398
URL: http://svn.digium.com/view/asterisk?view=rev&rev=66398
Log:
Update datastores documentation. (issue #9801 reported by mnicholson)
Modified:
branches/1.4/doc/datastores.txt
Modified: branches/1.4/doc/datastores.txt
URL: http://svn.digium.com/view/asterisk/branches/1.4/doc/datastores.txt?view=diff&rev=66398&r1=66397&r2=66398
==============================================================================
--- branches/1.4/doc/datastores.txt (original)
+++ branches/1.4/doc/datastores.txt Tue May 29 10:43:16 2007
@@ -22,9 +22,8 @@
1. Use ast_channel_datastore_alloc function to return a pre-allocated structure
Ex: datastore = ast_channel_datastore_alloc(&example_datastore, "uid");
This function takes two arguments: (datastore info structure, uid)
-2. Attach data and destroy callback to pre-allocated structure.
+2. Attach data to pre-allocated structure.
Ex: datastore->data = mysillydata;
- datastore->destroy = callback_destroy;
3. Add datastore to the channel
Ex: ast_channel_datastore_add(chan, datastore);
This function takes two arguments: (pointer to channel, pointer to data store)
@@ -33,13 +32,12 @@
void callback_destroy(void *data)
{
- free(data);
+ ast_free(data);
}
struct ast_datastore *datastore = NULL;
datastore = ast_channel_datastore_alloc(&example_datastore, NULL);
datastore->data = mysillydata;
-datastore->destroy = callback_destroy;
ast_channel_datastore_add(chan, datastore);
NOTE: Because you're passing a pointer to a function in your module, you'll want to include
@@ -53,11 +51,8 @@
2. Remove the data store from the channel
Ex: ast_channel_datastore_remove(chan, datastore);
This function takes two arguments: (pointer to channel, pointer to data store)
-3. If we want to now, free the memory or do stuff to the data on the data store
- If we do then we will want to unset the data and callback
- Ex: datastore->data = NULL;
- datastore->destroy = NULL;
-4. Free the data store
+3. If we want to now do stuff to the data on the data store
+4. Free the data store (this will call the destroy call back)
Ex: ast_channel_datastore_free(datastore);
This function takes one argument: (pointer to data store)
More information about the asterisk-commits
mailing list