You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@felix.apache.org by "Thomas Diesler (JIRA)" <ji...@apache.org> on 2009/10/26 09:03:59 UTC
[jira] Updated: (FELIX-1804) Consider adding an Interceptor API
[ https://issues.apache.org/jira/browse/FELIX-1804?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Thomas Diesler updated FELIX-1804:
----------------------------------
Description:
Please consider adding a bundle state change interceptor API. For more background on this, please have a look at
http://jbossosgi.blogspot.com/2009/10/extender-pattern-vs-lifecycle.html
A possible API could look like this
void setBundleStateAndNotify(BundleImpl bundle, int state)
{
synchronized (m_bundleLock)
{
if (interceptor != null)
interceptor.processStateChange(bundle, state);
bundle.__setState(state);
m_bundleLock.notifyAll();
}
}
interface BundleStateInterceptor()
{
void processStateChange(Bundle bundle, int state);
}
was:
Please consider adding a bundle state change interceptor API. For more background on this, please have a look at
http://jbossosgi.blogspot.com/2009/10/extender-pattern-vs-lifecycle.html
A possible API could look like this
{code:java}
void setBundleStateAndNotify(BundleImpl bundle, int state)
{
synchronized (m_bundleLock)
{
if (interceptor != null)
interceptor.processStateChange(bundle, state);
bundle.__setState(state);
m_bundleLock.notifyAll();
}
}
{code}
{code:java}
interface BundleStateInterceptor()
{
void processStateChange(Bundle bundle, int state);
}
{code}
> Consider adding an Interceptor API
> ----------------------------------
>
> Key: FELIX-1804
> URL: https://issues.apache.org/jira/browse/FELIX-1804
> Project: Felix
> Issue Type: Improvement
> Components: Framework
> Affects Versions: felix-2.0.1
> Reporter: Thomas Diesler
>
> Please consider adding a bundle state change interceptor API. For more background on this, please have a look at
> http://jbossosgi.blogspot.com/2009/10/extender-pattern-vs-lifecycle.html
> A possible API could look like this
> void setBundleStateAndNotify(BundleImpl bundle, int state)
> {
> synchronized (m_bundleLock)
> {
> if (interceptor != null)
> interceptor.processStateChange(bundle, state);
> bundle.__setState(state);
> m_bundleLock.notifyAll();
> }
> }
> interface BundleStateInterceptor()
> {
> void processStateChange(Bundle bundle, int state);
> }
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.