Package org.apache.openjpa.kernel

Examples of org.apache.openjpa.kernel.Broker


                    "openjpa.ConnectionRetainMode", obj),
                    new Throwable[]{ e }, obj, true);
            }
        }

        Broker broker = _factory.newBroker(user, pass, managed, retainMode,
            false);
           
        // add autodetach for close and rollback conditions to the configuration
        broker.setAutoDetach(AutoDetach.DETACH_CLOSE, true);
        broker.setAutoDetach(AutoDetach.DETACH_ROLLBACK, true);
       
        broker.setDetachedNew(false);
        OpenJPAEntityManagerSPI em = newEntityManagerImpl(broker);

        // allow setting of other bean properties of EM
        String[] prefixes = ProductDerivations.getConfigurationPrefixes();
        List<RuntimeException> errs = null;
View Full Code Here


        PersistenceCapable pc = (PersistenceCapable)entity;
        if (!(pc.pcGetGenericContext() instanceof Broker)) {
            return false;
        }
        // Assert the broker is available and open
        Broker broker = (Broker)pc.pcGetGenericContext();
        if (broker == null || broker.isClosed()) {
            return false;
        }
        // Assert the emf associated with the PC is the same as the provided emf
        OpenJPAEntityManagerFactory eemf = JPAFacadeHelper.toEntityManagerFactory(broker.getBrokerFactory());
        if (eemf == emf && eemf.isOpen()) {
            return true;
        }
        return false;
    }
View Full Code Here

                AbstractBrokerFactory.getPooledFactoryForKey(factoryKey);
            byte[] brokerBytes = (byte[]) in.readObject();
            ObjectInputStream innerIn = new BrokerBytesInputStream(brokerBytes,
                factory.getConfiguration());

            Broker broker = (Broker) innerIn.readObject();
            EntityManagerFactoryImpl emf = (EntityManagerFactoryImpl)
                JPAFacadeHelper.toEntityManagerFactory(
                    broker.getBrokerFactory());
            broker.putUserObject(JPAFacadeHelper.EM_KEY, this);
            initialize(emf, broker);
        } catch (RuntimeException re) {
            try {
                re = _ret.translate(re);
            } catch (Exception e) {
View Full Code Here

                log.trace("Found ConnectionFactory2Name from props: " + cf2Name);
            }
        }
        validateCfNameProps(conf, cfName, cf2Name);

        Broker broker = _factory.newBroker(user, pass, managed, retainMode, false, cfName, cf2Name);
           
        // add autodetach for close and rollback conditions to the configuration
        broker.setAutoDetach(AutoDetach.DETACH_CLOSE, true);
        broker.setAutoDetach(AutoDetach.DETACH_ROLLBACK, true);
        broker.setDetachedNew(false);
       
        OpenJPAEntityManagerSPI em = newEntityManagerImpl(broker);

        // allow setting of other bean properties of EM
        Set<Map.Entry> entrySet = props.entrySet();
View Full Code Here

        if (_actions == null)
            return candidate;

        Action action;
        OpenJPAStateManager sm;
        Broker tmpBroker;
        for (Iterator itr = _actions.iterator(); itr.hasNext();) {
            action = (Action)itr.next();
            sm = null;
            tmpBroker = null;
            if (ImplHelper.isManageable(candidate))
                sm = (OpenJPAStateManager) (ImplHelper.toPersistenceCapable(
                    candidate, ctx.getConfiguration())).
                    pcGetStateManager();
            if (sm == null) {
                tmpBroker = ctx.getBroker();
                tmpBroker.transactional(candidate, false, null);
                sm = tmpBroker.getStateManager(candidate);
            }
            if (action.op != Action.GET && action.op != Action.GET_OUTER)
                continue;
            try {
                candidate = sm.fetchField(
                        ((FieldMapping)action.data).getIndex(), true);
            } catch (ClassCastException cce) {
                throw new RuntimeException(action.data + " not a field path");
            } finally {
                // transactional does not clear the state, which is
                // important since tmpCandidate might be also managed by
                // another broker if it's a proxied non-pc instance
                if (tmpBroker != null)
                    tmpBroker.nontransactional(sm.getManagedInstance(), null);
            }
        }
        return candidate;
    }
View Full Code Here

            return size;
        }
    }

    protected Object persist(Object ob) {
        Broker broker = getBrokerFactory().newBroker();
        broker.begin();
        broker.persist(ob, null);
        Object id = broker.getObjectId(ob);
        broker.commit();
        broker.close();
        return id;
    }
View Full Code Here

    }

    public void complexQuery(int size, Object ob, String filter, Class c) {

//        PersistenceManager pm = getPM();
        Broker broker = getBrokerFactory().newBroker();
        broker.setIgnoreChanges(false);
        broker.begin();

        broker.persist(ob, null);
        // test in-memory
        // assertSize (size, pm.newQuery (c, filter));
        broker.commit();

        broker.begin();
        // test against database
//        OpenJPAQuery q = pm.createQuery("SELECT o FROM "+c.getSimpleName()+"o WHERE o."+filter);
        String qstrng =
            "SELECT o FROM " + c.getSimpleName() + " o WHERE o." + filter;
        assertSize(size,
            (List) broker.newQuery(JPQLParser.LANG_JPQL, c, qstrng).execute());

        broker.commit();
        broker.close();

        broker = getBrokerFactory().newBroker();
        broker.begin();
        // test again against a new PM, for good measure
        assertSize(size,
            (List) broker.newQuery(JPQLParser.LANG_JPQL, c, qstrng).execute());
        broker.rollback();

        broker.close();
    }
View Full Code Here

    public TestAccessPathsOfSubqueries(String name) {
        super(name);
    }

    public void testSimpleSubqueryAccessPath() {
        Broker broker = getBrokerFactory().newBroker();
        Query q = broker.newQuery(JPQLParser.LANG_JPQL,
            "SELECT o FROM RuntimeTest1 o WHERE EXISTS (SELECT rt5.name FROM RuntimeTest5 rt5 WHERE rt5.name IS NOT NULL)");
        ClassMetaData[] metas = q.getAccessPathMetaDatas();
        Collection c = Arrays.asList(metas);
        ClassMetaData rt1 = broker.getConfiguration().
            getMetaDataRepositoryInstance().getMetaData(RuntimeTest1.class,
            broker.getClassLoader(), true);
        ClassMetaData rt5 = broker.getConfiguration().
            getMetaDataRepositoryInstance().getMetaData(RuntimeTest5.class,
            broker.getClassLoader(), true);
        assertTrue(c.contains(rt1));
        assertTrue(c.contains(rt5));
        assertEquals(2, c.size());
    }
View Full Code Here

        assertTrue(c.contains(rt5));
        assertEquals(2, c.size());
    }

    public void testRelationTraversalSubqueryAccessPath() {
        Broker broker = getBrokerFactory().newBroker();
        Query q = broker.newQuery(JPQLParser.LANG_JPQL,
            "SELECT o FROM RuntimeTest1 o WHERE EXISTS (SELECT rt5.runtimeTest4.name FROM RuntimeTest5 rt5 WHERE rt5.name IS NOT NULL)");

        ClassMetaData[] metas = q.getAccessPathMetaDatas();
        Collection c = Arrays.asList(metas);
        ClassMetaData rt1 = broker.getConfiguration().
            getMetaDataRepositoryInstance().getMetaData(RuntimeTest1.class,
            broker.getClassLoader(), true);
        ClassMetaData rt4 = broker.getConfiguration().
            getMetaDataRepositoryInstance().getMetaData(RuntimeTest4.class,
            broker.getClassLoader(), true);
        ClassMetaData rt5 = broker.getConfiguration().
            getMetaDataRepositoryInstance().getMetaData(RuntimeTest5.class,
            broker.getClassLoader(), true);
        assertTrue(c.contains(rt1));
        assertTrue(c.contains(rt4));
        assertTrue(c.contains(rt5));
        assertEquals(3, c.size());
    }
View Full Code Here

        RuntimeTest1 pc = new RuntimeTest1("pc", 1);
        RuntimeTest1 rel = new RuntimeTest1("rel", 2);
        pc.setSelfOneOne(rel);
       
        OpenJPAEntityManager em =(OpenJPAEntityManager)currentEntityManager();
        Broker broker = JPAFacadeHelper.toBroker(em);
        broker.begin();
        broker.persist(pc, null);
        broker.commit();
        _pc = broker.getObjectId(pc);
        _rel = broker.getObjectId(rel);
        broker.close();
        em.close();
    }
View Full Code Here

TOP

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

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.