in cdi-extender/src/main/java/org/apache/aries/cdi/container/internal/Activator.java [261:288]
private boolean requiresCDIExtender(Bundle bundle) {
BundleWiring bundleWiring = bundle.adapt(BundleWiring.class);
List<BundleWire> requiredBundleWires = bundleWiring.getRequiredWires(EXTENDER_NAMESPACE);
for (BundleWire bundleWire : requiredBundleWires) {
Map<String, Object> attributes = bundleWire.getCapability().getAttributes();
if (attributes.containsKey(EXTENDER_NAMESPACE) &&
attributes.get(EXTENDER_NAMESPACE).equals(CDI_CAPABILITY_NAME)) {
Bundle providerWiringBundle = bundleWire.getProviderWiring().getBundle();
if (providerWiringBundle.equals(_bundleContext.getBundle())) {
BundleRequirement requirement = bundleWire.getRequirement();
Map<String, Object> requirementAttributes = requirement.getAttributes();
@SuppressWarnings("unchecked")
List<String> beans = (List<String>)requirementAttributes.get(REQUIREMENT_BEANS_ATTRIBUTE);
if (beans != null && !beans.isEmpty()) {
return true;
}
}
}
}
return false;
}