You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@felix.apache.org by dj...@apache.org on 2012/10/18 07:48:34 UTC

svn commit: r1399525 - /felix/trunk/scr/src/main/java/org/apache/felix/scr/impl/manager/AbstractComponentManager.java

Author: djencks
Date: Thu Oct 18 05:48:34 2012
New Revision: 1399525

URL: http://svn.apache.org/viewvc?rev=1399525&view=rev
Log:
FELIX-3718 deactivate should move any satisfied state to unsatisfied when done

Modified:
    felix/trunk/scr/src/main/java/org/apache/felix/scr/impl/manager/AbstractComponentManager.java

Modified: felix/trunk/scr/src/main/java/org/apache/felix/scr/impl/manager/AbstractComponentManager.java
URL: http://svn.apache.org/viewvc/felix/trunk/scr/src/main/java/org/apache/felix/scr/impl/manager/AbstractComponentManager.java?rev=1399525&r1=1399524&r2=1399525&view=diff
==============================================================================
--- felix/trunk/scr/src/main/java/org/apache/felix/scr/impl/manager/AbstractComponentManager.java (original)
+++ felix/trunk/scr/src/main/java/org/apache/felix/scr/impl/manager/AbstractComponentManager.java Thu Oct 18 05:48:34 2012
@@ -1418,6 +1418,11 @@ public abstract class AbstractComponentM
             // reset the component id now (a disabled component has none)
             acm.unregisterComponentId();
         }
+
+        public boolean isSatisfied()
+        {
+            return false;
+        }
     }
 
     protected static final class Disabled extends State
@@ -1681,7 +1686,7 @@ public abstract class AbstractComponentM
             // component to remain in the deactivating state !
             doDeactivate(acm, reason);
 
-            if ( acm.state() == this )
+            if ( acm.state().isSatisfied() )
             {
                 acm.changeState( Unsatisfied.getInstance() );
             }
@@ -1702,6 +1707,11 @@ public abstract class AbstractComponentM
             acm.changeState( Disposed.getInstance() );
         }
 
+        @Override
+        public boolean isSatisfied()
+        {
+            return true;
+        }
     }
 
     /**