FELIX-3536 (additional minor fix) Only put non-spec-required properties on non-spec ConfigurableComponentFactory
git-svn-id: https://svn.apache.org/repos/asf/felix/trunk@1533850 13f79535-47bb-0310-9956-ffa450edef68
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 b81f819..65e4d96 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
@@ -248,12 +248,6 @@
props.put( ComponentConstants.COMPONENT_NAME, getComponentMetadata().getName() );
props.put( ComponentConstants.COMPONENT_FACTORY, getComponentMetadata().getFactoryIdentifier() );
- // also register with the factory PID
- props.put( Constants.SERVICE_PID, getComponentMetadata().getName() );
-
- // descriptive service properties
- props.put( Constants.SERVICE_DESCRIPTION, "ManagedServiceFactory for Factory Component"
- + getComponentMetadata().getName() );
props.put( Constants.SERVICE_VENDOR, "The Apache Software Foundation" );
return props;
diff --git a/scr/src/main/java/org/apache/felix/scr/impl/manager/ConfigurationComponentFactoryImpl.java b/scr/src/main/java/org/apache/felix/scr/impl/manager/ConfigurationComponentFactoryImpl.java
index 58d06af..41406af 100644
--- a/scr/src/main/java/org/apache/felix/scr/impl/manager/ConfigurationComponentFactoryImpl.java
+++ b/scr/src/main/java/org/apache/felix/scr/impl/manager/ConfigurationComponentFactoryImpl.java
@@ -31,6 +31,7 @@
import org.apache.felix.scr.impl.config.ComponentHolder;
import org.apache.felix.scr.impl.helper.ComponentMethods;
import org.apache.felix.scr.impl.metadata.ComponentMetadata;
+import org.osgi.framework.Constants;
import org.osgi.service.log.LogService;
/**
@@ -65,6 +66,21 @@
}
+ @Override
+ public Dictionary<String, Object> getServiceProperties()
+ {
+ Dictionary<String, Object> props = super.getServiceProperties();
+ // also register with the factory PID
+ props.put( Constants.SERVICE_PID, getComponentMetadata().getConfigurationPid() );
+
+ // descriptive service properties
+ props.put( Constants.SERVICE_DESCRIPTION, "Configurable (nonstandard) Factory Component "
+ + getComponentMetadata().getName() );
+
+ return props;
+ }
+
+
/**
* The component factory does not have a component to create.
* <p>