Uploaded image for project: 'Felix'
  1. Felix
  2. FELIX-5636

Component of aspect service does not have any service properties anymore

    XMLWordPrintableJSON

Details

    Description

      The Component for an aspect service does not have service properties. It looks like this is broken since r.1781908 (had a quick look, but could not find the cause in the time I had available).
      Without these properties it is not possible to add a dependency in the init method of the aspect based on one of the aspected service properties.

      Example to test it:

      public class Activator extends DependencyActivatorBase {
      
      	@Override
      	public void init(BundleContext context, DependencyManager manager) throws Exception {
      		Properties properties = new Properties();
      		properties.put("PropKey", "PropValue");
      		Component aComponent = manager.createComponent().setInterface(X.class.getName(), properties).setImplementation(new A());
      		manager.add(aComponent);
      		
      		manager.add(manager.createAspectService(X.class, null, 100).setImplementation(B.class));
      	}
      
      
      	public static class A implements X {
      		public void init(Component component) {
      			System.out.println("Service properties in A: " + component.getServiceProperties());
      		}
      	}
      
      	public static class B implements X {
      		public void init(Component component) {
      			System.out.println("Service properties in B: " + component.getServiceProperties());
      		}
      	}
      
      	public interface X {
      
      	}
      
      }
      

      The init of B shows empty properties, I expected the inherited properties, aspect ranking etc.

      Attachments

        Activity

          People

            pderop Pierre De Rop
            JeroenDaanen Jeroen Daanen
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: