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

Code
Comments
Other
Rev Date Author Line
1188 11 Feb 10 jari 1 /* $Id$
1188 11 Feb 10 jari 2
1188 11 Feb 10 jari 3   Copyright (C) 2007, 2010 Authors contributing to this file.
1188 11 Feb 10 jari 4
1188 11 Feb 10 jari 5   This file is for NutriBASE - Nutrigenomics BioArray Software Environment.
396 15 Aug 07 dominic 6   A customisation of the BASE SOFTWARE.
1188 11 Feb 10 jari 7   
1188 11 Feb 10 jari 8   BASE is free software; you can redistribute it and/or
1188 11 Feb 10 jari 9   modify it under the terms of the GNU General Public License
1188 11 Feb 10 jari 10   as published by the Free Software Foundation; either version 2
1188 11 Feb 10 jari 11   of the License, or (at your option) any later version.
1188 11 Feb 10 jari 12
1188 11 Feb 10 jari 13   BASE is distributed in the hope that it will be useful,
1188 11 Feb 10 jari 14   but WITHOUT ANY WARRANTY; without even the implied warranty of
1188 11 Feb 10 jari 15   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
1188 11 Feb 10 jari 16   GNU General Public License for more details.
1188 11 Feb 10 jari 17
1188 11 Feb 10 jari 18   You should have received a copy of the GNU General Public License
1188 11 Feb 10 jari 19   along with this program; if not, write to the Free Software
1188 11 Feb 10 jari 20   Foundation, Inc., 59 Temple Place - Suite 330,
1188 11 Feb 10 jari 21   Boston, MA  02111-1307, USA.
1188 11 Feb 10 jari 22 */
1188 11 Feb 10 jari 23
396 15 Aug 07 dominic 24 package uk.ac.ebi.nugo.common;
396 15 Aug 07 dominic 25
396 15 Aug 07 dominic 26 import java.text.SimpleDateFormat;
396 15 Aug 07 dominic 27 import java.util.Arrays;
396 15 Aug 07 dominic 28 import java.util.Date;
396 15 Aug 07 dominic 29 import java.util.List;
396 15 Aug 07 dominic 30 import java.util.regex.PatternSyntaxException;
396 15 Aug 07 dominic 31
396 15 Aug 07 dominic 32 import net.sf.basedb.core.BaseException;
396 15 Aug 07 dominic 33 /**
396 15 Aug 07 dominic 34   A utility class containing static methods for formatting parameter values.
396 15 Aug 07 dominic 35   @author Dominic Oyeniran
396 15 Aug 07 dominic 36   @email oyeniran@ebi.ac.uk
396 15 Aug 07 dominic 37   @version 1.0
1188 11 Feb 10 jari 38   
1188 11 Feb 10 jari 39   
1188 11 Feb 10 jari 40   @author Gildas Le Corguillé
1188 11 Feb 10 jari 41   @email lecorguille@sb-roscoff.fr
1188 11 Feb 10 jari 42   @version 1.01
1188 11 Feb 10 jari 43   
1188 11 Feb 10 jari 44   ChangeLog :
1188 11 Feb 10 jari 45     05/02/2010 - lecorguille : addition of getStringWithoutLineBreaker()
396 15 Aug 07 dominic 46 */
396 15 Aug 07 dominic 47
396 15 Aug 07 dominic 48 public class ValueFormatter 
396 15 Aug 07 dominic 49   {
396 15 Aug 07 dominic 50   
1188 11 Feb 10 jari 51   public static final SimpleDateFormat DATE_FORMAT = new SimpleDateFormat("yyyy-MM-dd");
396 15 Aug 07 dominic 52   
396 15 Aug 07 dominic 53   /**
396 15 Aug 07 dominic 54    * Convert a string value with a delimeter into a list 
396 15 Aug 07 dominic 55    * @param values, the values to convert
396 15 Aug 07 dominic 56    * @param delimeter, the delimeter in the string
396 15 Aug 07 dominic 57    * @return the list of string values
396 15 Aug 07 dominic 58    */
396 15 Aug 07 dominic 59   public static final String getStringRemoveSpace(String values, String delimeter)
396 15 Aug 07 dominic 60   {
396 15 Aug 07 dominic 61     String value ="";
396 15 Aug 07 dominic 62     List<String> val;
396 15 Aug 07 dominic 63     String[] result;
396 15 Aug 07 dominic 64     if (values != null ) 
396 15 Aug 07 dominic 65     {
396 15 Aug 07 dominic 66       try
396 15 Aug 07 dominic 67       {
396 15 Aug 07 dominic 68         result =values.split(delimeter);
396 15 Aug 07 dominic 69         val= Arrays.asList(result);
396 15 Aug 07 dominic 70         for (String v : val)
396 15 Aug 07 dominic 71         {
396 15 Aug 07 dominic 72           value= value.concat(v);
396 15 Aug 07 dominic 73         }
396 15 Aug 07 dominic 74       }
396 15 Aug 07 dominic 75       catch(PatternSyntaxException pse)
396 15 Aug 07 dominic 76       {
396 15 Aug 07 dominic 77         new NutribasePluginException(pse.getMessage());
396 15 Aug 07 dominic 78       }
396 15 Aug 07 dominic 79     }
396 15 Aug 07 dominic 80     return  value;
396 15 Aug 07 dominic 81   }
396 15 Aug 07 dominic 82   /**
396 15 Aug 07 dominic 83    This methods handle null values and change them into an empty string
396 15 Aug 07 dominic 84    @param obj, the value to convert into an empty string
396 15 Aug 07 dominic 85    @return an empty string
396 15 Aug 07 dominic 86   */
396 15 Aug 07 dominic 87   public static final Object  getEmptyStringIfNull (Object obj)
396 15 Aug 07 dominic 88   {
396 15 Aug 07 dominic 89     String empty="";
396 15 Aug 07 dominic 90     if (obj == null){
396 15 Aug 07 dominic 91       obj=empty;
396 15 Aug 07 dominic 92     } 
396 15 Aug 07 dominic 93     if (obj instanceof Date)
396 15 Aug 07 dominic 94     {
396 15 Aug 07 dominic 95       obj=DATE_FORMAT.format(obj);
396 15 Aug 07 dominic 96     }
396 15 Aug 07 dominic 97     return obj;  
396 15 Aug 07 dominic 98   }
1188 11 Feb 10 jari 99   
1188 11 Feb 10 jari 100   /** 
1188 11 Feb 10 jari 101    * @author lecorguille
1188 11 Feb 10 jari 102    This methods replace line breakers by space or nothing
1188 11 Feb 10 jari 103    @param str<String>
1188 11 Feb 10 jari 104    @return <String>
1188 11 Feb 10 jari 105   */
1188 11 Feb 10 jari 106   public static final String  getStringWithoutLineBreaker (String str)
1188 11 Feb 10 jari 107   {
1188 11 Feb 10 jari 108     String myreturn = new String();
1188 11 Feb 10 jari 109     if (str != null && str != ""){
1188 11 Feb 10 jari 110       myreturn = str.replaceAll("\n", " ").replaceAll("\r", "");
1188 11 Feb 10 jari 111     }
1188 11 Feb 10 jari 112     return myreturn;  
1188 11 Feb 10 jari 113   }
396 15 Aug 07 dominic 114
396 15 Aug 07 dominic 115   /**
396 15 Aug 07 dominic 116    * Convert a string value with a delimeter into a list 
396 15 Aug 07 dominic 117    * @param values, the values to convert
396 15 Aug 07 dominic 118    * @param delimeter, the delimeter in the string
396 15 Aug 07 dominic 119    * @return the list of string values
396 15 Aug 07 dominic 120    */
396 15 Aug 07 dominic 121   public static final List<String> getList(String values, String delimeter)
396 15 Aug 07 dominic 122   {
396 15 Aug 07 dominic 123     List<String> value = null;
396 15 Aug 07 dominic 124     String[] result;
396 15 Aug 07 dominic 125     if (values != null ) 
396 15 Aug 07 dominic 126     {
396 15 Aug 07 dominic 127       try
396 15 Aug 07 dominic 128       {
396 15 Aug 07 dominic 129         result =values.split(delimeter);
396 15 Aug 07 dominic 130         value= Arrays.asList(result);
396 15 Aug 07 dominic 131       }
396 15 Aug 07 dominic 132       catch(PatternSyntaxException pse)
396 15 Aug 07 dominic 133       {
396 15 Aug 07 dominic 134         new BaseException(pse.getMessage());
396 15 Aug 07 dominic 135       }
396 15 Aug 07 dominic 136     }
396 15 Aug 07 dominic 137     return  value;
396 15 Aug 07 dominic 138   }
396 15 Aug 07 dominic 139
1188 11 Feb 10 jari 140 }