bridges: Remove reliance on stasis caching
authorGeorge Joseph <gjoseph@digium.com>
Wed, 19 Sep 2018 19:34:41 +0000 (13:34 -0600)
committerGeorge Joseph <gjoseph@digium.com>
Mon, 26 Nov 2018 21:30:02 +0000 (14:30 -0700)
commit3667c5e1d2570f20159b69f163c83e0a7110398a
treed5ad4948ffa3f9cdd85e851378e2d69619fc2a4f
parent4ca709768db9bafdfa83ee1cfc6cc0639f097857
bridges:  Remove reliance on stasis caching

* The bridging core no longer uses the stasis cache for bridge
  snapshots.  The latest bridge snapshot is now stored on the
  ast_bridge structure itself.

* The following APIs are no longer available since the stasis cache
  is no longer used:
    ast_bridge_topic_cached()
    ast_bridge_topic_all_cached()

* A topic pool is now used for individual bridge topics.

* The ast_bridge_cache() function was removed since there's no
  longer a separate container of snapshots.

* A new function "ast_bridges()" was created to retrieve the
  container of all bridges.  Users formerly calling
  ast_bridge_cache() can use the new function to iterate over
  bridges and retrieve the latest snapshot directly from the
  bridge.

* The ast_bridge_snapshot_get_latest() function was renamed to
  ast_bridge_get_snapshot_by_uniqueid().

* A new function "ast_bridge_get_snapshot()" was created to retrieve
  the bridge snapshot directly from the bridge structure.

* The ast_bridge_topic_all() function now returns a normal topic
  not a cached one so you can't use stasis cache functions on it
  either.

* The ast_bridge_snapshot_type() stasis message now has the
  ast_bridge_snapshot_update structure as it's data.  It contains
  the last snapshot and the new one.

* cdr, cel, manager and ari have been updated to use the new
  arrangement.

Change-Id: I7049b80efa88676ce5c4666f818fa18ad1985369
15 files changed:
CHANGES
UPGRADE.txt
apps/confbridge/confbridge_manager.c
include/asterisk/bridge.h
include/asterisk/stasis_bridges.h
main/Makefile
main/bridge.c
main/cdr.c
main/cel.c
main/manager_bridges.c
main/stasis_bridges.c
res/ari/resource_bridges.c
res/res_stasis.c
res/stasis/app.c
tests/test_cel.c