Package org.apache.cayenne.query

Examples of org.apache.cayenne.query.Ordering


        }

        Iterator<Ordering> it = ((SelectQuery) q).getOrderings().iterator();

        while (it.hasNext()) {
            Ordering ord = it.next();

            if (ord.isCaseInsensitive()) {
                out.append("UPPER(");
            }

            Expression exp = ord.getSortSpec();

            if (exp.getType() == Expression.OBJ_PATH) {
                appendObjPath(exp);
            }
            else if (exp.getType() == Expression.DB_PATH) {
                appendDbPath(exp);
            }
            else {
                throw new CayenneRuntimeException("Unsupported ordering expression: "
                        + exp);
            }

            // Close UPPER() modifier
            if (ord.isCaseInsensitive()) {
                out.append(")");
            }

            orderByColumnList.add(out.toString());

            // "ASC" is a noop, omit it from the query
            if (!ord.isAscending()) {
                out.append(" DESC");
            }

            if (it.hasNext()) {
                out.append(", ");
View Full Code Here


    }

    public void testSuccessLockingOnMixed() throws Exception {
        createTestData("testLockingOnMixed");
        SelectQuery query = new SelectQuery(SimpleLockingTestEntity.class);
        query.addOrdering(new Ordering("db:LOCKING_TEST_ID", SortOrder.ASCENDING));

        List allObjects = context.performQuery(query);
        assertEquals(3, allObjects.size());

        SimpleLockingTestEntity object1 = (SimpleLockingTestEntity) allObjects.get(0);
View Full Code Here

        // case insensitive ordering appends extra columns
        // to the query when query is using DISTINCT...
        // verify that the result is not messed up

        SelectQuery query = new SelectQuery(Artist.class);
        Ordering ordering = new Ordering(
                Artist.ARTIST_NAME_PROPERTY,
                SortOrder.ASCENDING_INSENSITIVE);
        query.addOrdering(ordering);
        query.setDistinct(true);
View Full Code Here

    public void onRender() {
        super.onRender();

        if (getSchedulerService() != null) {
            List<JobAndSimpleTrigger> rowList = getSchedulerService().getJobAndTriggerList();
            Collections.sort(rowList, new Ordering("job.name", Ordering.ASC));
            table.setRowList(rowList);
        }
    }
View Full Code Here

    public List getStudentsByHouse() {
        SelectQuery query = new SelectQuery(Student.class);
        query.addPrefetch("studentHouse");

        // Add in-memory ordering
        Ordering ordering = new Ordering("studentHouse.name", true);
        List result = performQuery(query);
        ordering.orderList(result);
        return result;
    }
View Full Code Here

    }

    public void testSort() throws Exception {
        prepareList(6);

        new Ordering(Artist.ARTIST_NAME_PROPERTY, SortOrder.DESCENDING).orderList(list);

        Iterator it = list.iterator();
        Artist previousArtist = null;
        while (it.hasNext()) {
            Artist artist = (Artist) it.next();
View Full Code Here

        if (path != null && path.trim().length() == 0) {
            path = null;
        }
        boolean isDescending = "true".equalsIgnoreCase(descending);
        boolean isIgnoringCase = "true".equalsIgnoreCase(ignoreCase);
        orderings.add(new Ordering(path, !isDescending, isIgnoringCase));
    }
View Full Code Here

    public void onRender() {
        super.onRender();

        if (getSchedulerService() != null) {
            List<JobAndSimpleTrigger> rowList = getSchedulerService().getJobAndTriggerList();
            Collections.sort(rowList, new Ordering("job.name", Ordering.ASC));
            table.setRowList(rowList);
        }
    }
View Full Code Here

    }

    public void testSort() throws Exception {
        SimpleIdIncrementalFaultList<?> list = prepareList(6);

        new Ordering(Artist.ARTIST_NAME_PROPERTY, SortOrder.DESCENDING).orderList(list);

        Iterator<?> it = list.iterator();
        Artist previousArtist = null;
        while (it.hasNext()) {
            Artist artist = (Artist) it.next();
View Full Code Here

    public void testSuccessLockingOnMixed() throws Exception {
        createLockingOnMixedDataSet();

        SelectQuery query = new SelectQuery(SimpleLockingTestEntity.class);
        query.addOrdering(new Ordering("db:LOCKING_TEST_ID", SortOrder.ASCENDING));

        List<?> allObjects = context.performQuery(query);
        assertEquals(3, allObjects.size());

        SimpleLockingTestEntity object1 = (SimpleLockingTestEntity) allObjects.get(0);
View Full Code Here

TOP

Related Classes of org.apache.cayenne.query.Ordering

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.