Author: cziegeler
Date: Mon Sep 19 06:58:37 2016
New Revision: 1761391

URL: http://svn.apache.org/viewvc?rev=1761391&view=rev
Log:
[FELIX-5354] Implement Declarative Service Updates for R7 (RFC 222)

Modified:
    felix/trunk/scr/pom.xml
    
felix/trunk/scr/src/main/java/org/apache/felix/scr/impl/manager/RegionConfigurationSupport.java

Modified: felix/trunk/scr/pom.xml
URL: 
http://svn.apache.org/viewvc/felix/trunk/scr/pom.xml?rev=1761391&r1=1761390&r2=1761391&view=diff
==============================================================================
--- felix/trunk/scr/pom.xml (original)
+++ felix/trunk/scr/pom.xml Mon Sep 19 06:58:37 2016
@@ -27,7 +27,7 @@
     <packaging>bundle</packaging>
     <name>Apache Felix Declarative Services</name>
     <description>
-        Implementation of the Declarative Services specification 1.3
+        Implementation of the Declarative Services specification 1.4
     </description>
     <artifactId>org.apache.felix.scr</artifactId>
     <version>2.0.7-SNAPSHOT</version>
@@ -70,7 +70,7 @@
         <bundle.file.name>
             ${bundle.build.name}/${project.build.finalName}.jar
         </bundle.file.name>
-        <felix.ca.version>1.8.0</felix.ca.version>
+        <felix.ca.version>1.8.11-SNAPSHOT</felix.ca.version>
     </properties>
     
     
@@ -89,7 +89,33 @@
         </dependency>
         <dependency>
             <groupId>org.osgi</groupId>
-            <artifactId>osgi.cmpn</artifactId>
+            <artifactId>org.osgi.service.component</artifactId>
+            <version>1.3.0</version>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.felix</groupId>
+            <artifactId>org.apache.felix.configadmin</artifactId>
+            <version>${felix.ca.version}</version>
+            <scope>provided</scope>
+        </dependency>
+<!-- 
+        <dependency>
+            <groupId>org.osgi</groupId>
+            <artifactId>org.osgi.service.cm</artifactId>
+            <version>1.5.0</version>
+            <scope>provided</scope>
+        </dependency>
+ -->
+        <dependency>
+            <groupId>org.osgi</groupId>
+            <artifactId>org.osgi.namespace.extender</artifactId>
+            <version>1.0.1</version>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.osgi</groupId>
+            <artifactId>osgi.promise</artifactId>
             <version>6.0.0</version>
             <scope>provided</scope>
         </dependency>
@@ -185,12 +211,6 @@
             <scope>test</scope>
         </dependency>
         <dependency>
-            <groupId>org.apache.felix</groupId>
-            <artifactId>org.apache.felix.configadmin</artifactId>
-            <version>1.8.0</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
             <groupId>org.apache.geronimo.specs</groupId>
             <artifactId>geronimo-atinject_1.0_spec</artifactId>
             <version>1.0</version>
@@ -389,14 +409,6 @@
                 </dependency>
             </dependencies>
         </profile>
-        <profile>
-            <!--  use to test with R4 ca, without change count, targetetPids, 
location changed event -->
-            <!--  remember you need to specify all profiles using this, e.g. 
-PcaR4,felix -->
-            <id>caR4</id>
-            <properties>
-                <felix.ca.version>1.0.10</felix.ca.version>
-            </properties>
-        </profile>
     </profiles>
         
 </project>

Modified: 
felix/trunk/scr/src/main/java/org/apache/felix/scr/impl/manager/RegionConfigurationSupport.java
URL: 
http://svn.apache.org/viewvc/felix/trunk/scr/src/main/java/org/apache/felix/scr/impl/manager/RegionConfigurationSupport.java?rev=1761391&r1=1761390&r2=1761391&view=diff
==============================================================================
--- 
felix/trunk/scr/src/main/java/org/apache/felix/scr/impl/manager/RegionConfigurationSupport.java
 (original)
+++ 
felix/trunk/scr/src/main/java/org/apache/felix/scr/impl/manager/RegionConfigurationSupport.java
 Mon Sep 19 06:58:37 2016
@@ -142,8 +142,9 @@ public abstract class RegionConfiguratio
                             if ( checkBundleLocation( config, 
bundleContext.getBundle() ) )
                             {
                                 long changeCount = config.getChangeCount();
+                                // TODO - service reference
                                 created |= holder.configurationUpdated( new 
TargetedPID( config.getPid() ),
-                                    new TargetedPID( config.getFactoryPid() ), 
config.getProperties(), changeCount );
+                                    new TargetedPID( config.getFactoryPid() ), 
config.getModifiedProperties(null), changeCount );
                             }
                         }
                         if ( !created )
@@ -163,8 +164,9 @@ public abstract class RegionConfiguratio
                             if ( singleton != null && checkBundleLocation( 
singleton, bundleContext.getBundle() ) )
                             {
                                 long changeCount = singleton.getChangeCount();
+                                // TODO service reference
                                 holder.configurationUpdated( new TargetedPID( 
singleton.getPid() ), null,
-                                    singleton.getProperties(), changeCount );
+                                    singleton.getModifiedProperties(null), 
changeCount );
                             }
                             else
                             {
@@ -446,7 +448,8 @@ public abstract class RegionConfiguratio
                 if ( configs != null && configs.length > 0 )
                 {
                     Configuration config = configs[0];
-                    return new ConfigurationInfo( config.getProperties(), 
config.getBundleLocation(),
+                    // TODO - service reference
+                    return new ConfigurationInfo( 
config.getModifiedProperties(null), config.getBundleLocation(),
                         config.getChangeCount() );
                 }
             }


Reply via email to