ingo@1127: /* ingo@1127: * Copyright (c) 2010 by Intevation GmbH ingo@1127: * ingo@1127: * This program is free software under the LGPL (>=v2.1) ingo@1127: * Read the file LGPL.txt coming with the software for details ingo@1127: * or visit http://www.gnu.org/licenses/ if it does not exist. ingo@1127: */ ingo@1127: tim@132: package de.intevation.gnv.geobackend.base; tim@141: tim@141: import java.io.Serializable; tim@141: tim@132: /** tim@132: * Interface which provides the Methods for Accessing tim@132: * the MetaData of an ResultEntry sascha@887: * @author Tim Englich tim@132: */ tim@141: public interface ResultDescriptor extends Serializable{ tim@132: tim@132: /** tim@132: * Returns the Classname of the Column tim@132: * @param column the id of the Column which is requested tim@132: * @return the Classname of the Column tim@132: */ tim@132: public String getColumnClassName(int column); tim@884: tim@132: /** tim@132: * Returns the Number of Columns tim@132: * @return the Number of Columns tim@132: */ tim@132: public int getColumnCount(); tim@884: tim@132: /** tim@132: * Returns the Name of the Column which belongs to the given Columnindex tim@132: * @param column the Index of the Column tim@132: * @return the Name of the Column tim@132: */ tim@132: public String getColumnName(int column); tim@884: tim@132: /** tim@132: * Adds a new ColumnDescription into the Descriptor tim@132: * @param name the Name of the Column (unique) tim@132: * @param className the Name of the Class (e.g. Double, Integer tim@132: */ tim@132: public void addColumn(String name, String className); tim@271: tim@884: /** sascha@885: * Returns the Indices of the Columns which are specified in the tim@884: * param columnNames. tim@884: * @param columnNames the Name of the Columns for which the Indices should returned. sascha@885: * @return the Indices of the Columns which are specified in the tim@884: * param columnNames. tim@884: */ tim@271: public int [] getColumnIndices(String [] columnNames); tim@271: tim@884: /** tim@884: * Returns the index of the given columnName tim@884: * @param columnName the Name of the Index which should be looked up. tim@884: * @return the index of the given columnName tim@884: */ tim@271: public int getColumnIndex(String columnName); tim@132: }