Пример #1
0
  @Override
  public SearchEngine getSearchEngine(PageContext pc) throws PageException {
    if (searchEngine == null) {
      try {
        Object o = ClassUtil.loadInstance(getSearchEngineClassDefinition().getClazz());
        if (o instanceof SearchEngine) searchEngine = (SearchEngine) o;
        else
          throw new ApplicationException(
              "class ["
                  + o.getClass().getName()
                  + "] does not implement the interface SearchEngine");

        searchEngine.init(
            this,
            ConfigWebUtil.getFile(
                getConfigDir(),
                ConfigWebUtil.translateOldPath(getSearchEngineDirectory()),
                "search",
                getConfigDir(),
                FileUtil.TYPE_DIR,
                this));
      } catch (Exception e) {
        throw Caster.toPageException(e);
      }
    }
    return searchEngine;
  }