Package org.apache.openjpa.kernel

Examples of org.apache.openjpa.kernel.Query


        assertNull(result[1]);
    }

    public void testNonNullRelatedPCIsCached() {
        Broker broker = _factory.newBroker();
        Query q = broker.newQuery(JPQLParser.LANG_JPQL, "select a.e FROM " +
            CacheObjectJ.class.getSimpleName() + " a where a.e  is not null");

        Collection c = (Collection) q.execute();
        CacheTestHelper.iterate(c);
        CacheTestHelper.assertInCache(this, q, Boolean.TRUE);

        c = (Collection) q.execute();
        assertEquals(CacheObjectE.class, c.iterator().next().getClass());
    }
View Full Code Here


        assertEquals(CacheObjectE.class, c.iterator().next().getClass());
    }

    public void testNonNullRelatedPCAndProjectionIsCached() {
        Broker broker = _factory.newBroker();
        Query q =
            broker.newQuery(JPQLParser.LANG_JPQL, "select a.str,a.e FROM " +
                CacheObjectJ.class.getSimpleName() +
                " a where a.e is not null");

        Collection c = (Collection) q.execute();
        CacheTestHelper.iterate(c);
        CacheTestHelper.assertInCache(this, q, Boolean.TRUE);

        c = (Collection) q.execute();
        Object[] result = (Object[]) c.iterator().next();
        assertEquals(2, result.length);
        assertEquals(String.class, result[0].getClass());
        assertEquals(CacheObjectE.class, result[1].getClass());
    }
View Full Code Here

        assertEquals(CacheObjectE.class, result[1].getClass());
    }

    public void testEmbeddedFields() {
        Broker broker = _factory.newBroker();
        Query q =
            broker.newQuery(JPQLParser.LANG_JPQL, "select embedded FROM " +
                SelfReferencingCacheTestObject.class.getSimpleName() +
                " a where a.str='foo'");

        List l = null;
        try {
            l = (List) q.execute();
            assertEquals(CacheObjectAChild1.class, l.get(0).getClass());
        } catch (UserException ue) {
            //bug(1150, "embedded-field projections cause exception");
            ue.printStackTrace();
            return;
        }

        CacheTestHelper.iterate(l);
        CacheTestHelper.assertInCache(this, q, Boolean.TRUE);

        l = (List) q.execute();
        assertEquals(CacheObjectAChild1.class, l.get(0).getClass());
    }
View Full Code Here

        rawHelper(false, Object[].class, "age, a.name", false);
    }

    private void arrayHelper(boolean unique, Collection recordClasses,
        Collection results, boolean inCache) {
        Query q = setUpQuery(unique, results);
        q.setResultType(Object[].class);
        if (unique) {
            arrayResultHelper(q.execute(), recordClasses, inCache);
        } else {
            for (Iterator iter = ((List) q.execute()).iterator(); iter
                .hasNext();)
                arrayResultHelper(iter.next(), recordClasses, inCache);
        }

        CacheTestHelper.assertInCache(this, q, new Boolean(inCache));

        if (unique) {
            arrayResultHelper(q.execute(), recordClasses, inCache);
        } else {
            for (Iterator iter = ((List) q.execute()).iterator(); iter
                .hasNext();)
                arrayResultHelper(iter.next(), recordClasses, inCache);
        }
    }
View Full Code Here

            assertEquals(((ArrayList) recordClasses).get(i), os[i].getClass());
    }

    private void mapHelper(boolean unique, Collection recordClasses,
        Collection results, boolean inCache) {
        Query q = setUpQuery(unique, results);
        System.out.println("Query String " + q.getQueryString());
        Collection coll = null;
        if (q.execute() != null && (q.execute() instanceof Collection)) {
            coll = (Collection) q.execute();
        }
        System.out.println("Type of q.execute is : " + q.execute().getClass());

        Iterator it = coll.iterator();
        while (it.hasNext())
            System.out.println("Query result is " + it.next().getClass());

        q.setResultType(HashMap.class);

        if (unique) {
            mapResultHelper(q.execute(), recordClasses, results, inCache);
        } else {
            for (Iterator iter = ((Collection) q.execute()).iterator();
                iter.hasNext();)
                mapResultHelper(iter.next(), recordClasses, results, inCache);
        }

        CacheTestHelper.assertInCache(this, q, new Boolean(inCache));

        if (unique) {
            mapResultHelper(q.execute(), recordClasses, results, inCache);
        } else {
            for (Iterator iter = ((List) q.execute()).iterator(); iter
                .hasNext();)
                mapResultHelper(iter.next(), recordClasses, results, inCache);
        }
    }
View Full Code Here

    private void rawHelper(boolean unique, Class recordClass, String result,
        boolean inCache) {
        ArrayList<String> l = new ArrayList<String>();
        l.add(result);
        Collection res = (result == null) ? null : l;
        Query q = setUpQuery(unique, res);
        if (unique)
            assertEquals(recordClass, q.execute().getClass());
        else {
            q.setUnique(unique);
            for (Iterator iter = ((List) q.execute()).iterator(); iter
                .hasNext();)
                assertEquals(recordClass, iter.next().getClass());
        }

        CacheTestHelper.assertInCache(this, q, new Boolean(inCache));

        if (unique) {
            assertEquals(recordClass, q.execute().getClass());
        } else {
            for (Iterator iter = ((List) q.execute()).iterator(); iter
                .hasNext();)
                assertEquals(recordClass, iter.next().getClass());
        }
    }
View Full Code Here

        }

        if (unique)
            filter += " where a.age = 0";
        System.out.println("****Query: " + filter);
        Query q = _broker.newQuery(JPQLParser.LANG_JPQL, filter);
        q.setUnique(unique);
        q.setCandidateType(CacheObjectAChild1.class, false);

        return q;
    }
View Full Code Here

        assertEquals(CacheObjectAChild1.class, l.get(0).getClass());
    }

    public void testNonNullRelationOfSameTypeAsCandidate() {
        Broker broker = _factory.newBroker();
        Query q = broker.newQuery(JPQLParser.LANG_JPQL, "select a.o FROM " +
            SelfReferencingCacheTestObject.class.getSimpleName() +
            " a where a.o IS NOT NULL");

        List l = (List) q.execute();
        assertEquals(SelfReferencingCacheTestObject.class,
            l.get(0).getClass());
        assertEquals("bar",
            ((SelfReferencingCacheTestObject) l.get(0)).getStr());
        CacheTestHelper.iterate(l);
        CacheTestHelper.assertInCache(this, q, Boolean.TRUE);

        l = (List) q.execute();
        assertEquals(SelfReferencingCacheTestObject.class,
            l.get(0).getClass());
        assertEquals("bar",
            ((SelfReferencingCacheTestObject) l.get(0)).getStr());
    }
View Full Code Here

            ((SelfReferencingCacheTestObject) l.get(0)).getStr());
    }

    public void testNullRelationOfSameTypeAsCandidate() {
        Broker broker = _factory.newBroker();
        Query q = broker.newQuery(JPQLParser.LANG_JPQL, "select a.o FROM " +
            SelfReferencingCacheTestObject.class.getSimpleName() +
            " a where a.o IS NULL");

        List l = (List) q.execute();
        assertNull(l.get(0));
        CacheTestHelper.iterate(l);
        CacheTestHelper.assertInCache(this, q, Boolean.TRUE);

        l = (List) q.execute();
        assertNull(l.get(0));
    }
View Full Code Here

        super.tearDown();
    }

    public void testMutatedDateParameter() {
        Broker broker = _factory.newBroker();
        Query q = broker.newQuery(JPQLParser.LANG_JPQL,
            "select a from " +
                CacheObjectAChild1.class.getSimpleName() +
                " a where a.date < :p_date");
        Date d = new Date();
        Collection c = (Collection) q.execute(new Object[]{ d });
        CacheTestHelper.iterate(c);
        int initialSize = c.size();
        CacheTestHelper.assertInCache(this, q, Boolean.TRUE,
            new Object[]{ d });
        d.setTime(_startDate.getTime());
        CacheTestHelper.assertInCache(this, q, Boolean.FALSE,
            new Object[]{ d });
        c = (Collection) q.execute(new Object[]{ d });

        assertFalse(new Integer(initialSize).equals(new Integer(c.size())));
    }
View Full Code Here

TOP

Related Classes of org.apache.openjpa.kernel.Query

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.