/* * GeoTools - The Open Source Java GIS Toolkit * http://geotools.org * * (C) 2002-2008, Open Source Geospatial Foundation (OSGeo) * * 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; * version 2.1 of the License. * * 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. */ package org.geotools.jdbc; import org.geotools.filter.visitor.SimplifyingFilterVisitor.FIDValidator; /** * Fid validator which validates with respect to a primary key. * * @author Justin Deoliveira, OpenGeo * * * @source $URL$ */ public class PrimaryKeyFIDValidator implements FIDValidator { JDBCFeatureSource featureSource; public PrimaryKeyFIDValidator( JDBCFeatureSource featureSource ) { this.featureSource = featureSource; } public boolean isValid(String fid) { PrimaryKey key = featureSource.getPrimaryKey(); try { featureSource.getDataStore().decodeFID( key, fid, true ); return true; } catch( Exception e ) { return false; } } }