You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@felix.apache.org by fm...@apache.org on 2012/09/03 03:03:54 UTC
svn commit: r1380104 -
/felix/trunk/scr/src/main/java/org/apache/felix/scr/impl/manager/AbstractComponentManager.java
Author: fmeschbe
Date: Mon Sep 3 01:03:54 2012
New Revision: 1380104
URL: http://svn.apache.org/viewvc?rev=1380104&view=rev
Log:
FELIX-3646 Make sure the the deactivation reason is not lost if an active component is disposed off
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=1380104&r1=1380103&r2=1380104&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 Mon Sep 3 01:03:54 2012
@@ -606,7 +606,7 @@ public abstract class AbstractComponentM
*/
public final void disposeInternal( int reason )
{
- m_state.dispose( this );
+ m_state.dispose( this, reason );
}
@@ -1172,9 +1172,9 @@ public abstract class AbstractComponentM
}
- void dispose( AbstractComponentManager acm )
+ void dispose( AbstractComponentManager acm, int reason )
{
-// log( acm, "dispose" );
+// log( acm, "dispose (reason: " + reason + ")" );
throw new IllegalStateException("dispose" + this);
}
@@ -1265,9 +1265,9 @@ public abstract class AbstractComponentM
doDeactivate( acm, reason );
}
- void dispose( AbstractComponentManager acm )
+ void dispose( AbstractComponentManager acm, int reason )
{
- acm.log( LogService.LOG_DEBUG, "Disposing component", null );
+ acm.log( LogService.LOG_DEBUG, "Disposing component (reason: " + reason + ")", null );
acm.clear();
acm.changeState( Disposed.getInstance() );
@@ -1380,7 +1380,7 @@ public abstract class AbstractComponentM
acm.log( LogService.LOG_DEBUG, "Component disabled", null );
}
- void dispose( AbstractComponentManager acm )
+ void dispose( AbstractComponentManager acm, int reason )
{
doDisable( acm );
acm.clear(); //content of Disabled.dispose
@@ -1422,9 +1422,9 @@ public abstract class AbstractComponentM
acm.changeState( Disabled.getInstance() );
}
- void dispose( AbstractComponentManager acm )
+ void dispose( AbstractComponentManager acm, int reason )
{
- doDeactivate( acm, ComponentConstants.DEACTIVATION_REASON_DISPOSED );
+ doDeactivate( acm, reason );
doDisable(acm);
acm.clear(); //content of Disabled.dispose
acm.changeState( Disposed.getInstance() );
@@ -1620,7 +1620,7 @@ public abstract class AbstractComponentM
throw new IllegalStateException( "disable: " + this );
}
- void dispose( AbstractComponentManager acm )
+ void dispose( AbstractComponentManager acm, int reason )
{
//factory instance can have dispose called with no effect. 112.5.5
}
@@ -1636,13 +1636,13 @@ public abstract class AbstractComponentM
boolean tryReadLock( long milliseconds ) throws InterruptedException;
long getReadHoldCount();
void unlockReadLock();
-
+
boolean tryWriteLock( long milliseconds ) throws InterruptedException;
long getWriteHoldCount();
void unlockWriteLock();
void deescalate();
-
+
}
private static class JLock implements LockWrapper