FELIX-1530 Add methods to ask for the activate/deactivate method names and whether
they have been declared or not.
git-svn-id: https://svn.apache.org/repos/asf/felix/trunk@822290 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/scr/src/main/java/org/apache/felix/scr/impl/manager/AbstractComponentManager.java b/scr/src/main/java/org/apache/felix/scr/impl/manager/AbstractComponentManager.java
index ee2b809..f597314 100644
--- a/scr/src/main/java/org/apache/felix/scr/impl/manager/AbstractComponentManager.java
+++ b/scr/src/main/java/org/apache/felix/scr/impl/manager/AbstractComponentManager.java
@@ -595,6 +595,38 @@
return m_componentMetadata.isEnabled();
}
+
+ public String getActivate()
+ {
+ return m_componentMetadata.getActivate();
+ }
+
+
+ public boolean isActivateDeclared()
+ {
+ return m_componentMetadata.isActivateDeclared();
+ }
+
+
+ public String getDeactivate()
+ {
+ return m_componentMetadata.getDeactivate();
+ }
+
+
+ public boolean isDeactivateDeclared()
+ {
+ return m_componentMetadata.isDeactivateDeclared();
+ }
+
+
+ public String getModified()
+ {
+ return m_componentMetadata.getModified();
+
+ }
+
+
public boolean isServiceFactory()
{
return m_componentMetadata.getServiceMetadata() != null
diff --git a/scr/src/main/java/org/apache/felix/scr/impl/manager/ComponentFactoryImpl.java b/scr/src/main/java/org/apache/felix/scr/impl/manager/ComponentFactoryImpl.java
index 5bb3360..b6db017 100644
--- a/scr/src/main/java/org/apache/felix/scr/impl/manager/ComponentFactoryImpl.java
+++ b/scr/src/main/java/org/apache/felix/scr/impl/manager/ComponentFactoryImpl.java
@@ -199,6 +199,16 @@
return this;
}
+ //---------- Component interface
+
+
+ public ComponentInstance getComponentInstance()
+ {
+ // a ComponentFactory is not a real component and as such does
+ // not have a ComponentInstance
+ return null;
+ }
+
//---------- ComponentHolder interface
diff --git a/scr/src/main/java/org/apache/felix/scr/impl/manager/ServiceFactoryComponentManager.java b/scr/src/main/java/org/apache/felix/scr/impl/manager/ServiceFactoryComponentManager.java
index 17d359f..340f160 100644
--- a/scr/src/main/java/org/apache/felix/scr/impl/manager/ServiceFactoryComponentManager.java
+++ b/scr/src/main/java/org/apache/felix/scr/impl/manager/ServiceFactoryComponentManager.java
@@ -29,6 +29,7 @@
import org.osgi.framework.ServiceRegistration;
import org.osgi.service.component.ComponentConstants;
import org.osgi.service.component.ComponentContext;
+import org.osgi.service.component.ComponentInstance;
import org.osgi.service.log.LogService;
@@ -155,6 +156,15 @@
}
}
+ //---------- Component interface
+
+ public ComponentInstance getComponentInstance()
+ {
+ // TODO: should return the component instance corresponding to the
+ // bundle owning ScrService
+ return super.getComponentInstance();
+ }
+
private static class BundleComponentContext extends ComponentContextImpl
{