summaryrefslogtreecommitdiff
path: root/include/asterisk/bucket.h
diff options
context:
space:
mode:
authorMatthew Jordan <mjordan@digium.com>2015-01-29 14:38:23 +0000
committerMatt Jordan <mjordan@digium.com>2015-07-12 20:44:16 -0500
commit3ea0d383963e2350e58d7103f3cd8b61a4cf6f8e (patch)
tree67f2821a7757b1752496d6e0b302e6166869d0d6 /include/asterisk/bucket.h
parent887945d410399f299bfc98eb226232ae42105112 (diff)
media cache: Add a core API and facade for a backend agnostic media cache
This patch adds a new API to the Asterisk core that acts as a media cache. The core API itself is mostly a thin wrapper around some bucket API provided implementation that itself acts as the mechanism of retrieval for media. The media cache API in the core provides the following: * A very thin in-memory cache of the active bucket_file items. Unlike a more traditional cache, it provides no expiration mechanisms. Most queries that hit the in-memory cache will also call into the bucket implementations as well. The bucket implementations are responsible for determining whether or not the active record is active and valid. This makes sense for the most likely implementation of a media cache backend, i.e., HTTP. The HTTP layer itself is the actual arbiter of whether or not a record is truly active; as such, the in-memory cache in the core has to defer to it. * The ability to create new items in the media cache from local resources. This allows for re-creation of items in the cache on restart. * Synchronization of items in the media cache to the AstDB. This also includes various pieces of important metadata. The API provides sufficient access that higher level APIs, such as the file or app APIs, do not have to worry about the semantics of the bucket APIs when needing to playback a resource. In addition, this patch provides unit tests for the media cache API. The unit tests use a fake bucket backend to verify correctness. Change-Id: I11227abbf14d8929eeb140ddd101dd5c3820391e
Diffstat (limited to 'include/asterisk/bucket.h')
-rw-r--r--include/asterisk/bucket.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/include/asterisk/bucket.h b/include/asterisk/bucket.h
index 4a27c3c18..90d976a86 100644
--- a/include/asterisk/bucket.h
+++ b/include/asterisk/bucket.h
@@ -23,7 +23,7 @@
*/
/*!
- * \page AstBucket Bucket File API
+ * \page bucket AstBucket Bucket File API
*
* Bucket is an API which provides directory and file access in a generic fashion. It is
* implemented as a thin wrapper over the sorcery data access layer API and is written in