package org.osgi.test.cases.cdi.serviceclient.transitive;

import java.util.concurrent.Callable;

import javax.inject.Inject;

import org.osgi.service.cdi.annotations.Component;
import org.osgi.service.cdi.annotations.Filter;
import org.osgi.service.cdi.annotations.Reference;

@Component
public class Client implements Callable<String> {
	@Inject
	@Reference
	@Filter("(name=intermediate)")
	Callable<String> callable;

	public String call() throws Exception {
		return callable.call();
	}
}

package org.osgi.test.cases.cdi.serviceclient.transitive;

import java.util.concurrent.Callable;

import javax.inject.Inject;

import org.osgi.service.cdi.annotations.Component;
import org.osgi.service.cdi.annotations.Reference;

@Component
public class Client implements Callable<String> {
	@Inject
	@Reference(target = "(name=intermediate)")
	Callable<String> callable;

	public String call() throws Exception {
		return callable.call();
	}
}

fix test cases