Package org.apache.cayenne.access

Examples of org.apache.cayenne.access.DataContext


        // create the FK constraint...

        deleteTestData();
        createTestData("testResolveToOneOverFKOfDifferentNumType");

        DataContext context = createDataContext();
        FkOfDifferentType root = DataObjectUtils.objectForPK(
                context,
                FkOfDifferentType.class,
                1);
View Full Code Here


        return CayenneResources.getResources().getAccessStack("InheritanceFlatStack");
    }

    public void testGroupActions() throws Exception {

        DataContext context = createDataContext();

        User user = context.newObject(User.class);
        user.setName("test_user");

        Group group1 = context.newObject(Group.class);
        group1.setName("test_group1");

        Group group2 = context.newObject(Group.class);
        group2.setName("test_group2");

        group1.addToGroupMembers(user);
        group2.addToGroupMembers(group1);

        group2.getObjectContext().commitChanges();

        // Per CAY-1379 removing user and then refetching resulted in a FFE downstream
        group1.removeFromGroupMembers(user);
        Expression exp = ExpressionFactory.matchExp(Role.ROLE_GROUPS_PROPERTY, group2);
        SelectQuery query = new SelectQuery(Group.class, exp);
        context.performQuery(query);
        context.commitChanges();

        context.deleteObject(group1);
        context.deleteObject(group2);
        context.deleteObject(user);
        context.commitChanges();
    }
View Full Code Here

import org.apache.cayenne.query.SelectQueryBase;

public class CAY_788Test extends SelectQueryBase {

    public void testPrefetchToOne() {
        DataContext ctxt = createDataContext();
        SelectQuery query = new SelectQuery(Painting.class);
        query.addPrefetch(Painting.TO_PAINTING_INFO_PROPERTY);
        List daos = ctxt.performQuery(query);
        assertTrue(!daos.isEmpty());
        for (Iterator it = daos.iterator(); it.hasNext();) {
            Painting p = (Painting) it.next();
            PaintingInfo pi = p.getToPaintingInfo();
            assertEquals("persistence state", PersistenceState.COMMITTED, p
View Full Code Here

        }
    }

    @Override
    protected void populateTables() throws Exception {
        DataContext ctxt = createDataContext();
        for (int i = 0; i < 10; i++) {
            Painting p = ctxt.newObject(Painting.class);
            p.setPaintingTitle("Painting title #" + i);
            p.setPaintingDescription("Painting desc #" + i);
            PaintingInfo pi = ctxt.newObject(PaintingInfo.class);
            pi.setTextReview("Review #" + i);
            p.setToPaintingInfo(pi);
        }
        ctxt.commitChanges();
    }
View Full Code Here

        return CayenneResources.getResources().getAccessStack("InheritanceFlatStack");
    }

    public void testFlattenedNullifyNullifyDeleteRules() throws Exception {

        DataContext context = createDataContext();

        User user = context.newObject(User.class);
        user.setName("test_user");
        Group group = context.newObject(Group.class);
        group.setName("test_group");
        group.addToGroupMembers(user);
        context.commitChanges();

        context.deleteObject(user);
        assertTrue(group.getGroupMembers().isEmpty());

        context.commitChanges();

        // here Cayenne would throw per CAY-1378 on an attempt to delete a previously
        // related transient object
        context.deleteObject(group);
        context.commitChanges();
    }
View Full Code Here

    public void testCacheStrategy() throws Exception {
        deleteTestData();

        insertValue();
        DataContext contex = createDataContext();
        String ejbql = "select a FROM Artist a";
        EJBQLQuery query = new EJBQLQuery(ejbql);
        query.setCacheStrategy(QueryCacheStrategy.LOCAL_CACHE);
        List<Artist> artist1 = contex.performQuery(query);
        blockQueries();
        List<Artist> artist2;
        try {
            EJBQLQuery query1 = new EJBQLQuery(ejbql);
            query1.setCacheStrategy(QueryCacheStrategy.LOCAL_CACHE);
            artist2 = contex.performQuery(query1);
        }
        finally {
            unblockQueries();
        }
View Full Code Here

                true);
        assertEquals(artistName, artist.getArtistName());
    }

    private void insertValue() {
        DataContext context = createDataContext();

        for (int i = 0; i < 5; i++) {
            Artist obj = context.newObject(Artist.class);
            obj.setArtistName("a" + i);
            context.commitChanges();
        }
    }
View Full Code Here

            context.commitChanges();
        }
    }

    private void insertPaintValue() {
        DataContext context = createDataContext();

        for (int i = 0; i < 2; i++) {
            Artist art = context.newObject(Artist.class);
            art.setArtistName("a" + i);
            Painting obj = context.newObject(Painting.class);
            obj.setToArtist(art);
            obj.setPaintingTitle("title" + i);
            context.commitChanges();
        }
    }
View Full Code Here

    }

    public void testSelectRelationship() {

        insertPaintValue();
        DataContext contex = createDataContext();
       
        String ejbql = "SELECT p.toArtist FROM Painting p";
        EJBQLQuery query = new EJBQLQuery(ejbql);

        List result = contex.performQuery(query);

        assertNotNull(result);
        assertEquals(2, result.size());

        assertEquals(Artist.class, result.get(0).getClass());

       
        String ejbql2 = "SELECT p.toArtist, p FROM Painting p";
        EJBQLQuery query2 = new EJBQLQuery(ejbql2);

        List result2 = contex.performQuery(query2);

        assertNotNull(result2);
        assertEquals(2, result2.size());
        assertEquals(2, ((Object[])result2.get(0)).length);
       
        assertEquals(Artist.class,((Object[])result2.get(0))[0].getClass());
        assertEquals(Painting.class,((Object[])result2.get(0))[1].getClass());
       
        String ejbql3 = "SELECT p.toArtist, p.paintingTitle FROM Painting p";
        EJBQLQuery query3 = new EJBQLQuery(ejbql3);

        List result3 = contex.performQuery(query3);

        assertNotNull(result3);
        assertEquals(2, result3.size());
        assertEquals(2, ((Object[])result3.get(0)).length);
       
View Full Code Here

import org.apache.cayenne.access.DataContext;
import org.apache.cayenne.unit.CayenneCase;

public class StatementFetchSizeTest extends CayenneCase {
    public void test() {
        DataContext dataContext = createDataContext();
       
        SelectQuery query = new SelectQuery(Artist.class);
        query.setStatementFetchSize(10);
       
        assertEquals(10, query.getMetaData(dataContext.getEntityResolver()).getStatementFetchSize());
        dataContext.performQuery(query);
       
        SQLTemplate template = new SQLTemplate(Artist.class, "SELECT ARTIST_ID FROM ARTIST");
        template.setStatementFetchSize(10);
       
        assertEquals(10, template.getMetaData(dataContext.getEntityResolver()).getStatementFetchSize());
        dataContext.performQuery(template);
       
        EJBQLQuery ejbql = new EJBQLQuery("select a from Artist a");
        ejbql.setStatementFetchSize(10);
       
        assertEquals(10, ejbql.getMetaData(dataContext.getEntityResolver()).getStatementFetchSize());
        dataContext.performQuery(ejbql);
       
        ObjectId id = new ObjectId("Artist", Artist.ARTIST_ID_PK_COLUMN, 1);
        RelationshipQuery relationshipQuery = new RelationshipQuery(id, Artist.PAINTING_ARRAY_PROPERTY, true);
        relationshipQuery.setStatementFetchSize(10);
       
        assertEquals(10, relationshipQuery.getMetaData(dataContext.getEntityResolver()).getStatementFetchSize());
        dataContext.performQuery(relationshipQuery);
    }
View Full Code Here

TOP

Related Classes of org.apache.cayenne.access.DataContext

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.