001    /*
002     * CSVFieldFormatter.java
003     * 
004     * Copyright (C) 2005 Anupam Sengupta ([email protected]) 
005     * 
006     * This program is free software; you can redistribute it and/or 
007     * modify it under the terms of the GNU General Public License 
008     * as published by the Free Software Foundation; either version 2 
009     * of the License, or (at your option) any later version. 
010     * 
011     * This program is distributed in the hope that it will be useful, 
012     * but WITHOUT ANY WARRANTY; without even the implied warranty of 
013     * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 
014     * GNU General Public License for more details. 
015     * 
016     * You should have received a copy of the GNU General Public License
017     * along with this program; if not, write to the Free Software 
018     * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 
019     *
020     * Version: $Revision: 1.1 $
021     */
022    package net.sf.anupam.csv.formatters;
023    
024    /**
025     * Main Interface for a CSV field formatter. This interface needs to be
026     * implemented by the actual formatter implementations in order to be recognized
027     * by the Framework.
028     * <p>
029     * Default implementations are available for common formatting requirements in
030     * the Framework, and are present in this package. See the package overview for
031     * details.
032     * </p>
033     * 
034     * @author Anupam Sengupta
035     * @version $Revision: 1.1 $
036     * @since 1.5
037     * @see CSVFormatterFactory
038     */
039    public interface CSVFieldFormatter {
040    
041        /**
042         * Formats the specified CSV field value and returns the formatted result.
043         * 
044         * @param value
045         *            the CSV field value to format
046         * @return the formatted result
047         */
048        String format(final String value);
049    }