001    package org.apache.ojb.odmg.oql;
002    
003    /* Copyright 2002-2005 The Apache Software Foundation
004     *
005     * Licensed under the Apache License, Version 2.0 (the "License");
006     * you may not use this file except in compliance with the License.
007     * You may obtain a copy of the License at
008     *
009     *     http://www.apache.org/licenses/LICENSE-2.0
010     *
011     * Unless required by applicable law or agreed to in writing, software
012     * distributed under the License is distributed on an "AS IS" BASIS,
013     * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
014     * See the License for the specific language governing permissions and
015     * limitations under the License.
016     */
017    
018    import org.odmg.OQLQuery;
019    import org.odmg.QueryInvalidException;
020    
021    /**
022     * Offers useful none odmg-standard methods of the odmg {@link org.odmg.OQLQuery} interface.
023     * <p>
024     * Note: All listed methods are <strong>not</strong> part of the standard ODMG-api -
025     * they are special (proprietary) OJB extensions.
026     * </p>
027     *
028     * @version $Id: EnhancedOQLQuery.java,v 1.1 2007-08-24 22:17:36 ewestfal Exp $
029     */
030    public interface EnhancedOQLQuery extends OQLQuery
031    {
032            /**
033         * An extension of the {@link org.odmg.OQLQuery#create(String)} method, which
034         * additionally allow to specify an <em>start-</em> and <em>end-Index</em> for
035         * the query.
036         *
037         * @param queryString An oql query string.
038         * @param startAtIndex The start index.
039         * @param endAtIndex The end index.
040         * @throws QueryInvalidException The type of the parameter does
041         * not correspond with the type of the parameter in the query.
042         */
043        void create(String queryString, int startAtIndex, int endAtIndex) throws QueryInvalidException;
044            
045        /**
046         * Deprecated method.
047         * @deprecated
048         */
049        int fullSize();
050    }