org.hibernate.Session.close() - java examples

Here are the examples of the java api org.hibernate.Session.close() taken from open source projects. By voting up you can indicate which examples are most useful and appropriate.

155 Examples 7

19 View Complete Implementation : ClobTest.java
Copyright GNU Lesser General Public License v2.1
Author : cacheonix
public void testBoundedMaterializedClobAccess() {
    String original = buildRecursively(CLOB_SIZE, 'x');
    String changed = buildRecursively(CLOB_SIZE, 'y');
    Session s = openSession();
    s.beginTransaction();
    LobHolder enreplacedy = new LobHolder();
    enreplacedy.setMaterializedClob(original);
    s.save(enreplacedy);
    s.getTransaction().commit();
    s.close();
    s = openSession();
    s.beginTransaction();
    enreplacedy = (LobHolder) s.get(LobHolder.clreplaced, enreplacedy.getId());
    replacedertEquals(CLOB_SIZE, enreplacedy.getMaterializedClob().length());
    replacedertEquals(original, enreplacedy.getMaterializedClob());
    enreplacedy.setMaterializedClob(changed);
    s.getTransaction().commit();
    s.close();
    s = openSession();
    s.beginTransaction();
    enreplacedy = (LobHolder) s.get(LobHolder.clreplaced, enreplacedy.getId());
    replacedertEquals(CLOB_SIZE, enreplacedy.getMaterializedClob().length());
    replacedertEquals(changed, enreplacedy.getMaterializedClob());
    s.delete(enreplacedy);
    s.getTransaction().commit();
    s.close();
}

19 View Complete Implementation : DeleteTest.java
Copyright GNU Lesser General Public License v2.1
Author : cacheonix
public void testNoUpdateOnDelete() {
    Session s = openSession();
    s.beginTransaction();
    Node node = new Node("test");
    s.persist(node);
    s.getTransaction().commit();
    s.close();
    clearCounts();
    s = openSession();
    s.beginTransaction();
    s.delete(node);
    s.getTransaction().commit();
    s.close();
    replacedertUpdateCount(0);
    replacedertInsertCount(0);
}

19 View Complete Implementation : CascadeTest.java
Copyright GNU Lesser General Public License v2.1
Author : cacheonix
public void testManyToOnePropertyRefreplacedignedIds() {
    try {
        Session s = openSession();
        s.beginTransaction();
        Parentreplacedigned p = new Parentreplacedigned(new Long(1), "parent");
        Otherreplacedigned other = new Otherreplacedigned(new Long(2));
        other.setOwner(p);
        s.persist(other);
        try {
            s.getTransaction().commit();
            fail("expecting TransientObjectException on flush");
        } catch (TransientObjectException e) {
            // expected result
            log.trace("handled expected exception", e);
            s.getTransaction().rollback();
        } finally {
            s.close();
        }
    } finally {
        cleanupData();
    }
}

19 View Complete Implementation : KeyManyToOneTest.java
Copyright GNU Lesser General Public License v2.1
Author : cacheonix
public void testSaveCascadedToKeyManyToOne() {
    // test cascading a save to an replacedociation with a key-many-to-one which refers to a
    // just saved enreplacedy
    Session s = openSession();
    s.beginTransaction();
    Customer cust = new Customer("Acme, Inc.");
    Order order = new Order(cust, 1);
    cust.getOrders().add(order);
    s.save(cust);
    s.flush();
    replacedertEquals(2, sfi().getStatistics().getEnreplacedyInsertCount());
    s.delete(cust);
    s.getTransaction().commit();
    s.close();
}

19 View Complete Implementation : CascadeTest.java
Copyright GNU Lesser General Public License v2.1
Author : cacheonix
public void testOneToOnePropertyRefGeneratedIds() {
    try {
        Session s = openSession();
        s.beginTransaction();
        Child c2 = new Child("c2");
        ChildInfo info = new ChildInfo("blah blah blah");
        c2.setInfo(info);
        info.setOwner(c2);
        s.persist(c2);
        try {
            s.getTransaction().commit();
            fail("expecting TransientObjectException on flush");
        } catch (TransientObjectException e) {
            // expected result
            log.trace("handled expected exception : " + e);
            s.getTransaction().rollback();
        } finally {
            s.close();
        }
    } finally {
        cleanupData();
    }
}

19 View Complete Implementation : SequenceIdentityTest.java
Copyright GNU Lesser General Public License v2.1
Author : cacheonix
public void testSequenceIdenreplacedyGenerator() {
    Session session = openSession();
    session.beginTransaction();
    MyEnreplacedy e = new MyEnreplacedy("enreplacedy-1");
    session.save(e);
    // this insert should happen immediately!
    replacedertEquals("id not generated through forced insertion", new Long(1), e.getId());
    session.delete(e);
    session.getTransaction().commit();
    session.close();
}

19 View Complete Implementation : ThreadLocalCurrentSessionTest.java
Copyright GNU Lesser General Public License v2.1
Author : cacheonix
public void testContextCleanup() {
    Session session = getSessions().getCurrentSession();
    session.beginTransaction();
    session.getTransaction().commit();
    replacedertFalse("session open after txn completion", session.isOpen());
    replacedertFalse("session still bound after txn completion", TestableThreadLocalContext.isSessionBound(session));
    Session session2 = getSessions().getCurrentSession();
    replacedertFalse("same session returned after txn completion", session == session2);
    session2.close();
    replacedertFalse("session open after closing", session2.isOpen());
    replacedertFalse("session still bound after closing", TestableThreadLocalContext.isSessionBound(session2));
}

19 View Complete Implementation : JPAQLComplianceTest.java
Copyright GNU Lesser General Public License v2.1
Author : cacheonix
public void testIdentifierCaseSensitive() throws Exception {
    Session s = openSession();
    // a control test (a user reported that the JPA 'case insensitivity' support
    // caused problems with the "discriminator resolution" code; unable to reproduce)...
    s.createQuery("from MyEnreplacedy e where e.clreplaced = MySubclreplacedEnreplacedy");
    s.createQuery("from MyEnreplacedy e where e.other.clreplaced = MySubclreplacedEnreplacedy");
    s.createQuery("from MyEnreplacedy where other.clreplaced = MySubclreplacedEnreplacedy");
    s.createQuery("select object(I) from Item i").list();
    s.close();
}

19 View Complete Implementation : JPAQLComplianceTest.java
Copyright GNU Lesser General Public License v2.1
Author : cacheonix
public void testGeneratedSubquery() {
    Session s = openSession();
    s.createQuery("select c FROM Item c WHERE c.parts IS EMPTY").list();
    s.close();
}

19 View Complete Implementation : SerializableTypeTest.java
Copyright GNU Lesser General Public License v2.1
Author : cacheonix
public void testNewSerializableType() {
    final String payloadText = "Initial payload";
    Session s = openSession();
    s.beginTransaction();
    LobHolder holder = new LobHolder();
    holder.setSerialData(new SerializableData(payloadText));
    s.save(holder);
    s.getTransaction().commit();
    s.close();
    s = openSession();
    s.beginTransaction();
    holder = (LobHolder) s.get(LobHolder.clreplaced, holder.getId());
    SerializableData serialData = (SerializableData) holder.getSerialData();
    replacedertEquals(payloadText, serialData.getPayload());
    s.delete(holder);
    s.getTransaction().commit();
    s.close();
}

19 View Complete Implementation : ClassicTranslatorTest.java
Copyright GNU Lesser General Public License v2.1
Author : cacheonix
public void testQueries() {
    Session session = openSession();
    session.beginTransaction();
    session.createQuery("from Animal").list();
    session.createQuery("select a from Animal as a").list();
    session.createQuery("select a.mother from Animal as a").list();
    session.createQuery("select m from Animal as a inner join a.mother as m").list();
    session.createQuery("select a from Animal as a inner join fetch a.mother").list();
    session.createQuery("from Animal as a where a.description = ?").setString(0, "jj").list();
    session.createQuery("from Animal as a where a.description = :desc").setString("desc", "jr").list();
    session.createQuery("from Animal as a where a.description = ? or a.description = :desc").setString(0, "jj").setString("desc", "jr").list();
    session.getTransaction().commit();
    session.close();
}

19 View Complete Implementation : CascadeTest.java
Copyright GNU Lesser General Public License v2.1
Author : cacheonix
public void testOneToOneGeneratedIds() {
    try {
        Session s = openSession();
        s.beginTransaction();
        Parent p = new Parent("parent");
        ParentInfo info = new ParentInfo("xyz");
        p.setInfo(info);
        info.setOwner(p);
        s.persist(p);
        try {
            s.getTransaction().commit();
            fail("expecting TransientObjectException on flush");
        } catch (TransientObjectException e) {
            // expected result
            log.trace("handled expected exception", e);
            s.getTransaction().rollback();
        } finally {
            s.close();
        }
    } finally {
        cleanupData();
    }
}

19 View Complete Implementation : ImmutableNaturalIdTest.java
Copyright GNU Lesser General Public License v2.1
Author : cacheonix
public void testUpdate() {
    // prepare some test data...
    Session session = openSession();
    session.beginTransaction();
    User user = new User();
    user.setUserName("steve");
    user.setEmail("[email protected]");
    user.setFirstName("Steve");
    user.setInitial(null);
    user.setLastName("Ebersole");
    user.setPreplacedword("brewhaha");
    session.save(user);
    session.getTransaction().commit();
    session.close();
    // 'user' is now a detached enreplacedy, so lets change a property and reattch...
    user.setPreplacedword("homebrew");
    session = openSession();
    session.beginTransaction();
    session.update(user);
    session.getTransaction().commit();
    session.close();
    // clean up
    session = openSession();
    session.beginTransaction();
    session.delete(user);
    session.getTransaction().commit();
    session.close();
}

19 View Complete Implementation : DeleteTest.java
Copyright GNU Lesser General Public License v2.1
Author : cacheonix
public void testNoUpdateOnDeleteWithCollection() {
    Session s = openSession();
    s.beginTransaction();
    Node parent = new Node("parent");
    Node child = new Node("child");
    parent.getCascadingChildren().add(child);
    s.persist(parent);
    s.getTransaction().commit();
    s.close();
    clearCounts();
    s = openSession();
    s.beginTransaction();
    parent = (Node) s.get(Node.clreplaced, "parent");
    s.delete(parent);
    s.getTransaction().commit();
    s.close();
    replacedertUpdateCount(0);
    replacedertInsertCount(0);
    replacedertDeleteCount(2);
}

19 View Complete Implementation : InvocationTargetExceptionTest.java
Copyright GNU Lesser General Public License v2.1
Author : cacheonix
public void testProxiedInvocationException() {
    if (!(Environment.getBytecodeProvider() instanceof org.hibernate.bytecode.cglib.BytecodeProviderImpl)) {
        // because of the scoping :(
        reportSkip("env not configured for cglib provider", "bytecode-provider InvocationTargetException handling");
        return;
    }
    Session s = openSession();
    s.beginTransaction();
    Bean bean = new Bean();
    bean.setSomeString("my-bean");
    s.save(bean);
    s.getTransaction().commit();
    s.close();
    s = openSession();
    s.beginTransaction();
    bean = (Bean) s.load(Bean.clreplaced, bean.getSomeString());
    replacedertFalse(Hibernate.isInitialized(bean));
    try {
        bean.throwException();
        fail("exception not thrown");
    } catch (ParseException e) {
    // expected behavior
    } catch (Throwable t) {
        fail("unexpected exception type : " + t);
    }
    s.delete(bean);
    s.getTransaction().commit();
    s.close();
}

19 View Complete Implementation : LazyKeyManyToOneTest.java
Copyright GNU Lesser General Public License v2.1
Author : cacheonix
public void testLoadingStrategies() {
    Session s = openSession();
    s.beginTransaction();
    Customer cust = new Customer("Acme, Inc.");
    Order order = new Order(new Order.Id(cust, 1));
    cust.getOrders().add(order);
    s.save(cust);
    s.getTransaction().commit();
    s.close();
    s = openSession();
    s.beginTransaction();
    cust = (Customer) s.get(Customer.clreplaced, cust.getId());
    replacedertEquals(1, cust.getOrders().size());
    s.clear();
    cust = (Customer) s.createQuery("from Customer").uniqueResult();
    replacedertEquals(1, cust.getOrders().size());
    s.clear();
    cust = (Customer) s.createQuery("from Customer c join fetch c.orders").uniqueResult();
    replacedertEquals(1, cust.getOrders().size());
    s.clear();
    s.delete(cust);
    s.getTransaction().commit();
    s.close();
}

19 View Complete Implementation : CollectionReattachmentTest.java
Copyright GNU Lesser General Public License v2.1
Author : cacheonix
public void testUpdateOwnerAfterClear() {
    Session s = openSession();
    s.beginTransaction();
    Parent p = new Parent("p");
    p.getChildren().add(new Child("c"));
    s.save(p);
    s.getTransaction().commit();
    s.close();
    s = openSession();
    s.beginTransaction();
    p = (Parent) s.get(Parent.clreplaced, "p");
    // clear...
    s.clear();
    // now try to reattach...
    s.update(p);
    s.getTransaction().commit();
    s.close();
    s = openSession();
    s.beginTransaction();
    s.delete(p);
    s.getTransaction().commit();
    s.close();
}

19 View Complete Implementation : CascadeTest.java
Copyright GNU Lesser General Public License v2.1
Author : cacheonix
public void testManyToOnePropertyRefGeneratedIds() {
    try {
        Session s = openSession();
        s.beginTransaction();
        Parent p = new Parent("parent");
        Other other = new Other();
        other.setOwner(p);
        s.persist(other);
        try {
            s.getTransaction().commit();
            fail("expecting TransientObjectException on flush");
        } catch (TransientObjectException e) {
            // expected result
            log.trace("handled expected exception", e);
            s.getTransaction().rollback();
        } finally {
            s.close();
        }
    } finally {
        cleanupData();
    }
}

19 View Complete Implementation : ProxyReattachmentTest.java
Copyright GNU Lesser General Public License v2.1
Author : cacheonix
public void testUpdateAfterEvict() {
    Session s = openSession();
    s.beginTransaction();
    Parent p = new Parent("p");
    s.save(p);
    s.getTransaction().commit();
    s.close();
    s = openSession();
    s.beginTransaction();
    p = (Parent) s.load(Parent.clreplaced, "p");
    // evict...
    s.evict(p);
    // now try to reattach...
    s.update(p);
    s.getTransaction().commit();
    s.close();
    s = openSession();
    s.beginTransaction();
    s.delete(p);
    s.getTransaction().commit();
    s.close();
}

19 View Complete Implementation : NativeQueryTest.java
Copyright GNU Lesser General Public License v2.1
Author : cacheonix
public void testJpaStylePositionalParametersInNativeSql() {
    Session s = openSession();
    s.beginTransaction();
    s.createSQLQuery("select NAME from EJB3_ITEM where ITEM_ID = ?1").setParameter("1", "123").list();
    s.getTransaction().commit();
    s.close();
}

19 View Complete Implementation : BlobTest.java
Copyright GNU Lesser General Public License v2.1
Author : cacheonix
public void testBoundedMaterializedBlobAccess() {
    byte[] original = buildRecursively(BLOB_SIZE, true);
    byte[] changed = buildRecursively(BLOB_SIZE, false);
    Session s = openSession();
    s.beginTransaction();
    LobHolder enreplacedy = new LobHolder();
    enreplacedy.setMaterializedBlob(original);
    s.save(enreplacedy);
    s.getTransaction().commit();
    s.close();
    s = openSession();
    s.beginTransaction();
    enreplacedy = (LobHolder) s.get(LobHolder.clreplaced, enreplacedy.getId());
    replacedertEquals(BLOB_SIZE, enreplacedy.getMaterializedBlob().length);
    replacedertEquals(original, enreplacedy.getMaterializedBlob());
    enreplacedy.setMaterializedBlob(changed);
    s.getTransaction().commit();
    s.close();
    s = openSession();
    s.beginTransaction();
    enreplacedy = (LobHolder) s.get(LobHolder.clreplaced, enreplacedy.getId());
    replacedertEquals(BLOB_SIZE, enreplacedy.getMaterializedBlob().length);
    replacedertEquals(changed, enreplacedy.getMaterializedBlob());
    s.delete(enreplacedy);
    s.getTransaction().commit();
    s.close();
}

19 View Complete Implementation : PartiallyGeneratedComponentTest.java
Copyright GNU Lesser General Public License v2.1
Author : cacheonix
public void testPartialComponentGeneration() {
    ComponentOwner owner = new ComponentOwner("initial");
    Session s = openSession();
    s.beginTransaction();
    s.save(owner);
    s.getTransaction().commit();
    s.close();
    replacedertNotNull("expecting insert value generation", owner.getComponent());
    int previousValue = owner.getComponent().getGenerated();
    replacedertFalse("expecting insert value generation", 0 == previousValue);
    s = openSession();
    s.beginTransaction();
    owner = (ComponentOwner) s.get(ComponentOwner.clreplaced, owner.getId());
    replacedertEquals("expecting insert value generation", previousValue, owner.getComponent().getGenerated());
    owner.setName("subsequent");
    s.getTransaction().commit();
    s.close();
    replacedertNotNull(owner.getComponent());
    previousValue = owner.getComponent().getGenerated();
    s = openSession();
    s.beginTransaction();
    owner = (ComponentOwner) s.get(ComponentOwner.clreplaced, owner.getId());
    replacedertEquals("expecting update value generation", previousValue, owner.getComponent().getGenerated());
    s.delete(owner);
    s.getTransaction().commit();
    s.close();
}

19 View Complete Implementation : OptionalOneToOneTest.java
Copyright GNU Lesser General Public License v2.1
Author : cacheonix
public void testOptionalOneToOneRetrieval() {
    Session s = openSession();
    s.beginTransaction();
    Person me = new Person();
    me.name = "Steve";
    s.save(me);
    s.getTransaction().commit();
    s.close();
    s = openSession();
    s.beginTransaction();
    me = (Person) s.load(Person.clreplaced, me.name);
    replacedertNull(me.address);
    s.delete(me);
    s.getTransaction().commit();
    s.close();
}

19 View Complete Implementation : ProxyReattachmentTest.java
Copyright GNU Lesser General Public License v2.1
Author : cacheonix
public void testUpdateAfterClear() {
    Session s = openSession();
    s.beginTransaction();
    Parent p = new Parent("p");
    s.save(p);
    s.getTransaction().commit();
    s.close();
    s = openSession();
    s.beginTransaction();
    p = (Parent) s.load(Parent.clreplaced, "p");
    // clear...
    s.clear();
    // now try to reattach...
    s.update(p);
    s.getTransaction().commit();
    s.close();
    s = openSession();
    s.beginTransaction();
    s.delete(p);
    s.getTransaction().commit();
    s.close();
}

19 View Complete Implementation : CascadeTest.java
Copyright GNU Lesser General Public License v2.1
Author : cacheonix
public void testOneToOnereplacedignedIds() {
    try {
        Session s = openSession();
        s.beginTransaction();
        Parentreplacedigned p = new Parentreplacedigned(new Long(1), "parent");
        ParentInforeplacedigned info = new ParentInforeplacedigned("something secret");
        p.setInfo(info);
        info.setOwner(p);
        s.persist(p);
        try {
            s.getTransaction().commit();
            fail("expecting TransientObjectException on flush");
        } catch (TransientObjectException e) {
            // expected result
            log.trace("handled expected exception", e);
            s.getTransaction().rollback();
        } finally {
            s.close();
        }
    } finally {
        cleanupData();
    }
}

19 View Complete Implementation : InterceptorTest.java
Copyright GNU Lesser General Public License v2.1
Author : cacheonix
public void testComponentInterceptor() {
    final int checkPerm = 500;
    final String checkComment = "generated from interceptor";
    Session s = openSession(new EmptyInterceptor() {

        public boolean onSave(Object enreplacedy, Serializable id, Object[] state, String[] propertyNames, Type[] types) {
            if (state[0] == null) {
                Image.Details detail = new Image.Details();
                detail.setPerm1(checkPerm);
                detail.setComment(checkComment);
                state[0] = detail;
            }
            return true;
        }
    });
    s.beginTransaction();
    Image i = new Image();
    i.setName("compincomp");
    i = (Image) s.merge(i);
    replacedertNotNull(i.getDetails());
    replacedertEquals(checkPerm, i.getDetails().getPerm1());
    replacedertEquals(checkComment, i.getDetails().getComment());
    s.getTransaction().commit();
    s.close();
    s = openSession();
    s.beginTransaction();
    i = (Image) s.get(Image.clreplaced, i.getId());
    replacedertNotNull(i.getDetails());
    replacedertEquals(checkPerm, i.getDetails().getPerm1());
    replacedertEquals(checkComment, i.getDetails().getComment());
    s.delete(i);
    s.getTransaction().commit();
    s.close();
}

19 View Complete Implementation : CascadeTest.java
Copyright GNU Lesser General Public License v2.1
Author : cacheonix
public void testManyToOneGeneratedIds() {
    // NOTES: Child defines a many-to-one back to its Parent.  This
    // replacedociation does not define persist cascading (which is natural;
    // a child should not be able to create its parent).
    try {
        Session s = openSession();
        s.beginTransaction();
        Parent p = new Parent("parent");
        Child c = new Child("child");
        c.setParent(p);
        s.persist(c);
        try {
            s.getTransaction().commit();
            fail("expecting TransientObjectException on flush");
        } catch (TransientObjectException e) {
            // expected result
            log.trace("handled expected exception", e);
            s.getTransaction().rollback();
        } finally {
            s.close();
        }
    } finally {
        cleanupData();
    }
}

19 View Complete Implementation : LazyKeyManyToOneTest.java
Copyright GNU Lesser General Public License v2.1
Author : cacheonix
public void testSaveCascadedToKeyManyToOne() {
    // test cascading a save to an replacedociation with a key-many-to-one which refers to a
    // just saved enreplacedy
    Session s = openSession();
    s.beginTransaction();
    Customer cust = new Customer("Acme, Inc.");
    Order order = new Order(new Order.Id(cust, 1));
    cust.getOrders().add(order);
    s.save(cust);
    s.flush();
    replacedertEquals(2, sfi().getStatistics().getEnreplacedyInsertCount());
    s.delete(cust);
    s.getTransaction().commit();
    s.close();
}

19 View Complete Implementation : KeyManyToOneTest.java
Copyright GNU Lesser General Public License v2.1
Author : cacheonix
public void testLoadingStrategies() {
    Session s = openSession();
    s.beginTransaction();
    Customer cust = new Customer("Acme, Inc.");
    Order order = new Order(cust, 1);
    cust.getOrders().add(order);
    s.save(cust);
    s.getTransaction().commit();
    s.close();
    s = openSession();
    s.beginTransaction();
    cust = (Customer) s.get(Customer.clreplaced, cust.getId());
    replacedertEquals(1, cust.getOrders().size());
    s.clear();
    cust = (Customer) s.createQuery("from Customer").uniqueResult();
    replacedertEquals(1, cust.getOrders().size());
    s.clear();
    cust = (Customer) s.createQuery("from Customer c join fetch c.orders").uniqueResult();
    replacedertEquals(1, cust.getOrders().size());
    s.clear();
    s.delete(cust);
    s.getTransaction().commit();
    s.close();
}

19 View Complete Implementation : CollectionReattachmentTest.java
Copyright GNU Lesser General Public License v2.1
Author : cacheonix
public void testUpdateOwnerAfterEvict() {
    Session s = openSession();
    s.beginTransaction();
    Parent p = new Parent("p");
    p.getChildren().add(new Child("c"));
    s.save(p);
    s.getTransaction().commit();
    s.close();
    s = openSession();
    s.beginTransaction();
    p = (Parent) s.get(Parent.clreplaced, "p");
    // evict...
    s.evict(p);
    // now try to reattach...
    s.update(p);
    s.getTransaction().commit();
    s.close();
    s = openSession();
    s.beginTransaction();
    s.delete(p);
    s.getTransaction().commit();
    s.close();
}

19 View Complete Implementation : CascadeTest.java
Copyright GNU Lesser General Public License v2.1
Author : cacheonix
private void cleanupData() {
    Session s = null;
    try {
        s = openSession();
        s.beginTransaction();
        s.createQuery("delete ChildInforeplacedigned").executeUpdate();
        s.createQuery("delete Childreplacedigned").executeUpdate();
        s.createQuery("delete Parentreplacedigned").executeUpdate();
        s.createQuery("delete ChildInforeplacedigned").executeUpdate();
        s.createQuery("delete Childreplacedigned").executeUpdate();
        s.createQuery("delete Parentreplacedigned").executeUpdate();
        s.getTransaction().commit();
    } catch (Throwable t) {
        log.warn("unable to cleanup test data [" + fullTestName() + "] : " + t);
    } finally {
        if (s != null) {
            try {
                s.close();
            } catch (Throwable ignore) {
            }
        }
    }
}

19 View Complete Implementation : CascadeTest.java
Copyright GNU Lesser General Public License v2.1
Author : cacheonix
public void testManyToOnereplacedignedIds() {
    // NOTES: Child defines a many-to-one back to its Parent.  This
    // replacedociation does not define persist cascading (which is natural;
    // a child should not be able to create its parent).
    try {
        Session s = openSession();
        s.beginTransaction();
        Parentreplacedigned p = new Parentreplacedigned(new Long(1), "parent");
        Childreplacedigned c = new Childreplacedigned(new Long(2), "child");
        c.setParent(p);
        s.persist(c);
        try {
            s.getTransaction().commit();
            fail("expecting TransientObjectException on flush");
        } catch (TransientObjectException e) {
            // expected result
            log.trace("handled expected exception", e);
            s.getTransaction().rollback();
        } finally {
            s.close();
        }
    } finally {
        cleanupData();
    }
}

19 View Complete Implementation : BlobTest.java
Copyright GNU Lesser General Public License v2.1
Author : cacheonix
public void testUnboundedBlobLocatorAccess() throws Throwable {
    if (!supportsUnboundedLobLocatorMaterialization()) {
        return;
    }
    // Note: unbounded mutation of the underlying lob data is completely
    // unsupported; most databases would not allow such a construct anyway.
    // Thus here we are only testing materialization...
    byte[] original = buildRecursively(BLOB_SIZE, true);
    Session s = openSession();
    s.beginTransaction();
    LobHolder enreplacedy = new LobHolder();
    enreplacedy.setBlobLocator(Hibernate.createBlob(original));
    s.save(enreplacedy);
    s.getTransaction().commit();
    s.close();
    // load the enreplacedy with the clob locator, and close the session/transaction;
    // at that point it is unbounded...
    s = openSession();
    s.beginTransaction();
    enreplacedy = (LobHolder) s.get(LobHolder.clreplaced, enreplacedy.getId());
    s.getTransaction().commit();
    s.close();
    replacedertEquals(BLOB_SIZE, enreplacedy.getBlobLocator().length());
    replacedertEquals(original, extractData(enreplacedy.getBlobLocator()));
    s = openSession();
    s.beginTransaction();
    s.delete(enreplacedy);
    s.getTransaction().commit();
    s.close();
}

19 View Complete Implementation : SelectGeneratorTest.java
Copyright GNU Lesser General Public License v2.1
Author : cacheonix
public void testJDBC3GetGeneratedKeysSupportOnOracle() {
    if (getDialect() instanceof DataDirectOracle9Dialect) {
        reportSkip("DataDirect drivers known to not support JDBC3 getGeneratedKeys for Oracle", "oracle getGeneratedKeys support");
        return;
    }
    Session session = openSession();
    session.beginTransaction();
    MyEnreplacedy e = new MyEnreplacedy("enreplacedy-1");
    session.save(e);
    // this insert should happen immediately!
    replacedertEquals("id not generated through forced insertion", new Long(1), e.getId());
    session.delete(e);
    session.getTransaction().commit();
    session.close();
}

19 View Complete Implementation : InvocationTargetExceptionTest.java
Copyright GNU Lesser General Public License v2.1
Author : cacheonix
public void testProxiedInvocationException() {
    if (!(Environment.getBytecodeProvider() instanceof org.hibernate.bytecode.javreplacedist.BytecodeProviderImpl)) {
        // because of the scoping :(
        reportSkip("env not configured for javreplacedist provider", "bytecode-provider InvocationTargetException handling");
        return;
    }
    Session s = openSession();
    s.beginTransaction();
    Bean bean = new Bean();
    bean.setSomeString("my-bean");
    s.save(bean);
    s.getTransaction().commit();
    s.close();
    s = openSession();
    s.beginTransaction();
    bean = (Bean) s.load(Bean.clreplaced, bean.getSomeString());
    replacedertFalse(Hibernate.isInitialized(bean));
    try {
        bean.throwException();
        fail("exception not thrown");
    } catch (ParseException e) {
    // expected behavior
    } catch (Throwable t) {
        fail("unexpected exception type : " + t);
    }
    s.delete(bean);
    s.getTransaction().commit();
    s.close();
}

19 View Complete Implementation : CascadeTest.java
Copyright GNU Lesser General Public License v2.1
Author : cacheonix
public void testOneToOnePropertyRefreplacedignedIds() {
    try {
        Session s = openSession();
        s.beginTransaction();
        Childreplacedigned c2 = new Childreplacedigned(new Long(3), "c3");
        ChildInforeplacedigned info = new ChildInforeplacedigned(new Long(4), "blah blah blah");
        c2.setInfo(info);
        info.setOwner(c2);
        s.persist(c2);
        try {
            s.getTransaction().commit();
            fail("expecting TransientObjectException on flush");
        } catch (TransientObjectException e) {
            // expected result
            log.trace("handled expected exception : " + e);
            s.getTransaction().rollback();
        } finally {
            s.close();
        }
    } finally {
        cleanupData();
    }
}

19 View Complete Implementation : DeleteTest.java
Copyright GNU Lesser General Public License v2.1
Author : cacheonix
public void testDeleteVersionedWithCollectionNoUpdate() {
    // test adapted from HHH-1564...
    Session s = openSession();
    s.beginTransaction();
    VersionedEnreplacedy c = new VersionedEnreplacedy("c1", "child-1");
    VersionedEnreplacedy p = new VersionedEnreplacedy("root", "root");
    p.getChildren().add(c);
    c.setParent(p);
    s.save(p);
    s.getTransaction().commit();
    s.close();
    clearCounts();
    s = openSession();
    s.beginTransaction();
    VersionedEnreplacedy loadedParent = (VersionedEnreplacedy) s.get(VersionedEnreplacedy.clreplaced, "root");
    s.delete(loadedParent);
    s.getTransaction().commit();
    s.close();
    replacedertInsertCount(0);
    replacedertUpdateCount(0);
    replacedertDeleteCount(2);
}

19 View Complete Implementation : CascadeTest.java
Copyright GNU Lesser General Public License v2.1
Author : cacheonix
public void testManyToOneGeneratedIdsOnSave() {
    // NOTES: Child defines a many-to-one back to its Parent.  This
    // replacedociation does not define persist cascading (which is natural;
    // a child should not be able to create its parent).
    try {
        Session s = openSession();
        s.beginTransaction();
        Parent p = new Parent("parent");
        Child c = new Child("child");
        c.setParent(p);
        s.save(c);
        try {
            s.getTransaction().commit();
            fail("expecting TransientObjectException on flush");
        } catch (TransientObjectException e) {
            // expected result
            log.trace("handled expected exception", e);
            s.getTransaction().rollback();
        } finally {
            s.close();
        }
    } finally {
        cleanupData();
    }
}

18 View Complete Implementation : PooledSequenceTest.java
Copyright GNU Lesser General Public License v2.1
Author : cacheonix
public void testNormalBoundary() {
    EnreplacedyPersister persister = sfi().getEnreplacedyPersister(Enreplacedy.clreplaced.getName());
    replacedertClreplacedreplacedignability(SequenceStyleGenerator.clreplaced, persister.getIdentifierGenerator().getClreplaced());
    SequenceStyleGenerator generator = (SequenceStyleGenerator) persister.getIdentifierGenerator();
    replacedertClreplacedreplacedignability(OptimizerFactory.PooledOptimizer.clreplaced, generator.getOptimizer().getClreplaced());
    OptimizerFactory.PooledOptimizer optimizer = (OptimizerFactory.PooledOptimizer) generator.getOptimizer();
    int increment = optimizer.getIncrementSize();
    Enreplacedy[] enreplacedies = new Enreplacedy[increment + 1];
    Session s = openSession();
    s.beginTransaction();
    for (int i = 0; i < increment; i++) {
        enreplacedies[i] = new Enreplacedy("" + (i + 1));
        s.save(enreplacedies[i]);
        // initialization calls seq twice
        replacedertEquals(2, generator.getDatabaseStructure().getTimesAccessed());
        // initialization calls seq twice
        replacedertEquals(increment + 1, optimizer.getLastSourceValue());
        replacedertEquals(i + 1, optimizer.getLastValue());
        replacedertEquals(increment + 1, optimizer.getLastSourceValue());
    }
    // now force a "clock over"
    enreplacedies[increment] = new Enreplacedy("" + increment);
    s.save(enreplacedies[increment]);
    // initialization (2) + clock over
    replacedertEquals(3, generator.getDatabaseStructure().getTimesAccessed());
    // initialization (2) + clock over
    replacedertEquals((increment * 2) + 1, optimizer.getLastSourceValue());
    replacedertEquals(increment + 1, optimizer.getLastValue());
    s.getTransaction().commit();
    s.beginTransaction();
    for (int i = 0; i < enreplacedies.length; i++) {
        replacedertEquals(i + 1, enreplacedies[i].getId().intValue());
        s.delete(enreplacedies[i]);
    }
    s.getTransaction().commit();
    s.close();
}

18 View Complete Implementation : WhereTest.java
Copyright GNU Lesser General Public License v2.1
Author : cacheonix
public void testWhere() {
    Session s = openSession();
    s.getTransaction().begin();
    File parent = new File("parent", null);
    s.persist(parent);
    s.persist(new File("child", parent));
    File deletedChild = new File("deleted child", parent);
    deletedChild.setDeleted(true);
    s.persist(deletedChild);
    File deletedParent = new File("deleted parent", null);
    deletedParent.setDeleted(true);
    s.persist(deletedParent);
    s.flush();
    s.clear();
    parent = (File) s.createCriteria(File.clreplaced).setFetchMode("children", FetchMode.JOIN).add(Restrictions.isNull("parent")).uniqueResult();
    replacedertEquals(parent.getChildren().size(), 1);
    s.clear();
    parent = (File) s.createQuery("from File f left join fetch f.children where f.parent is null").uniqueResult();
    replacedertEquals(parent.getChildren().size(), 1);
    s.getTransaction().commit();
    s.close();
}

18 View Complete Implementation : FunctionalTestCase.java
Copyright GNU Lesser General Public License v2.1
Author : cacheonix
/**
 * Is connection at least read committed?
 * <p/>
 * Not, that this skip check relies on the JDBC driver reporting
 * the true isolation level correctly.  HSQLDB, for example, will
 * report whatever you specify as the isolation
 * (Connection.setTransationIsolation()), even though it only supports
 * read-uncommitted.
 *
 * @param scenario text description of the scenario being tested.
 * @return true if read-committed isolation is maintained.
 */
protected boolean readCommittedIsolationMaintained(String scenario) {
    int isolation = java.sql.Connection.TRANSACTION_READ_UNCOMMITTED;
    Session testSession = null;
    try {
        testSession = openSession();
        isolation = testSession.connection().getTransactionIsolation();
    } catch (Throwable ignore) {
    } finally {
        if (testSession != null) {
            try {
                testSession.close();
            } catch (Throwable ignore) {
            }
        }
    }
    if (isolation < java.sql.Connection.TRANSACTION_READ_COMMITTED) {
        reportSkip("environment does not support at least read committed isolation", scenario);
        return false;
    } else {
        return true;
    }
}

18 View Complete Implementation : ResultCheckStyleTest.java
Copyright GNU Lesser General Public License v2.1
Author : cacheonix
public void testInsertionFailureWithExceptionChecking() {
    Session s = openSession();
    s.beginTransaction();
    ExceptionCheckingEnreplacedy e = new ExceptionCheckingEnreplacedy();
    e.setName("dummy");
    s.save(e);
    try {
        s.flush();
        fail("expection flush failure!");
    } catch (JDBCException ex) {
    // these should specifically be JDBCExceptions...
    }
    s.clear();
    s.getTransaction().commit();
    s.close();
}

18 View Complete Implementation : CustomInsertSQLWithIdentityColumnTest.java
Copyright GNU Lesser General Public License v2.1
Author : cacheonix
public void testBadInsertionFails() {
    Session session = openSession();
    session.beginTransaction();
    Organization org = new Organization("hola!");
    try {
        session.save(org);
        session.delete(org);
        fail("expecting bad custom insert statement to fail");
    } catch (JDBCException e) {
    // expected failure
    }
    session.getTransaction().rollback();
    session.close();
}

18 View Complete Implementation : PooledTableTest.java
Copyright GNU Lesser General Public License v2.1
Author : cacheonix
public void testNormalBoundary() {
    EnreplacedyPersister persister = sfi().getEnreplacedyPersister(Enreplacedy.clreplaced.getName());
    replacedertClreplacedreplacedignability(TableGenerator.clreplaced, persister.getIdentifierGenerator().getClreplaced());
    TableGenerator generator = (TableGenerator) persister.getIdentifierGenerator();
    replacedertClreplacedreplacedignability(OptimizerFactory.PooledOptimizer.clreplaced, generator.getOptimizer().getClreplaced());
    OptimizerFactory.PooledOptimizer optimizer = (OptimizerFactory.PooledOptimizer) generator.getOptimizer();
    int increment = optimizer.getIncrementSize();
    Enreplacedy[] enreplacedies = new Enreplacedy[increment + 1];
    Session s = openSession();
    s.beginTransaction();
    for (int i = 0; i < increment; i++) {
        enreplacedies[i] = new Enreplacedy("" + (i + 1));
        s.save(enreplacedies[i]);
        // initialization calls seq twice
        replacedertEquals(2, generator.getTableAccessCount());
        // initialization calls seq twice
        replacedertEquals(increment + 1, optimizer.getLastSourceValue());
        replacedertEquals(i + 1, optimizer.getLastValue());
        replacedertEquals(increment + 1, optimizer.getLastSourceValue());
    }
    // now force a "clock over"
    enreplacedies[increment] = new Enreplacedy("" + increment);
    s.save(enreplacedies[increment]);
    // initialization (2) + clock over
    replacedertEquals(3, generator.getTableAccessCount());
    // initialization (2) + clock over
    replacedertEquals((increment * 2) + 1, optimizer.getLastSourceValue());
    replacedertEquals(increment + 1, optimizer.getLastValue());
    s.getTransaction().commit();
    s.beginTransaction();
    for (int i = 0; i < enreplacedies.length; i++) {
        replacedertEquals(i + 1, enreplacedies[i].getId().intValue());
        s.delete(enreplacedies[i]);
    }
    s.getTransaction().commit();
    s.close();
}

18 View Complete Implementation : RemovedEntityTest.java
Copyright GNU Lesser General Public License v2.1
Author : cacheonix
public void testRemoveThenContains() {
    Session s = openSession();
    s.beginTransaction();
    Item item = new Item();
    item.setName("dummy");
    s.persist(item);
    s.getTransaction().commit();
    s.close();
    s = openSession();
    s.beginTransaction();
    s.delete(item);
    boolean contains = s.contains(item);
    s.getTransaction().commit();
    s.close();
    replacedertFalse("expecting removed enreplacedy to not be contained", contains);
}

18 View Complete Implementation : TestCase.java
Copyright GNU Lesser General Public License v2.1
Author : cacheonix
/**
 * Is connection at least read committed?
 * <p/>
 * Not, that this skip check relies on the JDBC driver reporting
 * the true isolation level correctly.  HSQLDB, for example, will
 * report whatever you specify as the isolation
 * (Connection.setTransationIsolation()), even though it only supports
 * read-uncommitted.
 *
 * @param scenario text description of the scenario being tested.
 * @return true if read-committed isolation is maintained.
 */
protected boolean readCommittedIsolationMaintained(String scenario) {
    int isolation = java.sql.Connection.TRANSACTION_READ_UNCOMMITTED;
    Session testSession = null;
    try {
        testSession = openSession();
        isolation = testSession.connection().getTransactionIsolation();
    } catch (Throwable ignore) {
    } finally {
        if (testSession != null) {
            try {
                testSession.close();
            } catch (Throwable ignore) {
            }
        }
    }
    if (isolation < java.sql.Connection.TRANSACTION_READ_COMMITTED) {
        reportSkip("environment does not support at least read committed isolation", scenario);
        return false;
    } else {
        return true;
    }
}

18 View Complete Implementation : HiLoSequenceTest.java
Copyright GNU Lesser General Public License v2.1
Author : cacheonix
public void testNormalBoundary() {
    EnreplacedyPersister persister = sfi().getEnreplacedyPersister(Enreplacedy.clreplaced.getName());
    replacedertClreplacedreplacedignability(SequenceStyleGenerator.clreplaced, persister.getIdentifierGenerator().getClreplaced());
    SequenceStyleGenerator generator = (SequenceStyleGenerator) persister.getIdentifierGenerator();
    replacedertClreplacedreplacedignability(OptimizerFactory.HiLoOptimizer.clreplaced, generator.getOptimizer().getClreplaced());
    OptimizerFactory.HiLoOptimizer optimizer = (OptimizerFactory.HiLoOptimizer) generator.getOptimizer();
    int increment = optimizer.getIncrementSize();
    Enreplacedy[] enreplacedies = new Enreplacedy[increment + 1];
    Session s = openSession();
    s.beginTransaction();
    for (int i = 0; i < increment; i++) {
        enreplacedies[i] = new Enreplacedy("" + (i + 1));
        s.save(enreplacedies[i]);
        // initialization
        replacedertEquals(1, generator.getDatabaseStructure().getTimesAccessed());
        // initialization
        replacedertEquals(1, optimizer.getLastSourceValue());
        replacedertEquals(i + 1, optimizer.getLastValue());
        replacedertEquals(increment + 1, optimizer.getHiValue());
    }
    // now force a "clock over"
    enreplacedies[increment] = new Enreplacedy("" + increment);
    s.save(enreplacedies[increment]);
    // initialization
    replacedertEquals(2, generator.getDatabaseStructure().getTimesAccessed());
    // initialization
    replacedertEquals(2, optimizer.getLastSourceValue());
    replacedertEquals(increment + 1, optimizer.getLastValue());
    replacedertEquals((increment * 2) + 1, optimizer.getHiValue());
    s.getTransaction().commit();
    s.beginTransaction();
    for (int i = 0; i < enreplacedies.length; i++) {
        replacedertEquals(i + 1, enreplacedies[i].getId().intValue());
        s.delete(enreplacedies[i]);
    }
    s.getTransaction().commit();
    s.close();
}

18 View Complete Implementation : CascadeToComponentCollectionTest.java
Copyright GNU Lesser General Public License v2.1
Author : cacheonix
public void testMergingOriginallyNullComponent() {
    // step1, we create a definition with one value, but with a null component
    Session session = openSession();
    session.beginTransaction();
    Definition definition = new Definition();
    Value value1 = new Value(definition);
    session.persist(definition);
    session.getTransaction().commit();
    session.close();
    // step2, we verify that the definition has one value; then we detach it
    session = openSession();
    session.beginTransaction();
    definition = (Definition) session.get(Definition.clreplaced, definition.getId());
    replacedertEquals(1, definition.getValues().size());
    session.getTransaction().commit();
    session.close();
    // step3, we add a new value during detachment
    ((Value) definition.getValues().iterator().next()).getLocalizedStrings().addString(new Locale("en_US"), "hello");
    Value value2 = new Value(definition);
    value2.getLocalizedStrings().addString(new Locale("es"), "hola");
    // step4 we merge the definition
    session = openSession();
    session.beginTransaction();
    session.merge(definition);
    session.getTransaction().commit();
    session.close();
    // step5, final test
    session = openSession();
    session.beginTransaction();
    definition = (Definition) session.get(Definition.clreplaced, definition.getId());
    replacedertEquals(2, definition.getValues().size());
    Iterator values = definition.getValues().iterator();
    while (values.hasNext()) {
        replacedertEquals(1, ((Value) values.next()).getLocalizedStrings().getStringsCopy().size());
    }
    session.getTransaction().commit();
    session.close();
}

18 View Complete Implementation : HiLoForcedTableSequenceTest.java
Copyright GNU Lesser General Public License v2.1
Author : cacheonix
public void testNormalBoundary() {
    EnreplacedyPersister persister = sfi().getEnreplacedyPersister(Enreplacedy.clreplaced.getName());
    replacedertClreplacedreplacedignability(SequenceStyleGenerator.clreplaced, persister.getIdentifierGenerator().getClreplaced());
    SequenceStyleGenerator generator = (SequenceStyleGenerator) persister.getIdentifierGenerator();
    replacedertClreplacedreplacedignability(OptimizerFactory.HiLoOptimizer.clreplaced, generator.getOptimizer().getClreplaced());
    OptimizerFactory.HiLoOptimizer optimizer = (OptimizerFactory.HiLoOptimizer) generator.getOptimizer();
    int increment = optimizer.getIncrementSize();
    Enreplacedy[] enreplacedies = new Enreplacedy[increment + 1];
    Session s = openSession();
    s.beginTransaction();
    for (int i = 0; i < increment; i++) {
        enreplacedies[i] = new Enreplacedy("" + (i + 1));
        s.save(enreplacedies[i]);
        long expectedId = i + 1;
        replacedertEquals(expectedId, enreplacedies[i].getId().longValue());
        replacedertEquals(1, generator.getOptimizer().getLastSourceValue());
        replacedertEquals(i + 1, optimizer.getLastValue());
        replacedertEquals(increment + 1, optimizer.getHiValue());
    }
    // now force a "clock over"
    enreplacedies[increment] = new Enreplacedy("" + increment);
    s.save(enreplacedies[increment]);
    long expectedId = optimizer.getIncrementSize() + 1;
    replacedertEquals(expectedId, enreplacedies[optimizer.getIncrementSize()].getId().longValue());
    // initialization + clokc-over
    replacedertEquals(2, optimizer.getLastSourceValue());
    replacedertEquals(increment + 1, optimizer.getLastValue());
    replacedertEquals((increment * 2) + 1, optimizer.getHiValue());
    s.getTransaction().commit();
    s.beginTransaction();
    for (int i = 0; i < enreplacedies.length; i++) {
        replacedertEquals(i + 1, enreplacedies[i].getId().intValue());
        s.delete(enreplacedies[i]);
    }
    s.getTransaction().commit();
    s.close();
}

18 View Complete Implementation : BasicForcedTableSequenceTest.java
Copyright GNU Lesser General Public License v2.1
Author : cacheonix
public void testNormalBoundary() {
    EnreplacedyPersister persister = sfi().getEnreplacedyPersister(Enreplacedy.clreplaced.getName());
    replacedertClreplacedreplacedignability(SequenceStyleGenerator.clreplaced, persister.getIdentifierGenerator().getClreplaced());
    SequenceStyleGenerator generator = (SequenceStyleGenerator) persister.getIdentifierGenerator();
    int count = 5;
    Enreplacedy[] enreplacedies = new Enreplacedy[count];
    Session s = openSession();
    s.beginTransaction();
    for (int i = 0; i < count; i++) {
        enreplacedies[i] = new Enreplacedy("" + (i + 1));
        s.save(enreplacedies[i]);
        long expectedId = i + 1;
        replacedertEquals(expectedId, enreplacedies[i].getId().longValue());
        replacedertEquals(expectedId, generator.getDatabaseStructure().getTimesAccessed());
        replacedertEquals(expectedId, generator.getOptimizer().getLastSourceValue());
    }
    s.getTransaction().commit();
    s.beginTransaction();
    for (int i = 0; i < count; i++) {
        replacedertEquals(i + 1, enreplacedies[i].getId().intValue());
        s.delete(enreplacedies[i]);
    }
    s.getTransaction().commit();
    s.close();
}