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 2018/01/08 15:27:04 UTC

svn commit: r1820570 - in /felix/trunk/osgi-r7/scr/src/main/java/org: apache/felix/scr/impl/manager/ apache/felix/scr/impl/runtime/ osgi/service/component/runtime/ osgi/service/component/runtime/dto/

Author: cziegeler
Date: Mon Jan  8 15:27:04 2018
New Revision: 1820570

URL: http://svn.apache.org/viewvc?rev=1820570&view=rev
Log:
FELIX-5460 : DTO Updates - add service reference to ComponentConfigurationDTO

Modified:
    felix/trunk/osgi-r7/scr/src/main/java/org/apache/felix/scr/impl/manager/AbstractComponentManager.java
    felix/trunk/osgi-r7/scr/src/main/java/org/apache/felix/scr/impl/manager/ComponentFactoryImpl.java
    felix/trunk/osgi-r7/scr/src/main/java/org/apache/felix/scr/impl/manager/ComponentManager.java
    felix/trunk/osgi-r7/scr/src/main/java/org/apache/felix/scr/impl/manager/SingleComponentManager.java
    felix/trunk/osgi-r7/scr/src/main/java/org/apache/felix/scr/impl/runtime/ServiceComponentRuntimeImpl.java
    felix/trunk/osgi-r7/scr/src/main/java/org/osgi/service/component/runtime/ServiceComponentRuntime.java
    felix/trunk/osgi-r7/scr/src/main/java/org/osgi/service/component/runtime/dto/ComponentConfigurationDTO.java
    felix/trunk/osgi-r7/scr/src/main/java/org/osgi/service/component/runtime/dto/ComponentDescriptionDTO.java
    felix/trunk/osgi-r7/scr/src/main/java/org/osgi/service/component/runtime/dto/ReferenceDTO.java

Modified: felix/trunk/osgi-r7/scr/src/main/java/org/apache/felix/scr/impl/manager/AbstractComponentManager.java
URL: http://svn.apache.org/viewvc/felix/trunk/osgi-r7/scr/src/main/java/org/apache/felix/scr/impl/manager/AbstractComponentManager.java?rev=1820570&r1=1820569&r2=1820570&view=diff
==============================================================================
--- felix/trunk/osgi-r7/scr/src/main/java/org/apache/felix/scr/impl/manager/AbstractComponentManager.java (original)
+++ felix/trunk/osgi-r7/scr/src/main/java/org/apache/felix/scr/impl/manager/AbstractComponentManager.java Mon Jan  8 15:27:04 2018
@@ -1422,4 +1422,9 @@ public abstract class AbstractComponentM
 
     public abstract void getComponentManagers(List<AbstractComponentManager<S>> cms);
 
+    @Override
+    public ServiceReference<S> getRegisteredServiceReference()
+    {
+        return null;
+    }
 }

Modified: felix/trunk/osgi-r7/scr/src/main/java/org/apache/felix/scr/impl/manager/ComponentFactoryImpl.java
URL: http://svn.apache.org/viewvc/felix/trunk/osgi-r7/scr/src/main/java/org/apache/felix/scr/impl/manager/ComponentFactoryImpl.java?rev=1820570&r1=1820569&r2=1820570&view=diff
==============================================================================
--- felix/trunk/osgi-r7/scr/src/main/java/org/apache/felix/scr/impl/manager/ComponentFactoryImpl.java (original)
+++ felix/trunk/osgi-r7/scr/src/main/java/org/apache/felix/scr/impl/manager/ComponentFactoryImpl.java Mon Jan  8 15:27:04 2018
@@ -340,13 +340,6 @@ public int hashCode()
     //---------- Component interface
 
 
-    public ComponentInstance getComponentInstance()
-    {
-        // a ComponentFactory is not a real component and as such does
-        // not have a ComponentInstance
-        return null;
-    }
-
     /**
      * Disposes off all components ever created by this component holder. This
      * method is called if either the Declarative Services runtime is stopping

Modified: felix/trunk/osgi-r7/scr/src/main/java/org/apache/felix/scr/impl/manager/ComponentManager.java
URL: http://svn.apache.org/viewvc/felix/trunk/osgi-r7/scr/src/main/java/org/apache/felix/scr/impl/manager/ComponentManager.java?rev=1820570&r1=1820569&r2=1820570&view=diff
==============================================================================
--- felix/trunk/osgi-r7/scr/src/main/java/org/apache/felix/scr/impl/manager/ComponentManager.java (original)
+++ felix/trunk/osgi-r7/scr/src/main/java/org/apache/felix/scr/impl/manager/ComponentManager.java Mon Jan  8 15:27:04 2018
@@ -21,6 +21,7 @@ package org.apache.felix.scr.impl.manage
 import java.util.List;
 import java.util.Map;
 
+import org.osgi.framework.ServiceReference;
 import org.osgi.service.component.runtime.dto.ComponentConfigurationDTO;
 
 
@@ -42,4 +43,6 @@ public interface ComponentManager<S> {
 
     List<? extends ReferenceManager<S, ?>> getReferenceManagers();
 
+    ServiceReference<S> getRegisteredServiceReference();
+
 }
\ No newline at end of file

Modified: felix/trunk/osgi-r7/scr/src/main/java/org/apache/felix/scr/impl/manager/SingleComponentManager.java
URL: http://svn.apache.org/viewvc/felix/trunk/osgi-r7/scr/src/main/java/org/apache/felix/scr/impl/manager/SingleComponentManager.java?rev=1820570&r1=1820569&r2=1820570&view=diff
==============================================================================
--- felix/trunk/osgi-r7/scr/src/main/java/org/apache/felix/scr/impl/manager/SingleComponentManager.java (original)
+++ felix/trunk/osgi-r7/scr/src/main/java/org/apache/felix/scr/impl/manager/SingleComponentManager.java Mon Jan  8 15:27:04 2018
@@ -998,4 +998,14 @@ public class SingleComponentManager<S> e
         cms.add(this);
     }
 
+    @Override
+    public ServiceReference<S> getRegisteredServiceReference()
+    {
+        final ComponentContextImpl<S> ctx = this.m_componentContext;
+        if ( ctx != null )
+        {
+            return ctx.getServiceReference();
+        }
+        return null;
+    }
 }

Modified: felix/trunk/osgi-r7/scr/src/main/java/org/apache/felix/scr/impl/runtime/ServiceComponentRuntimeImpl.java
URL: http://svn.apache.org/viewvc/felix/trunk/osgi-r7/scr/src/main/java/org/apache/felix/scr/impl/runtime/ServiceComponentRuntimeImpl.java?rev=1820570&r1=1820569&r2=1820570&view=diff
==============================================================================
--- felix/trunk/osgi-r7/scr/src/main/java/org/apache/felix/scr/impl/runtime/ServiceComponentRuntimeImpl.java (original)
+++ felix/trunk/osgi-r7/scr/src/main/java/org/apache/felix/scr/impl/runtime/ServiceComponentRuntimeImpl.java Mon Jan  8 15:27:04 2018
@@ -212,6 +212,10 @@ public class ServiceComponentRuntimeImpl
         {
             dto.failure = manager.getFailureReason();
         }
+        else if ( dto.state == ComponentConfigurationDTO.ACTIVE )
+        {
+            dto.service = serviceReferenceToDTO(manager.getRegisteredServiceReference());
+        }
         return dto;
     }
 

Modified: felix/trunk/osgi-r7/scr/src/main/java/org/osgi/service/component/runtime/ServiceComponentRuntime.java
URL: http://svn.apache.org/viewvc/felix/trunk/osgi-r7/scr/src/main/java/org/osgi/service/component/runtime/ServiceComponentRuntime.java?rev=1820570&r1=1820569&r2=1820570&view=diff
==============================================================================
--- felix/trunk/osgi-r7/scr/src/main/java/org/osgi/service/component/runtime/ServiceComponentRuntime.java (original)
+++ felix/trunk/osgi-r7/scr/src/main/java/org/osgi/service/component/runtime/ServiceComponentRuntime.java Mon Jan  8 15:27:04 2018
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) OSGi Alliance (2013, 2016). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2013, 2017). All Rights Reserved.
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.

Modified: felix/trunk/osgi-r7/scr/src/main/java/org/osgi/service/component/runtime/dto/ComponentConfigurationDTO.java
URL: http://svn.apache.org/viewvc/felix/trunk/osgi-r7/scr/src/main/java/org/osgi/service/component/runtime/dto/ComponentConfigurationDTO.java?rev=1820570&r1=1820569&r2=1820570&view=diff
==============================================================================
--- felix/trunk/osgi-r7/scr/src/main/java/org/osgi/service/component/runtime/dto/ComponentConfigurationDTO.java (original)
+++ felix/trunk/osgi-r7/scr/src/main/java/org/osgi/service/component/runtime/dto/ComponentConfigurationDTO.java Mon Jan  8 15:27:04 2018
@@ -19,6 +19,7 @@ package org.osgi.service.component.runti
 import java.util.Map;
 
 import org.osgi.dto.DTO;
+import org.osgi.framework.dto.ServiceReferenceDTO;
 import org.osgi.service.component.ComponentContext;
 
 /**
@@ -147,4 +148,14 @@ public class ComponentConfigurationDTO e
 	 * @since 1.4
 	 */
 	public String						failure;
+
+	/**
+	 * The registered service of the component configuration.
+	 * <p>
+	 * This must be non-{@code null} if the component configuration is
+	 * registered as a service. Otherwise it must be {@code null}.
+	 * 
+	 * @since 1.4
+	 */
+	public ServiceReferenceDTO			service;
 }

Modified: felix/trunk/osgi-r7/scr/src/main/java/org/osgi/service/component/runtime/dto/ComponentDescriptionDTO.java
URL: http://svn.apache.org/viewvc/felix/trunk/osgi-r7/scr/src/main/java/org/osgi/service/component/runtime/dto/ComponentDescriptionDTO.java?rev=1820570&r1=1820569&r2=1820570&view=diff
==============================================================================
--- felix/trunk/osgi-r7/scr/src/main/java/org/osgi/service/component/runtime/dto/ComponentDescriptionDTO.java (original)
+++ felix/trunk/osgi-r7/scr/src/main/java/org/osgi/service/component/runtime/dto/ComponentDescriptionDTO.java Mon Jan  8 15:27:04 2018
@@ -174,8 +174,8 @@ public class ComponentDescriptionDTO ext
 	 * The factory properties.
 	 * <p>
 	 * These are declared in the component description by the
-	 * {@code factoryProperty} and {@code factoryProperties} elements. This must
-	 * be {@code null} if the component description is not declared as a
+	 * {@code factory-property} and {@code factory-properties} elements. This
+	 * must be {@code null} if the component description is not declared as a
 	 * {@link #factory factory component}.
 	 * 
 	 * @since 1.4

Modified: felix/trunk/osgi-r7/scr/src/main/java/org/osgi/service/component/runtime/dto/ReferenceDTO.java
URL: http://svn.apache.org/viewvc/felix/trunk/osgi-r7/scr/src/main/java/org/osgi/service/component/runtime/dto/ReferenceDTO.java?rev=1820570&r1=1820569&r2=1820570&view=diff
==============================================================================
--- felix/trunk/osgi-r7/scr/src/main/java/org/osgi/service/component/runtime/dto/ReferenceDTO.java (original)
+++ felix/trunk/osgi-r7/scr/src/main/java/org/osgi/service/component/runtime/dto/ReferenceDTO.java Mon Jan  8 15:27:04 2018
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) OSGi Alliance (2013, 2016). All Rights Reserved.
+ * Copyright (c) OSGi Alliance (2013, 2017). All Rights Reserved.
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.