001    /*
002    // $Id: //open/mondrian/src/main/mondrian/olap/NameResolver.java#5 $
003    // This software is subject to the terms of the Common Public License
004    // Agreement, available at the following URL:
005    // http://www.opensource.org/licenses/cpl.html.
006    // Copyright (C) 2000-2002 Kana Software, Inc.
007    // Copyright (C) 2001-2005 Julian Hyde and others
008    // All Rights Reserved.
009    // You must accept the terms of that agreement to use this software.
010    //
011    // jhyde, 22 March, 2000
012    */
013    
014    package mondrian.olap;
015    
016    /**
017     * Interface for a class which can lookup dimensions, hierarchies, levels,
018     * members.  {@link Cube} is the most typical implementor, but {@link Query}
019     * also implements this interface, looking at members defined in its WITH
020     * clause before looking to its cube.
021     */
022    public interface NameResolver {
023    
024        Cube getCube();
025    
026        /**
027         * Looks up the child of <code>parent</code> called <code>s</code>; returns
028         * null if no element is found.
029         */
030        OlapElement lookupChild(OlapElement parent, String s);
031    
032    }
033    
034    // End NameResolver.java