001/* 002// This software is subject to the terms of the Eclipse Public License v1.0 003// Agreement, available at the following URL: 004// http://www.eclipse.org/legal/epl-v10.html. 005// You must accept the terms of that agreement to use this software. 006// 007// Copyright (C) 2004-2005 TONBELLER AG 008// Copyright (C) 2005-2009 Pentaho and others 009// All Rights Reserved. 010*/ 011package mondrian.rolap.sql; 012 013import mondrian.rolap.*; 014import mondrian.rolap.aggmatcher.AggStar; 015 016import java.util.List; 017 018/** 019 * "Light version" of a {@link mondrian.rolap.sql.TupleConstraint}, 020 * represents one of 021 * member.children, level.members, member.descendants, {enumeration}. 022 */ 023public interface CrossJoinArg { 024 CrossJoinArg[] EMPTY_ARRAY = new CrossJoinArg[0]; 025 026 RolapLevel getLevel(); 027 028 List<RolapMember> getMembers(); 029 030 void addConstraint( 031 SqlQuery sqlQuery, 032 RolapCube baseCube, 033 AggStar aggStar); 034 035 boolean isPreferInterpreter(boolean joinArg); 036} 037 038// End CrossJoinArg.java