[asterisk-scf-commits] asterisk-scf/release/slice.git branch "master" updated.
Commits to the Asterisk SCF project code repositories
asterisk-scf-commits at lists.digium.com
Fri Sep 30 12:44:38 CDT 2011
branch "master" has been updated
via 11fde89592c2d13346d7322b8d3591f2f104c5b0 (commit)
from 28ab66a1d742596f1b35030bf48e8b4a85a64b4a (commit)
Summary of changes:
.../SessionCommunicationsExtensionPointsIf.ice | 60 ++++++++++++++++++++
.../SessionCommunicationsIf.ice | 6 +-
2 files changed, 63 insertions(+), 3 deletions(-)
mode change 100644 => 100755 slice/AsteriskSCF/SessionCommunications/SessionCommunicationsExtensionPointsIf.ice
- Log -----------------------------------------------------------------
commit 11fde89592c2d13346d7322b8d3591f2f104c5b0
Author: Brent Eagles <beagles at digium.com>
Date: Fri Sep 30 15:12:53 2011 -0230
Bridge creation extension point support.
diff --git a/slice/AsteriskSCF/SessionCommunications/SessionCommunicationsExtensionPointsIf.ice b/slice/AsteriskSCF/SessionCommunications/SessionCommunicationsExtensionPointsIf.ice
old mode 100644
new mode 100755
index 0ddc97b..107d129
--- a/slice/AsteriskSCF/SessionCommunications/SessionCommunicationsExtensionPointsIf.ice
+++ b/slice/AsteriskSCF/SessionCommunications/SessionCommunicationsExtensionPointsIf.ice
@@ -80,6 +80,66 @@ module V1
void clearSessionCreationHooks();
};
+ const string BridgeCreationExtensionPointCategory = "BridgeCreationHook";
+ const string BridgeCreationExtensionPointFacet = "BridgeCreationHook";
+
+ /**
+ * Data provided to bridge creation hooks.
+ */
+ class BridgeCreationHookData
+ {
+ /**
+ * The proxy for the bridge being created. This can be overridden by a hook to set up an
+ * interposed bridge proxy.
+ */
+ AsteriskSCF::SessionCommunications::V1::Bridge* bridge;
+
+ /**
+ * The established listeners for a bridge. This can be used to modify the default listeners
+ * added to a bridge when it is created.
+ */
+ AsteriskSCF::SessionCommunications::V1::BridgeListenerSeq listeners;
+
+ /**
+ * Modify the cookies set on the bridge when it is created.
+ **/
+ AsteriskSCF::SessionCommunications::V1::BridgeCookies cookies;
+
+ /**
+ * Modify the sessions initially added to a bridge.
+ */
+ AsteriskSCF::SessionCommunications::V1::SessionSeq initialSessions;
+ };
+
+ interface BridgeCreationHook
+ {
+ /**
+ * Interpose some operations when creating bridge objects.
+ */
+ AsteriskSCF::System::Hook::V1::HookResult execute(BridgeCreationHookData originalData,
+ out BridgeCreationHookData alteredData);
+ };
+
+ sequence<BridgeCreationHook*> BridgeCreationHookSeq;
+
+ interface BridgeCreationExtensionPoint
+ {
+ /**
+ * Add a new bridge creation hook. Matches on ID and refreshes the proxy if an object with
+ * that ID has already been added.
+ */
+ void addHook(BridgeCreationHook* hook);
+
+ /**
+ * Remove the bridge creation hook that matches the proxy provided.
+ */
+ void removeHook(BridgeCreationHook* hook);
+
+ /**
+ * Clear all registered hooks.
+ */
+ void clearHooks();
+ };
}; /* End of module V1 */
}; /* End of module ExtensionPoints */
}; /* End of module SessionCommunications */
diff --git a/slice/AsteriskSCF/SessionCommunications/SessionCommunicationsIf.ice b/slice/AsteriskSCF/SessionCommunications/SessionCommunicationsIf.ice
index d30ea24..c83931d 100644
--- a/slice/AsteriskSCF/SessionCommunications/SessionCommunicationsIf.ice
+++ b/slice/AsteriskSCF/SessionCommunications/SessionCommunicationsIf.ice
@@ -925,8 +925,6 @@ module V1
* stored on a Bridge and retrieved via the BridgeListener
* interface when events occur on that Bridge.
*
- * @see BridgeListener
- *
* @see BridgeCookies
*/
unsliceable class BridgeCookie
@@ -937,7 +935,7 @@ module V1
* A sequence of bridge cookies, allowing for a variable number of them
* to be passed in a single operation or event.
*
- * @see BridgeListener
+ * @see BridgeCookie
*/
sequence <BridgeCookie> BridgeCookies;
@@ -1130,6 +1128,8 @@ module V1
void stopping(Bridge* sessionBridge, BridgeCookies cookies);
};
+ sequence<BridgeListener*> BridgeListenerSeq;
+
/**
* Forward declaration of the BridgeManagerListener interface.
*/
-----------------------------------------------------------------------
--
asterisk-scf/release/slice.git
More information about the asterisk-scf-commits
mailing list