code: @Override
      public Application onApplicationInit(Application app, JaxRsModuleMetaData metaData) {
  
          Class<?> clazz = app.getClass();
  
          if (!shouldHandle(clazz, true)) {
              return null;
          }
          Application newApp = null;
  
          ManagedObject<?> mo = getClassFromManagedObject(clazz);
          metaData.setManagedAppRef(mo);
  
          if (mo != null) {
              newApp = (Application) (mo.getObject());
          }
  
          if (newApp == null) {
              if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled()) {
                  Tr.debug(tc, "App: app is null from CDI , get app from rs for " + app.getClass().getName());
              }
              return app;
          }
          if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled()) {
              Tr.debug(tc, "App: get app from CDI " + app.getClass().getName());
          }
          return newApp;
      }
docs: /*
  (non-Javadoc)
  
  @see com.ibm.ws.jaxrs20.api.JaxRsFactoryBeanCustomizer#onApplicationInit(javax.ws.rs.core.Application, com.ibm.ws.jaxrs20.metadata.JaxRsModuleMetaData)