code: public static Optional<CmsModuleUpdater> create(CmsObject cms, String importFile, I_CmsReport report)
      throws CmsException {
  
          CmsModuleImportData moduleData = readModuleData(cms, importFile, report);
          if (moduleData.checkUpdatable(cms)) {
              return Optional.of(new CmsModuleUpdater(moduleData, report));
          } else {
              return Optional.empty();
          }
      }
docs: Tries to create a new updater instance.<p>
  
  If the module is deemed non-updatable, an empty result is returned.<p>
  
  @param cms the current CMS context
  @param importFile the import file path
  @param report the report to write to
  @return an optional module updater
  
  @throws CmsException if something goes wrong