public String getUniqueID() {
   try {
     return searchResult.getEmailId().getUniqueID();
   } catch (MessageSearchException mse) {
     logger.debug("failed to retrieve unique message id: " + mse.getMessage(), mse);
     return null;
   }
 }
 public String getVolumeID() {
   try {
     EmailID emailID = searchResult.getEmailId();
     Volume volume = emailID.getVolume();
     if (volume != null) {
       String volumeID = volume.getID();
       return volumeID;
     } else return null;
   } catch (MessageSearchException mse) {
     logger.debug("failed to retrieve volumeid: " + mse.getMessage(), mse);
     return null;
   }
   // return searchResult.getEmailId().getVolume().getID();
 }
 public List<DisplayField> getFieldValues() {
   ArrayList<DisplayField> list = new ArrayList<DisplayField>();
   EmailFields emailFields = Config.getConfig().getEmailFields();
   for (EmailField field : emailFields.getAvailableFields().values()) {
     if (field.getShowInResults() != EmailField.ShowInResults.NORESULTS) {
       try {
         EmailFieldValue efv = searchResult.getFieldValue(field.getName());
         list.add(DisplayField.getDisplayField(efv, locale, false));
       } catch (MessageSearchException mse) {
         logger.debug("failed to retrieve field value from message: " + mse.getMessage());
       }
     }
   }
   return list;
 }