plugins/base2/uk.ac.ebi.tab2mage/trunk/AnnotationTypeCvImporter/src/uk/ac/ebi/nugo/common/ValueFormatter.java

Code
Comments
Other
Rev Date Author Line
390 14 Aug 07 dominic 1 /*
390 14 Aug 07 dominic 2 This file is for NutriBASE - Nutrigenomics BioArray Software Environment.
390 14 Aug 07 dominic 3   A customisation of the BASE SOFTWARE.
390 14 Aug 07 dominic 4   Developed at the EBI , Cambridge.
390 14 Aug 07 dominic 5   Author: Dominic Oyeniran: oyeniran@ebi.ac.uk
390 14 Aug 07 dominic 6   */
390 14 Aug 07 dominic 7 package uk.ac.ebi.nugo.common;
390 14 Aug 07 dominic 8
390 14 Aug 07 dominic 9 import java.text.SimpleDateFormat;
390 14 Aug 07 dominic 10 import java.util.Arrays;
390 14 Aug 07 dominic 11 import java.util.Date;
390 14 Aug 07 dominic 12 import java.util.List;
390 14 Aug 07 dominic 13 import java.util.regex.PatternSyntaxException;
390 14 Aug 07 dominic 14
390 14 Aug 07 dominic 15 import net.sf.basedb.core.BaseException;
390 14 Aug 07 dominic 16 /**
390 14 Aug 07 dominic 17   A utility class containing static methods for formatting parameter values.
390 14 Aug 07 dominic 18   @author Dominic Oyeniran
390 14 Aug 07 dominic 19   @email oyeniran@ebi.ac.uk
390 14 Aug 07 dominic 20   @version 1.0
390 14 Aug 07 dominic 21 */
390 14 Aug 07 dominic 22
390 14 Aug 07 dominic 23 public class ValueFormatter 
390 14 Aug 07 dominic 24   {
390 14 Aug 07 dominic 25   
390 14 Aug 07 dominic 26   private static final SimpleDateFormat DATE_FORMAT = new SimpleDateFormat("yyyy-MM-dd");
390 14 Aug 07 dominic 27   
390 14 Aug 07 dominic 28   /**
390 14 Aug 07 dominic 29    * Convert a string value with a delimeter into a list 
390 14 Aug 07 dominic 30    * @param values, the values to convert
390 14 Aug 07 dominic 31    * @param delimeter, the delimeter in the string
390 14 Aug 07 dominic 32    * @return the list of string values
390 14 Aug 07 dominic 33    */
390 14 Aug 07 dominic 34   public static final String getStringRemoveSpace(String values, String delimeter)
390 14 Aug 07 dominic 35   {
390 14 Aug 07 dominic 36     String value ="";
390 14 Aug 07 dominic 37     List<String> val;
390 14 Aug 07 dominic 38     String[] result;
390 14 Aug 07 dominic 39     if (values != null ) 
390 14 Aug 07 dominic 40     {
390 14 Aug 07 dominic 41       try
390 14 Aug 07 dominic 42       {
390 14 Aug 07 dominic 43         result =values.split(delimeter);
390 14 Aug 07 dominic 44         val= Arrays.asList(result);
390 14 Aug 07 dominic 45         for (String v : val)
390 14 Aug 07 dominic 46         {
390 14 Aug 07 dominic 47           value= value.concat(v);
390 14 Aug 07 dominic 48         }
390 14 Aug 07 dominic 49       }
390 14 Aug 07 dominic 50       catch(PatternSyntaxException pse)
390 14 Aug 07 dominic 51       {
390 14 Aug 07 dominic 52         new NutribasePluginException(pse.getMessage());
390 14 Aug 07 dominic 53       }
390 14 Aug 07 dominic 54     }
390 14 Aug 07 dominic 55     return  value;
390 14 Aug 07 dominic 56   }
390 14 Aug 07 dominic 57   /**
390 14 Aug 07 dominic 58    This methods handle null values and change them into an empty string
390 14 Aug 07 dominic 59    @param obj, the value to convert into an empty string
390 14 Aug 07 dominic 60    @return an empty string
390 14 Aug 07 dominic 61   */
390 14 Aug 07 dominic 62   public static final Object  getEmptyStringIfNull (Object obj)
390 14 Aug 07 dominic 63   {
390 14 Aug 07 dominic 64     String empty="";
390 14 Aug 07 dominic 65     if (obj == null){
390 14 Aug 07 dominic 66       obj=empty;
390 14 Aug 07 dominic 67     } 
390 14 Aug 07 dominic 68     if (obj instanceof Date)
390 14 Aug 07 dominic 69     {
390 14 Aug 07 dominic 70       obj=DATE_FORMAT.format(obj);
390 14 Aug 07 dominic 71     }
390 14 Aug 07 dominic 72     return obj;  
390 14 Aug 07 dominic 73   }
390 14 Aug 07 dominic 74
390 14 Aug 07 dominic 75   /**
390 14 Aug 07 dominic 76    * Convert a string value with a delimeter into a list 
390 14 Aug 07 dominic 77    * @param values, the values to convert
390 14 Aug 07 dominic 78    * @param delimeter, the delimeter in the string
390 14 Aug 07 dominic 79    * @return the list of string values
390 14 Aug 07 dominic 80    */
390 14 Aug 07 dominic 81   public static final List<String> getList(String values, String delimeter)
390 14 Aug 07 dominic 82   {
390 14 Aug 07 dominic 83     List<String> value = null;
390 14 Aug 07 dominic 84     String[] result;
390 14 Aug 07 dominic 85     if (values != null ) 
390 14 Aug 07 dominic 86     {
390 14 Aug 07 dominic 87       try
390 14 Aug 07 dominic 88       {
390 14 Aug 07 dominic 89         result =values.split(delimeter);
390 14 Aug 07 dominic 90         value= Arrays.asList(result);
390 14 Aug 07 dominic 91       }
390 14 Aug 07 dominic 92       catch(PatternSyntaxException pse)
390 14 Aug 07 dominic 93       {
390 14 Aug 07 dominic 94         new BaseException(pse.getMessage());
390 14 Aug 07 dominic 95       }
390 14 Aug 07 dominic 96     }
390 14 Aug 07 dominic 97     return  value;
390 14 Aug 07 dominic 98   }
390 14 Aug 07 dominic 99   
390 14 Aug 07 dominic 100     
390 14 Aug 07 dominic 101
390 14 Aug 07 dominic 102 }