[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