@Produces public BundleContext getBundleContext(BundleHolder holder, InjectionPoint p) { logger.trace("Entering OSGiUtilitiesProducer : getBundleContext() " + "with parameters {} | {}", new Object[] {holder,p}); logger.debug("Returning the current bundle {} bundle context {}", holder.getBundle(), holder.getContext()); return holder.getContext(); }
holder.setBundle(injectedContext.getBundle()); holder.setContext(injectedContext);
if (valid && bundleHolder.getState().equals(BundleState.INVALID)) { logger.debug("Bundle {} is now VALID", bundleHolder.getBundle()); bundleHolder.setState(BundleState.VALID); validEvent.fire(new Valid()); } else if (!valid && (bundleHolder.getState().equals(BundleState.VALID) || event == null)) { logger.debug("Bundle {} is now INVALID", bundleHolder.getBundle()); bundleHolder.setState(BundleState.INVALID); invalidEvent.fire(new Invalid());
logger.trace("CDI container started"); holder.getInstance().select(BundleHolder.class).get().setBundle(bundle); holder.getInstance().select(BundleHolder.class).get().setContext(bundle.getBundleContext()); holder.getInstance().select(ContainerObserver.class).get().setContainers(factory().containers()); holder.getInstance().select(ContainerObserver.class).get().setCurrentContainer(holder);
@Produces public <T> Registration<T> getRegistrations(BundleHolder bundleHolder, RegistrationHolder holder, InjectionPoint p) { logger.trace("Entering OSGiUtilitiesProducer : getRegistrations() " + "with parameters {} | {} | {}", new Object[] {bundleHolder,holder,p}); Class<T> contract = ((Class<T>) ((ParameterizedType) p.getType()).getActualTypeArguments()[0]); Registration<T> result = new RegistrationImpl<T>(contract, bundleHolder.getContext(), bundleHolder.getBundle(), holder); logger.debug("Returning the registrations {}", result); return result; }