Program: 166214
Project: 166214
Buggy source:
public SearchFilter getSearchFilter(HttpServletRequest request,List<SortField> sortFields){
  if (request == null) {
    return null;
  }
  SearchFilter ret=new SearchFilter();
  if (MapUtils.isEmpty(request.getParameterMap())) {
    ret.setParams(new HashMap<String,String>());
  }
  ret.setParam(SearchFilter.SERVICE_TYPE,request.getParameter(SearchFilter.SERVICE_TYPE));
  ret.setParam(SearchFilter.SERVICE_TYPE_ID,request.getParameter(SearchFilter.SERVICE_TYPE_ID));
  ret.setParam(SearchFilter.SERVICE_NAME,request.getParameter(SearchFilter.SERVICE_NAME));
  ret.setParam(SearchFilter.SERVICE_NAME_PARTIAL,request.getParameter(SearchFilter.SERVICE_NAME_PARTIAL));
  ret.setParam(SearchFilter.SERVICE_ID,request.getParameter(SearchFilter.SERVICE_ID));
  ret.setParam(SearchFilter.POLICY_NAME,request.getParameter(SearchFilter.POLICY_NAME));
  ret.setParam(SearchFilter.POLICY_NAME_PARTIAL,request.getParameter(SearchFilter.POLICY_NAME_PARTIAL));
  ret.setParam(SearchFilter.POLICY_ID,request.getParameter(SearchFilter.POLICY_ID));
  ret.setParam(SearchFilter.IS_ENABLED,request.getParameter(SearchFilter.IS_ENABLED));
  ret.setParam(SearchFilter.IS_RECURSIVE,request.getParameter(SearchFilter.IS_RECURSIVE));
  ret.setParam(SearchFilter.USER,request.getParameter(SearchFilter.USER));
  ret.setParam(SearchFilter.GROUP,request.getParameter(SearchFilter.GROUP));
  ret.setParam(SearchFilter.POL_RESOURCE,request.getParameter(SearchFilter.POL_RESOURCE));
  ret.setParam(SearchFilter.RESOURCE_SIGNATURE,request.getParameter(SearchFilter.RESOURCE_SIGNATURE));
  ret.setParam(SearchFilter.POLICY_TYPE,request.getParameter(SearchFilter.POLICY_TYPE));
  ret.setParam(SearchFilter.POLICY_LABEL,request.getParameter(SearchFilter.POLICY_LABEL));
  ret.setParam(SearchFilter.POLICY_LABELS_PARTIAL,request.getParameter(SearchFilter.POLICY_LABELS_PARTIAL));
  ret.setParam(SearchFilter.PLUGIN_HOST_NAME,request.getParameter(SearchFilter.PLUGIN_HOST_NAME));
  ret.setParam(SearchFilter.PLUGIN_APP_TYPE,request.getParameter(SearchFilter.PLUGIN_APP_TYPE));
  ret.setParam(SearchFilter.PLUGIN_ENTITY_TYPE,request.getParameter(SearchFilter.PLUGIN_ENTITY_TYPE));
  ret.setParam(SearchFilter.PLUGIN_IP_ADDRESS,request.getParameter(SearchFilter.PLUGIN_IP_ADDRESS));
  for (  Map.Entry<String,String[]> e : request.getParameterMap().entrySet()) {
    String name=e.getKey();
    String[] values=e.getValue();
    if (!StringUtils.isEmpty(name) && !ArrayUtils.isEmpty(values) && name.startsWith(SearchFilter.RESOURCE_PREFIX)) {
      ret.setParam(name,values[0]);
    }
  }
  ret.setParam(SearchFilter.RESOURCE_MATCH_SCOPE,request.getParameter(SearchFilter.RESOURCE_MATCH_SCOPE));
  extractCommonCriteriasForFilter(request,ret,sortFields);
  return ret;
}

Fixed version (ground truth):
public SearchFilter getSearchFilter(HttpServletRequest request,List<SortField> sortFields){
  Validate.notNull(request,"String_Node_Str");
  SearchFilter ret=new SearchFilter();
  if (MapUtils.isEmpty(request.getParameterMap())) {
    ret.setParams(new HashMap<String,String>());
  }
  ret.setParam(SearchFilter.SERVICE_TYPE,request.getParameter(SearchFilter.SERVICE_TYPE));
  ret.setParam(SearchFilter.SERVICE_TYPE_ID,request.getParameter(SearchFilter.SERVICE_TYPE_ID));
  ret.setParam(SearchFilter.SERVICE_NAME,request.getParameter(SearchFilter.SERVICE_NAME));
  ret.setParam(SearchFilter.SERVICE_NAME_PARTIAL,request.getParameter(SearchFilter.SERVICE_NAME_PARTIAL));
  ret.setParam(SearchFilter.SERVICE_ID,request.getParameter(SearchFilter.SERVICE_ID));
  ret.setParam(SearchFilter.POLICY_NAME,request.getParameter(SearchFilter.POLICY_NAME));
  ret.setParam(SearchFilter.POLICY_NAME_PARTIAL,request.getParameter(SearchFilter.POLICY_NAME_PARTIAL));
  ret.setParam(SearchFilter.POLICY_ID,request.getParameter(SearchFilter.POLICY_ID));
  ret.setParam(SearchFilter.IS_ENABLED,request.getParameter(SearchFilter.IS_ENABLED));
  ret.setParam(SearchFilter.IS_RECURSIVE,request.getParameter(SearchFilter.IS_RECURSIVE));
  ret.setParam(SearchFilter.USER,request.getParameter(SearchFilter.USER));
  ret.setParam(SearchFilter.GROUP,request.getParameter(SearchFilter.GROUP));
  ret.setParam(SearchFilter.POL_RESOURCE,request.getParameter(SearchFilter.POL_RESOURCE));
  ret.setParam(SearchFilter.RESOURCE_SIGNATURE,request.getParameter(SearchFilter.RESOURCE_SIGNATURE));
  ret.setParam(SearchFilter.POLICY_TYPE,request.getParameter(SearchFilter.POLICY_TYPE));
  ret.setParam(SearchFilter.POLICY_LABEL,request.getParameter(SearchFilter.POLICY_LABEL));
  ret.setParam(SearchFilter.POLICY_LABELS_PARTIAL,request.getParameter(SearchFilter.POLICY_LABELS_PARTIAL));
  ret.setParam(SearchFilter.PLUGIN_HOST_NAME,request.getParameter(SearchFilter.PLUGIN_HOST_NAME));
  ret.setParam(SearchFilter.PLUGIN_APP_TYPE,request.getParameter(SearchFilter.PLUGIN_APP_TYPE));
  ret.setParam(SearchFilter.PLUGIN_ENTITY_TYPE,request.getParameter(SearchFilter.PLUGIN_ENTITY_TYPE));
  ret.setParam(SearchFilter.PLUGIN_IP_ADDRESS,request.getParameter(SearchFilter.PLUGIN_IP_ADDRESS));
  for (  Map.Entry<String,String[]> e : request.getParameterMap().entrySet()) {
    String name=e.getKey();
    String[] values=e.getValue();
    if (!StringUtils.isEmpty(name) && !ArrayUtils.isEmpty(values) && name.startsWith(SearchFilter.RESOURCE_PREFIX)) {
      ret.setParam(name,values[0]);
    }
  }
  ret.setParam(SearchFilter.RESOURCE_MATCH_SCOPE,request.getParameter(SearchFilter.RESOURCE_MATCH_SCOPE));
  extractCommonCriteriasForFilter(request,ret,sortFields);
  return ret;
}