You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@felix.apache.org by cz...@apache.org on 2015/07/12 11:30:36 UTC

svn commit: r1690437 - in /felix/trunk/scr/src/main/java/org/apache/felix/scr/impl: helper/FieldHandler.java helper/FieldMethods.java manager/SingleComponentManager.java

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 );
     }