[asterisk-scf-commits] asterisk-scf/integration/slice.git branch "basecomponentsquash" created.

Commits to the Asterisk SCF project code repositories asterisk-scf-commits at lists.digium.com
Tue Aug 2 15:20:15 CDT 2011


branch "basecomponentsquash" has been created
        at  8d47f33937fa75dce83fcaeb5b8c11699ffacfe6 (commit)

- Log -----------------------------------------------------------------
commit 8d47f33937fa75dce83fcaeb5b8c11699ffacfe6
Author: Ken Hunt <ken.hunt at digium.com>
Date:   Tue Jun 21 11:54:59 2011 -0500

    Changes for base Component refactoring and expanded fields of ServiceLocatorParams.

diff --git a/AsteriskSCF/Core/Discovery/ServiceLocatorIf.ice b/AsteriskSCF/Core/Discovery/ServiceLocatorIf.ice
index 44fab7f..e8d5f8a 100644
--- a/AsteriskSCF/Core/Discovery/ServiceLocatorIf.ice
+++ b/AsteriskSCF/Core/Discovery/ServiceLocatorIf.ice
@@ -52,13 +52,53 @@ module V1
 
    /**
     * Generic service locator parameters class that more specific parameter classes can extend.
+    * These parameters are used to register a service with the ServiceLocator, and to 
+    * locate (i.e. query) the service. 
+    * 
+    * Note: The identity of the service is the unique combination of the service field and the
+    * id field, and the id field may be left empty. A service can be part of multiple categories. 
     */
    unsliceable class ServiceLocatorParams
    {
+      /** 
+       * Category for the service.
+       *
+       * When registering a service: 
+       *  - An optional category that the service
+       *    should be considered a member of. The service
+       *    can be added to multiple categories via multiple
+       *    calls to addLocatorParams. 
+       * @see ServiceManagement
+       *
+       * When locating:
+       * - An optional category to filter the results on.
+       */
+      string category; 
+
+      /**
+       * Identifier for the service. 
+       *
+       * When registering a service: 
+       *  - Identifier for the service. Can't be empty. 
+       *
+       * When locating:
+       * - If left empty, locate will return all services within a specified category.
+       * - If category and service are both empty, all services registered with the given
+       *   ServiceLocator are returned. In this case, the id field is ignored. 
+       */
+      string service;
+
       /**
-       * Basic category for the service, such as bridge or channel service.
+       * Instance id within a replica group. 
+       *
+       * When registering a service:
+       *  - Identifier of a specific service instance. 
+       * 
+       * When locating: 
+       *  - Identifier of a specific instance. If left empty the default 
+       *    comparator will match on service (and category, if set) only. 
        */
-      string category;
+       string id;
    };
 
    /**
@@ -67,7 +107,7 @@ module V1
    interface ServiceLocator
    {
       /**
-       * Method which performs a locator request using provided parameters but only returns a single
+       * Method which performs a locator " using provided parameters but only returns a single
        * proxy.
        *
        * @param params A concrete class containing parameters describing the service that is trying to be found.
diff --git a/AsteriskSCF/Media/RTP/MediaRTPIf.ice b/AsteriskSCF/Media/RTP/MediaRTPIf.ice
index 8687f30..dc0ca9b 100644
--- a/AsteriskSCF/Media/RTP/MediaRTPIf.ice
+++ b/AsteriskSCF/Media/RTP/MediaRTPIf.ice
@@ -35,6 +35,11 @@ module V1
    const string Version = "V1";
 
    /**
+    * String name of the service locator category for the RTP component service interface.
+    */
+   const string ComponentServiceDiscoveryCategory = "MediaRTPService";
+
+   /**
     * Extended discovery class for RTP media services.
     */
    unsliceable class RTPServiceLocatorParams extends AsteriskSCF::Core::Discovery::V1::ServiceLocatorParams
diff --git a/AsteriskSCF/SessionCommunications/SessionCommunicationsIf.ice b/AsteriskSCF/SessionCommunications/SessionCommunicationsIf.ice
index 7d53e82..47edd67 100644
--- a/AsteriskSCF/SessionCommunications/SessionCommunicationsIf.ice
+++ b/AsteriskSCF/SessionCommunications/SessionCommunicationsIf.ice
@@ -574,9 +574,14 @@ module V1
     };
 
     /**
-     * Category used for the bridge service.
+     * Category used to publish the Bridge Service's ComponentService interface.
      */
-    const string BridgeServiceDiscoveryCategory = "BridgeService";
+    const string BridgeComponentServiceCategory = "BridgingComponentService";
+
+    /**
+     * Category used for the bridge manager.
+     */
+    const string BridgeManagerDiscoveryCategory = "BridgeManager";
 
     /**
      * The bridge throws an InvalidSessions exception if any of the sessions
diff --git a/AsteriskSCF/System/Component/ComponentServiceIf.ice b/AsteriskSCF/System/Component/ComponentServiceIf.ice
index b6db122..e3fe84f 100644
--- a/AsteriskSCF/System/Component/ComponentServiceIf.ice
+++ b/AsteriskSCF/System/Component/ComponentServiceIf.ice
@@ -83,7 +83,7 @@ module V1
     /** 
      * A base class to enable arbitary parameter passing to the ComponentTest inteface.
      */
-    class ComponentTestParam {};
+    unsliceable class ComponentTestParam {};
     sequence<ComponentTestParam> ComponentTestParamSeq;
 
     const string ComponentTestFacet = "TestFacet";

-----------------------------------------------------------------------


-- 
asterisk-scf/integration/slice.git



More information about the asterisk-scf-commits mailing list