/**
  * invokes a service call to get the header information for a single survey
  *
  * @param serverBase
  * @param surveyId
  * @return
  */
 private ArrayList<Survey> getSurveyHeader(String serverBase, String surveyId, String deviceId) {
   String response = null;
   ArrayList<Survey> surveys = new ArrayList<Survey>();
   try {
     response =
         HttpUtil.httpGet(
             serverBase
                 + SURVEY_HEADER_SERVICE_PATH
                 + surveyId
                 + "&devicePhoneNumber="
                 + StatusUtil.getPhoneNumber(this)
                 + (deviceId != null
                     ? (DEV_ID_PARAM + URLEncoder.encode(deviceId, "UTF-8"))
                     : ""));
     if (response != null) {
       StringTokenizer strTok = new StringTokenizer(response, "\n");
       while (strTok.hasMoreTokens()) {
         String currentLine = strTok.nextToken();
         String[] touple = currentLine.split(",");
         if (touple.length < 4) {
           Log.e(TAG, "Survey list response is in an unrecognized format");
         } else {
           Survey temp = new Survey();
           temp.setId(touple[0]);
           temp.setName(touple[1]);
           temp.setLanguage(touple[2]);
           temp.setVersion(Double.parseDouble(touple[3]));
           temp.setType(ConstantUtil.FILE_SURVEY_LOCATION_TYPE);
           surveys.add(temp);
         }
       }
     }
   } catch (HttpException e) {
     Log.e(TAG, "Server returned an unexpected response", e);
     PersistentUncaughtExceptionHandler.recordException(e);
   } catch (Exception e) {
     Log.e(TAG, "Could not get survey headers", e);
     PersistentUncaughtExceptionHandler.recordException(e);
   }
   return surveys;
 }