@Produces @BundleDataFile("") public File getDataFile(BundleHolder holder, InjectionPoint p) { logger.trace("Entering OSGiUtilitiesProducer : getDataFile() " + "with parameters {} | {}", new Object[] {holder,p}); Set<Annotation> qualifiers = p.getQualifiers(); BundleDataFile file = null; for (Annotation qualifier : qualifiers) { if (qualifier.annotationType().equals(BundleDataFile.class)) { file = (BundleDataFile) qualifier; break; } } if (file.value().equals("")) { logger.warn("Returning null," + " the BundleDataFile annotation path was empty"); return null; } BundleContext context = getBundleContext(holder, p); if (context == null) { logger.warn("Returning null, unable to retrieve the BundleContext " + "for holder {} and injection point {}", holder, p); return null; } logger.debug("Returning the file {} from bundle context {}", file.value(), context); return context.getDataFile(file.value()); }