Author: cziegeler
Date: Sun Jul 12 09:30:36 2015
New Revision: 1690437
URL: http://svn.apache.org/r1690437
Log:
FELIX-4957 : [DS][RFC-212] Various issues with field references
Modified:
felix/trunk/scr/src/main/java/org/apache/felix/scr/impl/helper/FieldHandler.java
felix/trunk/scr/src/main/java/org/apache/felix/scr/impl/helper/FieldMethods.java
felix/trunk/scr/src/main/java/org/apache/felix/scr/impl/manager/SingleComponentManager.java
Modified:
felix/trunk/scr/src/main/java/org/apache/felix/scr/impl/helper/FieldHandler.java
URL:
http://svn.apache.org/viewvc/felix/trunk/scr/src/main/java/org/apache/felix/scr/impl/helper/FieldHandler.java?rev=1690437&r1=1690436&r2=1690437&view=diff
==============================================================================
---
felix/trunk/scr/src/main/java/org/apache/felix/scr/impl/helper/FieldHandler.java
(original)
+++
felix/trunk/scr/src/main/java/org/apache/felix/scr/impl/helper/FieldHandler.java
Sun Jul 12 09:30:36 2015
@@ -498,6 +498,12 @@ public class FieldHandler
}
}
}
+
+ // null the field if optional and unary
+ if ( !metadata.isMultiple() && metadata.isOptional() )
+ {
+ this.setFieldValue(componentInstance, null);
+ }
}
catch ( final InvocationTargetException ite)
{
Modified:
felix/trunk/scr/src/main/java/org/apache/felix/scr/impl/helper/FieldMethods.java
URL:
http://svn.apache.org/viewvc/felix/trunk/scr/src/main/java/org/apache/felix/scr/impl/helper/FieldMethods.java?rev=1690437&r1=1690436&r2=1690437&view=diff
==============================================================================
---
felix/trunk/scr/src/main/java/org/apache/felix/scr/impl/helper/FieldMethods.java
(original)
+++
felix/trunk/scr/src/main/java/org/apache/felix/scr/impl/helper/FieldMethods.java
Sun Jul 12 09:30:36 2015
@@ -16,16 +16,14 @@
* specific language governing permissions and limitations
* under the License.
*/
-
-
package org.apache.felix.scr.impl.helper;
-
import org.apache.felix.scr.impl.metadata.DSVersion;
import org.apache.felix.scr.impl.metadata.ReferenceMetadata;
/**
- * @version $Rev$ $Date$
+ * FieldMethods provides implementations for bind/unbind/updated
+ * which handle manipulation of fields.
*/
public class FieldMethods implements ReferenceMethods
{
Modified:
felix/trunk/scr/src/main/java/org/apache/felix/scr/impl/manager/SingleComponentManager.java
URL:
http://svn.apache.org/viewvc/felix/trunk/scr/src/main/java/org/apache/felix/scr/impl/manager/SingleComponentManager.java?rev=1690437&r1=1690436&r2=1690437&view=diff
==============================================================================
---
felix/trunk/scr/src/main/java/org/apache/felix/scr/impl/manager/SingleComponentManager.java
(original)
+++
felix/trunk/scr/src/main/java/org/apache/felix/scr/impl/manager/SingleComponentManager.java
Sun Jul 12 09:30:36 2015
@@ -897,7 +897,7 @@ public class SingleComponentManager<S> e
}
}
- void ungetService( )
+ private void ungetService( )
{
deleteComponent( ComponentConstants.DEACTIVATION_REASON_UNSPECIFIED );
}