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

Code
Comments
Other
Rev Date Author Line
1188 11 Feb 10 jari 1 /* $Id$
449 30 Oct 07 dominic 2
1188 11 Feb 10 jari 3   Copyright (C) 2007, 2010 Authors contributing to this file.
1188 11 Feb 10 jari 4
449 30 Oct 07 dominic 5   This file is for NutriBASE - Nutrigenomics BioArray Software Environment.
449 30 Oct 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.
449 30 Oct 07 dominic 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.util.Collections;
396 15 Aug 07 dominic 27 import java.util.EnumSet;
396 15 Aug 07 dominic 28 import java.util.Set;
396 15 Aug 07 dominic 29
396 15 Aug 07 dominic 30
396 15 Aug 07 dominic 31 /**
396 15 Aug 07 dominic 32    Constants for the Tab2Mage export/import.
396 15 Aug 07 dominic 33   @author Dominic  Oyeniran
396 15 Aug 07 dominic 34   @version 1.0
1188 11 Feb 10 jari 35   
1188 11 Feb 10 jari 36   
1188 11 Feb 10 jari 37   @author Gildas Le Corguillé
1188 11 Feb 10 jari 38   @email lecorguille@sb-roscoff.fr
1188 11 Feb 10 jari 39   @version 1.01
1188 11 Feb 10 jari 40   
1188 11 Feb 10 jari 41   ChangeLog : 
1188 11 Feb 10 jari 42     05/02/2010 - lecorguille : addition of Scan
1188 11 Feb 10 jari 43     08/02/2010 - lecorguille : addition of BioSourceDescription
1188 11 Feb 10 jari 44   
396 15 Aug 07 dominic 45  */
396 15 Aug 07 dominic 46 public enum Tab2MageConstants 
396 15 Aug 07 dominic 47 {
396 15 Aug 07 dominic 48   //declare the constants
396 15 Aug 07 dominic 49   /**
396 15 Aug 07 dominic 50       the domain tag is information on the originator of the tab2mage export document
396 15 Aug 07 dominic 51    */
396 15 Aug 07 dominic 52   domain(1, "domain"),
396 15 Aug 07 dominic 53   /**
396 15 Aug 07 dominic 54      The experiment accession number.
396 15 Aug 07 dominic 55    */
396 15 Aug 07 dominic 56   accession(2,"accession\tE-BASE-"),
396 15 Aug 07 dominic 57   /**
396 15 Aug 07 dominic 58      This is a comma-separated list of terms taken from the MGED ontology.
396 15 Aug 07 dominic 59    */
396 15 Aug 07 dominic 60   quality_control(3,"quality_control"),
396 15 Aug 07 dominic 61   /**
396 15 Aug 07 dominic 62      the design type of the experiment.
396 15 Aug 07 dominic 63    */
396 15 Aug 07 dominic 64   experiment_design_type(4,"experiment_design_type"),
396 15 Aug 07 dominic 65   /**
396 15 Aug 07 dominic 66     the expriment name.
396 15 Aug 07 dominic 67    */
396 15 Aug 07 dominic 68   experiment_name(5,"name"),
396 15 Aug 07 dominic 69   /**
396 15 Aug 07 dominic 70     the expriment description.
396 15 Aug 07 dominic 71   */
396 15 Aug 07 dominic 72   description(6,"description"),
396 15 Aug 07 dominic 73   /**
396 15 Aug 07 dominic 74     the date of public release for the expriment. 
396 15 Aug 07 dominic 75    */
396 15 Aug 07 dominic 76   release_date(7,"release_date"),
396 15 Aug 07 dominic 77   /**
396 15 Aug 07 dominic 78     the experiment submission date.  
396 15 Aug 07 dominic 79    */
396 15 Aug 07 dominic 80   submission_date(8,"submission_date"),
396 15 Aug 07 dominic 81   /**
396 15 Aug 07 dominic 82     the experiment submitter.  
396 15 Aug 07 dominic 83    */
396 15 Aug 07 dominic 84   submitter(9,"submitter"),
396 15 Aug 07 dominic 85   /**
396 15 Aug 07 dominic 86     the experiment submitter's email.  
396 15 Aug 07 dominic 87    */
396 15 Aug 07 dominic 88   submitter_email(10,"submitter_email"),
396 15 Aug 07 dominic 89   /**
396 15 Aug 07 dominic 90     the organisation the experiment submitter is affliated  
396 15 Aug 07 dominic 91    */
396 15 Aug 07 dominic 92   organization(11,"organization"),
396 15 Aug 07 dominic 93   /**
396 15 Aug 07 dominic 94     the experiment publication title  
396 15 Aug 07 dominic 95    */
396 15 Aug 07 dominic 96   publication_title(12,"publication_title"),  
396 15 Aug 07 dominic 97   /**
396 15 Aug 07 dominic 98     the authors of the publication title  
396 15 Aug 07 dominic 99    */
396 15 Aug 07 dominic 100   authors(13,"authors"),
396 15 Aug 07 dominic 101   /**
396 15 Aug 07 dominic 102     the journal name  
396 15 Aug 07 dominic 103    */
396 15 Aug 07 dominic 104   journal(14,"journal"),  
396 15 Aug 07 dominic 105   /**
396 15 Aug 07 dominic 106     the journal volume  
396 15 Aug 07 dominic 107    */
396 15 Aug 07 dominic 108   volume(15,"volume"),
396 15 Aug 07 dominic 109   /**
396 15 Aug 07 dominic 110     the jouirnal issue  
396 15 Aug 07 dominic 111    */
396 15 Aug 07 dominic 112   issue(16,"issue"),
396 15 Aug 07 dominic 113   /**
396 15 Aug 07 dominic 114     the journal pages  
396 15 Aug 07 dominic 115    */
396 15 Aug 07 dominic 116   pages(17,"pages"),
396 15 Aug 07 dominic 117   /**
396 15 Aug 07 dominic 118     the year of publication  
396 15 Aug 07 dominic 119    */
396 15 Aug 07 dominic 120   year(18,"year"),
396 15 Aug 07 dominic 121   /**
396 15 Aug 07 dominic 122     the pub med id  
396 15 Aug 07 dominic 123    */
396 15 Aug 07 dominic 124   pubmed_id(19,"pubmed_id"),
396 15 Aug 07 dominic 125   
396 15 Aug 07 dominic 126   raw_file(20,"File[raw]"),
396 15 Aug 07 dominic 127   
396 15 Aug 07 dominic 128   cdf_file(21,"File[cdf]"),
396 15 Aug 07 dominic 129   
396 15 Aug 07 dominic 130   exp_file(22, "File[exp]"),
396 15 Aug 07 dominic 131   
396 15 Aug 07 dominic 132   normalised_file(23, "File[normalized]"),
396 15 Aug 07 dominic 133   
396 15 Aug 07 dominic 134   transformed_file(24, "File[transformed]"),
396 15 Aug 07 dominic 135   
396 15 Aug 07 dominic 136   array_accession(25,"Array[accession]"),
396 15 Aug 07 dominic 137   
396 15 Aug 07 dominic 138   array_serial(26,"Array[serial]"),
396 15 Aug 07 dominic 139   
1188 11 Feb 10 jari 140   scan(52, "Scan"),
1188 11 Feb 10 jari 141   
396 15 Aug 07 dominic 142   hybridization(27, "Hybridization"),
396 15 Aug 07 dominic 143   
396 15 Aug 07 dominic 144   labeledextract(28, "LabeledExtract"),
396 15 Aug 07 dominic 145           
396 15 Aug 07 dominic 146   dye(29, "Dye"),
396 15 Aug 07 dominic 147   
396 15 Aug 07 dominic 148   extract(30,"Extract"),
396 15 Aug 07 dominic 149            
396 15 Aug 07 dominic 150   sample(31, "Sample"),
396 15 Aug 07 dominic 151   
396 15 Aug 07 dominic 152   biosource(32, "BioSource"),
396 15 Aug 07 dominic 153   
1188 11 Feb 10 jari 154   biosourcedescription(32, "BioSourceDescription"),
1188 11 Feb 10 jari 155   
396 15 Aug 07 dominic 156   protocol_transformation(33,"Protocol[transformation]"),
396 15 Aug 07 dominic 157   /**
396 15 Aug 07 dominic 158      The procedure used to derive normalized data from the raw data.
396 15 Aug 07 dominic 159    */
396 15 Aug 07 dominic 160   protocol_normalisation(34,"Protocol[normalization]"),
396 15 Aug 07 dominic 161   /**
396 15 Aug 07 dominic 162      The protocol used in the feature extraction step in which 
396 15 Aug 07 dominic 163      the scanned image is converted into raw numerical data.
396 15 Aug 07 dominic 164    */
396 15 Aug 07 dominic 165   protocol_featureextraction(35,"Protocol[image_analysis]"),
396 15 Aug 07 dominic 166   /**
396 15 Aug 07 dominic 167      The protocol by which the hybridized array is imaged.
396 15 Aug 07 dominic 168    */
396 15 Aug 07 dominic 169   protocol_scanning(36,"Protocol[scanning]"),
396 15 Aug 07 dominic 170   /**
396 15 Aug 07 dominic 171      The protocol used to hybridize the labeled extract to the array.
396 15 Aug 07 dominic 172    */
396 15 Aug 07 dominic 173   protocol_hyb(37,  "Protocol[hybridization]"),
396 15 Aug 07 dominic 174   
396 15 Aug 07 dominic 175   protocol_immunoprecipitate(38,"Protocol[immunoprecipitate]"),
396 15 Aug 07 dominic 176   
396 15 Aug 07 dominic 177   /**
396 15 Aug 07 dominic 178      The protocol used to derive the labeled extract from the label.
396 15 Aug 07 dominic 179    */
396 15 Aug 07 dominic 180   protocol_labeling(39,"Protocol[labeling]"),
396 15 Aug 07 dominic 181   
396 15 Aug 07 dominic 182   protocol_pool(40, "Protocol[pool]"),
396 15 Aug 07 dominic 183   
396 15 Aug 07 dominic 184   /**
396 15 Aug 07 dominic 185      The method by which nucleic acid is extracted from the sample.
396 15 Aug 07 dominic 186    */
396 15 Aug 07 dominic 187   protocol_extraction(41,"Protocol[extraction]"),
396 15 Aug 07 dominic 188   
396 15 Aug 07 dominic 189   /**
396 15 Aug 07 dominic 190      This is a general-purpose protocol type describing any treatments of 
396 15 Aug 07 dominic 191      the sample prior to extraction (e.g., administration of drugs, tissue dissection etc.).
396 15 Aug 07 dominic 192    */  
396 15 Aug 07 dominic 193   protocol_treatment(42,"Protocol[treatment]"),
396 15 Aug 07 dominic 194   
396 15 Aug 07 dominic 195   /**
396 15 Aug 07 dominic 196      the protocol used to propagate the biosource
396 15 Aug 07 dominic 197    */
396 15 Aug 07 dominic 198   protocol_grow(43,"Protocol[grow]"),
396 15 Aug 07 dominic 199
396 15 Aug 07 dominic 200   /**
396 15 Aug 07 dominic 201      The hybridization row delimeter for affymetrics and two channel experimnet
396 15 Aug 07 dominic 202    */
396 15 Aug 07 dominic 203   
396 15 Aug 07 dominic 204   hybrow_delimeter(44,"-done-"),
396 15 Aug 07 dominic 205   /**
396 15 Aug 07 dominic 206      The hybridization row delimeter during pooling
396 15 Aug 07 dominic 207    */
396 15 Aug 07 dominic 208   
396 15 Aug 07 dominic 209   poolhybrow_delimeter(45,"--*poolend*--"),
396 15 Aug 07 dominic 210   
396 15 Aug 07 dominic 211   /**
396 15 Aug 07 dominic 212      The protocol parameters delimeter
396 15 Aug 07 dominic 213    */
396 15 Aug 07 dominic 214   protocol_parameter_delimeter(46,";"),
396 15 Aug 07 dominic 215   /**
396 15 Aug 07 dominic 216      The Biomaterialxteristics header
396 15 Aug 07 dominic 217    */
396 15 Aug 07 dominic 218   bio_mat_charact(47, "BioMaterialCharacteristics"),
396 15 Aug 07 dominic 219   
396 15 Aug 07 dominic 220   /**
396 15 Aug 07 dominic 221      The factor values header
396 15 Aug 07 dominic 222    */
396 15 Aug 07 dominic 223   factor_value(48, "FactorValue"),
396 15 Aug 07 dominic 224   
396 15 Aug 07 dominic 225   /**
396 15 Aug 07 dominic 226      The parameter header 
396 15 Aug 07 dominic 227    */
449 30 Oct 07 dominic 228   parameter(49, "Parameter"),
396 15 Aug 07 dominic 229   
396 15 Aug 07 dominic 230   /**
449 30 Oct 07 dominic 231      The protocol header
449 30 Oct 07 dominic 232    */
449 30 Oct 07 dominic 233   protocol(50, "Protocol"),
449 30 Oct 07 dominic 234   
449 30 Oct 07 dominic 235   /**
449 30 Oct 07 dominic 236      nucleic acid extraction
449 30 Oct 07 dominic 237    */
449 30 Oct 07 dominic 238   nucleicacidextraction(51, "Nucleic_Acid_Extraction");
449 30 Oct 07 dominic 239   ;
449 30 Oct 07 dominic 240   
449 30 Oct 07 dominic 241   /**
396 15 Aug 07 dominic 242       Tab2Mage Constant enum constructor
396 15 Aug 07 dominic 243       @param constId
396 15 Aug 07 dominic 244       @param constName
396 15 Aug 07 dominic 245    */
396 15 Aug 07 dominic 246   //enum constructor
396 15 Aug 07 dominic 247   Tab2MageConstants(int constId, String constName)
396 15 Aug 07 dominic 248   {
396 15 Aug 07 dominic 249     name= constName;
396 15 Aug 07 dominic 250     id= constId;
396 15 Aug 07 dominic 251   }
396 15 Aug 07 dominic 252   
396 15 Aug 07 dominic 253   //instance fields
396 15 Aug 07 dominic 254   private final String name;
396 15 Aug 07 dominic 255   private final int id;
396 15 Aug 07 dominic 256   
396 15 Aug 07 dominic 257   /**
396 15 Aug 07 dominic 258     get the name of this constant, that should be used as header.
396 15 Aug 07 dominic 259    */
396 15 Aug 07 dominic 260   public String getName() 
396 15 Aug 07 dominic 261   {
396 15 Aug 07 dominic 262     return name;
396 15 Aug 07 dominic 263   }
396 15 Aug 07 dominic 264   /**
396 15 Aug 07 dominic 265     get the id of this constants.
396 15 Aug 07 dominic 266    */
396 15 Aug 07 dominic 267   public int getId() 
396 15 Aug 07 dominic 268   {
396 15 Aug 07 dominic 269     return id;
396 15 Aug 07 dominic 270   }
396 15 Aug 07 dominic 271
396 15 Aug 07 dominic 272   /**
396 15 Aug 07 dominic 273       gets set of protocol constants. these are mostly protocols allowed in the tab2mage specification
396 15 Aug 07 dominic 274       @return Set<Tab2MageConstants> the protocol contants  
396 15 Aug 07 dominic 275    */
396 15 Aug 07 dominic 276   public static Set<Tab2MageConstants> protocolContants() throws UnsupportedOperationException
396 15 Aug 07 dominic 277   {
396 15 Aug 07 dominic 278     return Collections.unmodifiableSet(EnumSet.range(protocol_transformation, protocol_grow));
396 15 Aug 07 dominic 279     
396 15 Aug 07 dominic 280   }
396 15 Aug 07 dominic 281   /**
396 15 Aug 07 dominic 282     gets set of experiment constants
396 15 Aug 07 dominic 283     @return Set<Tab2MageConstants> the experiment constants 
396 15 Aug 07 dominic 284    */
396 15 Aug 07 dominic 285   
396 15 Aug 07 dominic 286   public static Set<Tab2MageConstants> experimentContants()throws UnsupportedOperationException
396 15 Aug 07 dominic 287   {
396 15 Aug 07 dominic 288     return Collections.unmodifiableSet(EnumSet.range(domain, pubmed_id));
396 15 Aug 07 dominic 289     
396 15 Aug 07 dominic 290   }
396 15 Aug 07 dominic 291   /**
396 15 Aug 07 dominic 292     gets set of data file and array information constants
396 15 Aug 07 dominic 293     @return Set<Tab2MageConstants> the data file and array constants 
396 15 Aug 07 dominic 294    */
396 15 Aug 07 dominic 295   public static Set<Tab2MageConstants> dataFileAndArrayContants()throws UnsupportedOperationException
396 15 Aug 07 dominic 296   {
396 15 Aug 07 dominic 297     return Collections.unmodifiableSet(EnumSet.range(raw_file, array_serial));
396 15 Aug 07 dominic 298     
396 15 Aug 07 dominic 299   }
396 15 Aug 07 dominic 300   /**
396 15 Aug 07 dominic 301     gets set of material and processes constants
396 15 Aug 07 dominic 302     @return Set<Tab2MageConstants> the set of material and processed constants 
396 15 Aug 07 dominic 303    */
396 15 Aug 07 dominic 304   
396 15 Aug 07 dominic 305   public static Set<Tab2MageConstants> materialAndProcessesContants()throws UnsupportedOperationException
396 15 Aug 07 dominic 306   {
396 15 Aug 07 dominic 307     return Collections.unmodifiableSet(EnumSet.range(hybridization, biosource));
396 15 Aug 07 dominic 308     
396 15 Aug 07 dominic 309   }
396 15 Aug 07 dominic 310 }