001 /* 002 // This software is subject to the terms of the Common Public License 003 // Agreement, available at the following URL: 004 // http://www.opensource.org/licenses/cpl.html. 005 // Copyright (C) 2004-2005 TONBELLER AG 006 // All Rights Reserved. 007 // You must accept the terms of that agreement to use this software. 008 */ 009 package mondrian.rolap.sql; 010 011 /** 012 * restricts the members that are fetched by SqlMemberSource. 013 * <p> 014 * @see mondrian.rolap.SqlMemberSource 015 * 016 * @author av 017 * @since Nov 2, 2005 018 */ 019 public interface SqlConstraint { 020 021 /** 022 * Returns a key that becomes part of the key for caching the 023 * result of the SQL query. So SqlConstraint instances that 024 * produce the same SQL resultset must return equal keys 025 * in terms of equal() and hashCode(). 026 * @return valid key or null to prevent the result from being cached 027 */ 028 Object getCacheKey(); 029 } 030 031 // End SqlConstraint.java