|
Hibernate example source code file (PersisterClassProviderTest.java)
The Hibernate PersisterClassProviderTest.java source code/* * Hibernate, Relational Persistence for Idiomatic Java * * JBoss, Home of Professional Open Source * Copyright 2011 Red Hat Inc. and/or its affiliates and other contributors * as indicated by the @authors tag. All rights reserved. * See the copyright.txt in the distribution for a * full listing of individual contributors. * * This copyrighted material is made available to anyone wishing to use, * modify, copy, or redistribute it subject to the terms and conditions * of the GNU Lesser General Public License, v. 2.1. * This program is distributed in the hope that it will be useful, but WITHOUT A * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. * You should have received a copy of the GNU Lesser General Public License, * v.2.1 along with this distribution; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, * MA 02110-1301, USA. */ package org.hibernate.test.cfg.persister; import org.hibernate.MappingException; import org.hibernate.SessionFactory; import org.hibernate.cfg.Configuration; import org.hibernate.persister.spi.PersisterClassResolver; import org.hibernate.service.BasicServiceRegistry; import org.hibernate.service.ServiceRegistryBuilder; import org.junit.Test; import org.hibernate.testing.junit4.BaseUnitTestCase; import static org.junit.Assert.assertEquals; /** * @author Emmanuel Bernard <emmanuel@hibernate.org> */ public class PersisterClassProviderTest extends BaseUnitTestCase { @Test public void testPersisterClassProvider() throws Exception { Configuration cfg = new Configuration(); cfg.addAnnotatedClass( Gate.class ); BasicServiceRegistry serviceRegistry = new ServiceRegistryBuilder( cfg.getProperties() ).buildServiceRegistry(); //no exception as the GoofyPersisterClassProvider is not set SessionFactory sessionFactory = cfg.buildSessionFactory( serviceRegistry ); sessionFactory.close(); ServiceRegistryBuilder.destroy( serviceRegistry ); serviceRegistry = new ServiceRegistryBuilder( cfg.getProperties() ) .addService( PersisterClassResolver.class, new GoofyPersisterClassProvider() ) .buildServiceRegistry(); cfg = new Configuration(); cfg.addAnnotatedClass( Gate.class ); try { sessionFactory = cfg.buildSessionFactory( serviceRegistry ); sessionFactory.close(); } catch ( MappingException e ) { assertEquals( "The entity persister should be overridden", GoofyPersisterClassProvider.NoopEntityPersister.class, ( (GoofyException) e.getCause() ).getValue() ); } finally { ServiceRegistryBuilder.destroy( serviceRegistry ); } cfg = new Configuration(); cfg.addAnnotatedClass( Portal.class ); cfg.addAnnotatedClass( Window.class ); serviceRegistry = new ServiceRegistryBuilder( cfg.getProperties() ) .addService( PersisterClassResolver.class, new GoofyPersisterClassProvider() ) .buildServiceRegistry(); try { sessionFactory = cfg.buildSessionFactory( serviceRegistry ); sessionFactory.close(); } catch ( MappingException e ) { assertEquals( "The collection persister should be overridden but not the entity persister", GoofyPersisterClassProvider.NoopCollectionPersister.class, ( (GoofyException) e.getCause() ).getValue() ); } finally { ServiceRegistryBuilder.destroy( serviceRegistry ); } } } Other Hibernate examples (source code examples)Here is a short list of links related to this Hibernate PersisterClassProviderTest.java source code file: |
... this post is sponsored by my books ... | |
#1 New Release! |
FP Best Seller |
Copyright 1998-2021 Alvin Alexander, alvinalexander.com
All Rights Reserved.
A percentage of advertising revenue from
pages under the /java/jwarehouse
URI on this website is
paid back to open source projects.