Exemple #1
0
  private void initializeController(DynamicQueryContext env, Controller controller) {
    HashMap parameters = env.getParameters();
    if (parameters != null) {
      Iterator iter = parameters.keySet().iterator();
      while (iter.hasNext()) {
        String paramName = (String) iter.next();
        Object paramValue = parameters.get(paramName);
        controller.setParameter(paramName, paramValue);
      }
    }

    controller.setURIResolver(env.getURIResolver());
    controller.setErrorListener(env.getErrorListener());
    controller.addTraceListener(env.getTraceListener());
    controller.setTraceFunctionDestination(env.getTraceFunctionDestination());
    DateTimeValue currentDateTime = env.getCurrentDateTime();
    if (currentDateTime != null) {
      try {
        controller.setCurrentDateTime(currentDateTime);
      } catch (XPathException e) {
        throw new AssertionError(e); // the value should already have been checked
      }
    }
  }