Author: cziegeler
Date: Sun Jul 12 11:07:11 2015
New Revision: 1690444

URL: http://svn.apache.org/r1690444
Log:
FELIX-4951 : [DS][RFC-190] Correct pid handling

Modified:
    
felix/trunk/scr/src/main/java/org/apache/felix/scr/impl/config/ConfigurationSupport.java

Modified: 
felix/trunk/scr/src/main/java/org/apache/felix/scr/impl/config/ConfigurationSupport.java
URL: 
http://svn.apache.org/viewvc/felix/trunk/scr/src/main/java/org/apache/felix/scr/impl/config/ConfigurationSupport.java?rev=1690444&r1=1690443&r2=1690444&view=diff
==============================================================================
--- 
felix/trunk/scr/src/main/java/org/apache/felix/scr/impl/config/ConfigurationSupport.java
 (original)
+++ 
felix/trunk/scr/src/main/java/org/apache/felix/scr/impl/config/ConfigurationSupport.java
 Sun Jul 12 11:07:11 2015
@@ -300,11 +300,14 @@ public class ConfigurationSupport implem
                         final ConfigurationInfo configInfo = 
getConfigurationInfo( pid, targetedPid, componentHolder, bundleContext );
                         if ( checkBundleLocation( 
configInfo.getBundleLocation(), bundleContext.getBundle() ) )
                         {
-                            //If this is replacing a weaker targetedPID delete 
the old one.
-                            if ( factoryPid == null && 
!targetedPid.equals(oldTargetedPID) && oldTargetedPID != null)
-                            {
-                                componentHolder.configurationDeleted( pid, 
factoryPid );
-                            }
+                               // The below seems to be unnecessary - and if 
put in, the behaviour is not spec compliant anymore:
+                               // if a component has a required configuration 
and a modified method, the component must not be
+                               // reactivated
+                            // If this is replacing a weaker targetedPID 
delete the old one.
+                            // if ( factoryPid == null && 
!targetedPid.equals(oldTargetedPID) && oldTargetedPID != null)
+                            //{
+                                //componentHolder.configurationDeleted( pid, 
factoryPid );
+                            //}
                             componentHolder.configurationUpdated( pid, 
factoryPid, configInfo.getProps(), configInfo.getChangeCount() );
                         }
                     }


Reply via email to