src/core/net/sf/basedb/util/export/spotdata/AssayField.java

Code
Comments
Other
Rev Date Author Line
4925 08 May 09 nicklas 1 /**
4925 08 May 09 nicklas 2   $Id$
4925 08 May 09 nicklas 3
4925 08 May 09 nicklas 4   Copyright (C) 2009 Nicklas Nordborg
4925 08 May 09 nicklas 5
4925 08 May 09 nicklas 6   This file is part of BASE - BioArray Software Environment.
4925 08 May 09 nicklas 7   Available at http://base.thep.lu.se/
4925 08 May 09 nicklas 8
4925 08 May 09 nicklas 9   BASE is free software; you can redistribute it and/or
4925 08 May 09 nicklas 10   modify it under the terms of the GNU General Public License
4925 08 May 09 nicklas 11   as published by the Free Software Foundation; either version 3
4925 08 May 09 nicklas 12   of the License, or (at your option) any later version.
4925 08 May 09 nicklas 13
4925 08 May 09 nicklas 14   BASE is distributed in the hope that it will be useful,
4925 08 May 09 nicklas 15   but WITHOUT ANY WARRANTY; without even the implied warranty of
4925 08 May 09 nicklas 16   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
4925 08 May 09 nicklas 17   GNU General Public License for more details.
4925 08 May 09 nicklas 18
4925 08 May 09 nicklas 19   You should have received a copy of the GNU General Public License
4925 08 May 09 nicklas 20   along with BASE. If not, see <http://www.gnu.org/licenses/>.
4925 08 May 09 nicklas 21 */
4925 08 May 09 nicklas 22 package net.sf.basedb.util.export.spotdata;
4925 08 May 09 nicklas 23
4925 08 May 09 nicklas 24 import java.util.Collection;
4925 08 May 09 nicklas 25
4925 08 May 09 nicklas 26 import net.sf.basedb.core.BioAssay;
4925 08 May 09 nicklas 27 import net.sf.basedb.core.DbControl;
4925 08 May 09 nicklas 28 import net.sf.basedb.util.formatter.Formatter;
4925 08 May 09 nicklas 29
4925 08 May 09 nicklas 30 /**
4925 08 May 09 nicklas 31   Represents a bioassay field that is going to be exported. An implementation 
4925 08 May 09 nicklas 32   needs to provide the following information and services:
4925 08 May 09 nicklas 33   <ul>
4925 08 May 09 nicklas 34   <li>A way to extract the needed values based from a bioassay.
4925 08 May 09 nicklas 35   <li>A {@link Formatter} that is used to format the values that are
4925 08 May 09 nicklas 36     extracted before they are written to the file
4925 08 May 09 nicklas 37   <li>A title that is used as a column header for the data
4925 08 May 09 nicklas 38   </ul>
4925 08 May 09 nicklas 39
4925 08 May 09 nicklas 40
4925 08 May 09 nicklas 41   @author Nicklas
4925 08 May 09 nicklas 42   @version 2.12
4925 08 May 09 nicklas 43   @base.modified $Date$
4925 08 May 09 nicklas 44 */
4925 08 May 09 nicklas 45 public interface AssayField
4925 08 May 09 nicklas 46   extends ExportableField
4925 08 May 09 nicklas 47 {
4925 08 May 09 nicklas 48
4925 08 May 09 nicklas 49   /**
4925 08 May 09 nicklas 50     Get the values for the given bioassay.
4925 08 May 09 nicklas 51     @param dc The DbControl that is used for database access
4925 08 May 09 nicklas 52     @param assay The bioassay to get the value(s) from
4925 08 May 09 nicklas 53     
4925 08 May 09 nicklas 54     @return A collection with one or more values, or null or an
4925 08 May 09 nicklas 55       empty collection if there is no value for the given
4925 08 May 09 nicklas 56       bioassay
4925 08 May 09 nicklas 57   */
4925 08 May 09 nicklas 58   public Collection<?> getAssayValue(DbControl dc, BioAssay assay);
4925 08 May 09 nicklas 59   
5373 03 Aug 10 nicklas 60   /**
5373 03 Aug 10 nicklas 61     A boolean flag indicating if the field is an annotation or not.
5373 03 Aug 10 nicklas 62     @return TRUE if the field is an annotation, FALSE if not
5373 03 Aug 10 nicklas 63     @since 2.16
5373 03 Aug 10 nicklas 64   */
5373 03 Aug 10 nicklas 65   public boolean isAnnotation();
5373 03 Aug 10 nicklas 66   
4925 08 May 09 nicklas 67 }