[asterisk-scf-commits] asterisk-scf/integration/slice.git branch "session-decorator" updated.
Commits to the Asterisk SCF project code repositories
asterisk-scf-commits at lists.digium.com
Wed Jul 20 15:01:35 CDT 2011
branch "session-decorator" has been updated
via 5f3b94870308be2ea63413e2b1515efbb948ec4b (commit)
via f1052695108533af3df3e4ff0054a60dd968598b (commit)
from 57ab22659d7829b6b4ef6c4e966beab848273282 (commit)
Summary of changes:
.../SessionCommunicationsExtensionPointsIf.ice | 4 +-
.../SessionCommunicationsIf.ice | 80 ++++++++++++++++++-
2 files changed, 77 insertions(+), 7 deletions(-)
- Log -----------------------------------------------------------------
commit 5f3b94870308be2ea63413e2b1515efbb948ec4b
Author: Mark Michelson <mmichelson at digium.com>
Date: Wed Jul 20 14:31:40 2011 -0500
Make changes suggested by Kevin on CR-ASTSCF-115.
* decorateSession -> modifySession
* SessionDecorator -> SessionCreationHook
diff --git a/slice/AsteriskSCF/SessionCommunications/SessionCommunicationsExtensionPointsIf.ice b/slice/AsteriskSCF/SessionCommunications/SessionCommunicationsExtensionPointsIf.ice
index 9455692..cad714b 100644
--- a/slice/AsteriskSCF/SessionCommunications/SessionCommunicationsExtensionPointsIf.ice
+++ b/slice/AsteriskSCF/SessionCommunications/SessionCommunicationsExtensionPointsIf.ice
@@ -32,7 +32,7 @@ module ExtensionPoints
module V1
{
- const string SessionCreationHookLocatorCategory = "SessionDecorator";
+ const string SessionCreationHookLocatorCategory = "SessionCreationHook";
class SessionCreationHookData
{
@@ -58,7 +58,7 @@ module V1
* @param[out] replacementData Modified data for the session
* @return A HookResult indicating whether the hook was successful
*/
- AsteriskSCF::System::Hook::V1::HookResult decorateSession(SessionCreationHookData originalData, out SessionCreationHookData replacementData);
+ AsteriskSCF::System::Hook::V1::HookResult modifySession(SessionCreationHookData originalData, out SessionCreationHookData replacementData);
};
sequence<SessionCreationHook*> SessionCreationHookSeq;
commit f1052695108533af3df3e4ff0054a60dd968598b
Author: Brent Eagles <beagles at digium.com>
Date: Thu Jul 14 20:02:29 2011 -0230
Slice changes for bridge cookie support
diff --git a/slice/AsteriskSCF/SessionCommunications/SessionCommunicationsIf.ice b/slice/AsteriskSCF/SessionCommunications/SessionCommunicationsIf.ice
index e57a7c3..8131772 100644
--- a/slice/AsteriskSCF/SessionCommunications/SessionCommunicationsIf.ice
+++ b/slice/AsteriskSCF/SessionCommunications/SessionCommunicationsIf.ice
@@ -122,7 +122,7 @@ module V1
*
* @see SessionCookies
*/
- ["preserved"] class SessionCookie
+ unsliceable class SessionCookie
{
};
@@ -697,6 +697,32 @@ module V1
};
/**
+ * Generic base class for bridge 'cookies', opaque data items that can be
+ * stored on a Bridge and retrieved via the BridgeListener
+ * interface when events occur on that Bridge.
+ *
+ * @see BridgeListener
+ *
+ * @see BridgeCookies
+ */
+ unsliceable class BridgeCookie
+ {
+ };
+
+ /**
+ * A sequence of bridge cookies, allowing for a variable number of them
+ * to be passed in a single operation or event.
+ *
+ * @see BridgeListener
+ */
+ sequence <BridgeCookie> BridgeCookies;
+
+ /**
+ * A dictionary of bridge cookies, used for storing them.
+ */
+ dictionary<string, BridgeCookie> BridgeCookieDict;
+
+ /**
* Forward declaration for the BridgeListener interface.
*/
interface BridgeListener;
@@ -791,6 +817,42 @@ module V1
["amd"]
void replaceSession(Session* sessionToReplace, SessionSeq newSessions)
throws InvalidSessions, SessionNotFound, BridgeSessionOperationFailed;
+
+ /**
+ * Set (or replace) cookies on the Bridge.
+ *
+ * @param cookies A sequence of one or more concrete objects,
+ * each of which are of a type derived from BridgeCookie. The
+ * bridge will store these cookies on the bridge, replacing any
+ * existing cookies with matching types.
+ *
+ * @note There can only be one cookie of a given type associated
+ * with a Bridge.
+ **/
+ void setCookies(BridgeCookies cookies);
+
+ /**
+ * Remove cookies from the Bridge.
+ *
+ * @param cookies A sequence of one or more concrete objects,
+ * each of which are of a type derived from BridgeCookie.
+ * The bridge will remove any cookies on the bridge
+ * with types that match the ones in this sequence; the
+ * content of the supplied cookies is not compared.
+ **/
+ void removeCookies(BridgeCookies cookies);
+
+ /**
+ * Get cookies stored on the Bridge.
+ *
+ * @param cookieTypes A sequence of zero or more concrete objects,
+ * each of which are of a type derived from BridgeCookie.
+ *
+ * @return A sequence of zero or more cookies from the bridge,
+ * with types that match the types of the template cookies
+ * provided in the cookieTypes parameter.
+ **/
+ BridgeCookies getCookies(BridgeCookies cookieTypes);
};
/**
@@ -808,8 +870,10 @@ module V1
* @param sessionBridge The bridge object the sessions were added to.
*
* @param sessions A sequence of session proxies that were added to the bridge.
+ *
+ * @param cookies A sequence of bridge cookies that are associated with the bridge.
*/
- void sessionsAdded(Bridge* sessionBridge, SessionSeq sessions);
+ void sessionsAdded(Bridge* sessionBridge, SessionSeq sessions, BridgeCookies cookies);
/**
* Called when sessions have been removed from a bridge.
@@ -818,22 +882,28 @@ module V1
*
* @param sessions A sequence of session proxies that were removed from
* the bridge.
+ *
+ * @param cookies A sequence of bridge cookies that are associated with the bridge.
*/
- void sessionsRemoved(Bridge* sessionBridge, SessionSeq sessions);
+ void sessionsRemoved(Bridge* sessionBridge, SessionSeq sessions, BridgeCookies cookies);
/**
* Called when a bridge has completed shutdown/destruction.
*
* @param sessionBridge The bridge that was stopped.
+ *
+ * @param cookies A sequence of bridge cookies that are associated with the bridge.
*/
- void stopped(Bridge* sessionBridge);
+ void stopped(Bridge* sessionBridge, BridgeCookies cookies);
/**
* Called when a bridge has started shutdown/destruction operations.
*
* @param sessionBrdige The bridge that is stopping.
+ *
+ * @param cookies A sequence of bridge cookies that are associated with the bridge.
*/
- void stopping(Bridge* sessionBridge);
+ void stopping(Bridge* sessionBridge, BridgeCookies cookies);
};
/**
-----------------------------------------------------------------------
--
asterisk-scf/integration/slice.git
More information about the asterisk-scf-commits
mailing list