code: @Override
      public <T> ManagedObjectFactory<T> createManagedObjectFactory(ModuleMetaData mmd, Class<T> klass, boolean requestManagingInjectionAndInterceptors,
                                                                    ReferenceContext referenceContext) throws ManagedObjectException {
          if (isCDIEnabled(mmd)) {
              return new CDIManagedObjectFactoryImpl<T>(klass, getCDIRuntime(), requestManagingInjectionAndInterceptors, referenceContext);
          } else {
              return getDefaultManagedObjectService().createManagedObjectFactory(mmd, klass, requestManagingInjectionAndInterceptors, referenceContext);
          }
      }
docs: {@inheritDoc}