code: protected Map<String,String> translateParameters(Long processId, Map<String,Object> parameters)
      throws EventHandlerException {
          Map<String,String> stringParams = new HashMap<String,String>();
          if (parameters != null) {
              Process process = getProcessDefinition(processId);
              for (String key : parameters.keySet()) {
                  Object val = parameters.get(key);
                  Variable vo = process.getVariable(key);
                  if (vo == null)
                    throw new EventHandlerException("Variable '" + key + "' not found for process: " + process.getName() + " v" + process.getVersionString() + "(id=" + processId + ")");
  
                  if (val instanceof String) {
                      stringParams.put(key, (String)val);
                  }
                  else {
                      com.centurylink.mdw.variable.VariableTranslator translator = VariableTranslator.getTranslator(getPackage(), vo.getType());
                      if (translator instanceof DocumentReferenceTranslator) {
                          DocumentReferenceTranslator docTranslator = (DocumentReferenceTranslator)translator;
                          String docStr = docTranslator.realToString(val);
                          stringParams.put(key, docStr);
                      }
                      else {
                          stringParams.put(key, translator.toString(val));
                      }
                  }
              }
          }
          return stringParams;
      }
docs: Converts input params to Map<String,String> needed by the runtime engine.
  Values in the parameter map must not be null.