1 /** 2 * MEDOR: Middleware Enabling Distributed Object Requests 3 * 4 * Copyright (C) 2001-2003 France Telecom R&D 5 * Contact: alexandre.lefebvre@rd.francetelecom.com 6 * 7 * This library is free software; you can redistribute it and/or 8 * modify it under the terms of the GNU Lesser General Public 9 * License as published by the Free Software Foundation; either 10 * version 2.1 of the License, or (at your option) any later version. 11 * 12 * This library is distributed in the hope that it will be useful, 13 * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 15 * Lesser General Public License for more details. 16 * 17 * You should have received a copy of the GNU Lesser General Public 18 * License along with this library; if not, write to the Free Software 19 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 20 * 21 * Initial developers: M. Alia, A. Lefebvre 22 */ 23 24 package org.objectweb.medor.query.api; 25 26 import org.objectweb.medor.clone.api.Cloneable; 27 28 /** 29 * Represents an element of an "order by" clause, qualified by a field and 30 * a boolean indicating whether the order is descendant (false, default) 31 * or ascendant. 32 * @author Alexandre Lefebvre 33 */ 34 public interface OrderField extends Cloneable{ 35 36 /** 37 * Sets the field of the clause part. 38 * @param field the field by which to order. 39 */ 40 void setField(QueryTreeField field); 41 42 /** 43 * Obtains the field by which to order. 44 * @return the field by which to order. 45 */ 46 QueryTreeField getField(); 47 48 /** 49 * Sets the descendant order. 50 * <p>The default value is false. 51 * @param desc indicates whether the order is descendant (true) or 52 * ascendant (false). 53 */ 54 void setDesc(boolean desc); 55 56 /** 57 * Returns whether the order is descendant (true) or ascendant (false). 58 * @return true if the order is descendant, false if the order is ascendant. 59 */ 60 boolean getDesc(); 61 } 62 63