code: @Override
      public String evaluate(String request) throws EvaluationException {
          logger.debug("evaluating request: {}", request);
  
          RequestCtx req = null;
          ByteArrayInputStream is = new ByteArrayInputStream(request.getBytes());
  
          try {
              req = BasicRequestCtx.getInstance(is);
          } catch (ParsingException pe) {
              logger.error("Error parsing request:\n" + request, pe);
              throw new EvaluationException("Error parsing request:\n" + request);
          }
  
          ResponseCtx res = evaluate(req);
          ByteArrayOutputStream os = new ByteArrayOutputStream();
          res.encode(os, new Indenter());
  
          if (logger.isDebugEnabled()) {
              logger.debug("response is: {}", os.toString());
          }
          return os.toString();
      }
docs: /*
  (non-Javadoc)
  @see org.fcrepo.server.security.xacml.pdp.MelcoePDP#evaluate(java.lang.String)