/* * XXL: The eXtensible and fleXible Library for data processing * * Copyright (C) 2000-2011 Prof. Dr. Bernhard Seeger Head of the Database Research Group Department * of Mathematics and Computer Science University of Marburg Germany * * This library is free software; you can redistribute it and/or modify it under the terms of the * GNU Lesser General Public License as published by the Free Software Foundation; either version 3 * of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without * even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License along with this library; * If not, see <http://www.gnu.org/licenses/>. * * http://code.google.com/p/xxl/ */ package xxl.core.relational.metaData; import xxl.core.io.converters.meta.ExtendedResultSetMetaData; /** * An object that provides information about a <i>single</i> columns of a given table. * * This extension to standard <tt>ColumnMetaData</tt> also provides the method * {@link ExtendedColumnMetaData#getMaxContainingStringLength() getColumnCharacterCount()} method * which returns the maximum length for a string entry if this column is a <b>string</b> typed * column. Please mark, that <tt>ExtendedColumnMetaData</tt> stores a <i>single</i> column whereas * {@link ExtendedResultSetMetaData} is designed to hold a bundle of columns.. * * @see java.sql.ResultSetMetaData * @see ExtendedResultSetMetaData * @author Marcus Pinnecke (pinnecke@mathematik.uni-marburg.de) * */ public interface ExtendedColumnMetaData extends ColumnMetaData { /** * Gets the maximum character length for a string value entry if this column is declared as a * <b>string</b> typed one. * * @return Maximum character length */ int getMaxContainingStringLength(); /** * Sets the maximum character length for a string value entry if this column is declared as a * <b>string</b> typed one. * * <br/> * <br/> * <b>Note:</b> Please ensure that each string content you'll write into this column is shorter or * equal to <code>length</code>. Otherwise the import of an entry will fail. * * @param length Maximum length */ void setMaxContainingStringLength(int length); }