001 /* 002 // $Id: Quax.java 229 2009-05-08 19:11:29Z jhyde $ 003 // This software is subject to the terms of the Eclipse Public License v1.0 004 // Agreement, available at the following URL: 005 // http://www.eclipse.org/legal/epl-v10.html. 006 // Copyright (C) 2008-2008 Julian Hyde 007 // All Rights Reserved. 008 // You must accept the terms of that agreement to use this software. 009 */ 010 package org.olap4j.transform; 011 012 import org.olap4j.CellSetAxis; 013 import org.olap4j.Position; 014 import org.olap4j.metadata.Member; 015 016 /** 017 * Representation of member expressions on a query axis, derived from 018 * CellSetAxis objects. 019 * 020 * <p>Quaxes are used by MDX axis query transforms, to construct and use 021 * an internal tree-like representation of positions and members from the 022 * result CellSetAxis objects of a previous MDX query. This is needed 023 * for OLAP navigation operators like drill-down on a position. 024 * 025 * <p>Inspired from the JPivot Quax class. 026 * 027 * <p>NOTE: not exactly sure how to implement this, to be completed... 028 * 029 * @author etdub 030 * @version $Id: Quax.java 229 2009-05-08 19:11:29Z jhyde $ 031 * @since Aug 7, 2008 032 */ 033 public class Quax { 034 private final CellSetAxis cellSetAxis; 035 036 private TreeNode<Member> memberTree; 037 038 public Quax(CellSetAxis cellSetAxis) { 039 this.cellSetAxis = cellSetAxis; 040 041 for (Position p : cellSetAxis.getPositions()) { 042 p.getMembers(); 043 } 044 } 045 } 046 047 // End Quax.java