Skip to content

Commit

Permalink
ignite-1794 Refactored hibernate modules, switched to hibernate 5.1
Browse files Browse the repository at this point in the history
  • Loading branch information
sboikov committed Apr 26, 2017
1 parent c9cd761 commit ee1b19d
Show file tree
Hide file tree
Showing 99 changed files with 1,831 additions and 2,851 deletions.
5 changes: 3 additions & 2 deletions assembly/dependencies-fabric.xml
Expand Up @@ -127,8 +127,9 @@
<exclude>org.apache.ignite:ignite-hadoop</exclude> <exclude>org.apache.ignite:ignite-hadoop</exclude>
<exclude>org.apache.ignite:ignite-codegen</exclude> <exclude>org.apache.ignite:ignite-codegen</exclude>
<exclude>org.apache.ignite:ignite-apache-license-gen</exclude> <exclude>org.apache.ignite:ignite-apache-license-gen</exclude>
<exclude>org.apache.ignite:ignite-hibernate</exclude> <exclude>org.apache.ignite:ignite-hibernate-core</exclude>
<exclude>org.apache.ignite:ignite-hibernate5</exclude> <exclude>org.apache.ignite:ignite-hibernate_4.2</exclude>
<exclude>org.apache.ignite:ignite-hibernate_5.1</exclude>
<exclude>org.apache.ignite:ignite-schedule</exclude> <exclude>org.apache.ignite:ignite-schedule</exclude>
<exclude>org.apache.ignite:ignite-geospatial</exclude> <exclude>org.apache.ignite:ignite-geospatial</exclude>
<exclude>org.apache.ignite:ignite-appserver-test</exclude> <exclude>org.apache.ignite:ignite-appserver-test</exclude>
Expand Down
2 changes: 1 addition & 1 deletion examples/pom-standalone-lgpl.xml
Expand Up @@ -191,7 +191,7 @@
<dependencies> <dependencies>
<dependency> <dependency>
<groupId>org.apache.ignite</groupId> <groupId>org.apache.ignite</groupId>
<artifactId>ignite-hibernate</artifactId> <artifactId>ignite-hibernate_5.1</artifactId>
<version>to_be_replaced_by_ignite_version</version> <version>to_be_replaced_by_ignite_version</version>
</dependency> </dependency>


Expand Down
2 changes: 1 addition & 1 deletion examples/pom-standalone.xml
Expand Up @@ -192,7 +192,7 @@
<dependencies> <dependencies>
<dependency> <dependency>
<groupId>org.apache.ignite</groupId> <groupId>org.apache.ignite</groupId>
<artifactId>ignite-hibernate</artifactId> <artifactId>ignite-hibernate_5.1</artifactId>
<version>to_be_replaced_by_ignite_version</version> <version>to_be_replaced_by_ignite_version</version>
</dependency> </dependency>


Expand Down
38 changes: 20 additions & 18 deletions examples/pom.xml
Expand Up @@ -62,24 +62,6 @@
<version>${project.version}</version> <version>${project.version}</version>
</dependency> </dependency>


<dependency>
<groupId>org.apache.ignite</groupId>
<artifactId>ignite-hibernate</artifactId>
<version>${project.version}</version>
</dependency>

<dependency>
<groupId>org.apache.ignite</groupId>
<artifactId>ignite-schedule</artifactId>
<version>${project.version}</version>
</dependency>

<dependency>
<groupId>org.apache.ignite</groupId>
<artifactId>ignite-geospatial</artifactId>
<version>${project.version}</version>
</dependency>

<dependency> <dependency>
<groupId>org.apache.ignite</groupId> <groupId>org.apache.ignite</groupId>
<artifactId>ignite-spring-data</artifactId> <artifactId>ignite-spring-data</artifactId>
Expand Down Expand Up @@ -288,6 +270,26 @@
<lgpl.folder>src/main/java-lgpl</lgpl.folder> <lgpl.folder>src/main/java-lgpl</lgpl.folder>
<lgpl.test.folder>src/test/java-lgpl</lgpl.test.folder> <lgpl.test.folder>src/test/java-lgpl</lgpl.test.folder>
</properties> </properties>

<dependencies>
<dependency>
<groupId>org.apache.ignite</groupId>
<artifactId>ignite-hibernate_5.1</artifactId>
<version>${project.version}</version>
</dependency>

<dependency>
<groupId>org.apache.ignite</groupId>
<artifactId>ignite-schedule</artifactId>
<version>${project.version}</version>
</dependency>

<dependency>
<groupId>org.apache.ignite</groupId>
<artifactId>ignite-geospatial</artifactId>
<version>${project.version}</version>
</dependency>
</dependencies>
</profile> </profile>
</profiles> </profiles>


Expand Down
Expand Up @@ -31,9 +31,9 @@
import org.hibernate.Session; import org.hibernate.Session;
import org.hibernate.SessionFactory; import org.hibernate.SessionFactory;
import org.hibernate.Transaction; import org.hibernate.Transaction;
import org.hibernate.boot.MetadataSources;
import org.hibernate.boot.registry.StandardServiceRegistryBuilder;
import org.hibernate.cache.spi.access.AccessType; import org.hibernate.cache.spi.access.AccessType;
import org.hibernate.cfg.Configuration;
import org.hibernate.service.ServiceRegistryBuilder;
import org.hibernate.stat.SecondLevelCacheStatistics; import org.hibernate.stat.SecondLevelCacheStatistics;


import static org.apache.ignite.cache.CacheAtomicityMode.ATOMIC; import static org.apache.ignite.cache.CacheAtomicityMode.ATOMIC;
Expand Down Expand Up @@ -226,14 +226,14 @@ private static IgniteCache createCache(String name, CacheAtomicityMode atomicity
* @return New Hibernate {@link SessionFactory}. * @return New Hibernate {@link SessionFactory}.
*/ */
private static SessionFactory createHibernateSessionFactory(URL hibernateCfg) { private static SessionFactory createHibernateSessionFactory(URL hibernateCfg) {
ServiceRegistryBuilder builder = new ServiceRegistryBuilder(); StandardServiceRegistryBuilder builder = new StandardServiceRegistryBuilder();


builder.applySetting("hibernate.connection.url", JDBC_URL); builder.applySetting("hibernate.connection.url", JDBC_URL);
builder.applySetting("hibernate.show_sql", true); builder.applySetting("hibernate.show_sql", true);


return new Configuration() builder.configure(hibernateCfg);
.configure(hibernateCfg)
.buildSessionFactory(builder.buildServiceRegistry()); return new MetadataSources(builder.build()).buildMetadata().buildSessionFactory();
} }


/** /**
Expand Down
Expand Up @@ -24,7 +24,7 @@ interested in):
... ...
<dependency> <dependency>
<groupId>org.apache.ignite</groupId> <groupId>org.apache.ignite</groupId>
<artifactId>ignite-hibernate</artifactId> <artifactId>ignite-hibernate_4.2</artifactId>
<version>${ignite.version}</version> <version>${ignite.version}</version>
</dependency> </dependency>
... ...
Expand Down
File renamed without changes.
17 changes: 15 additions & 2 deletions modules/hibernate/pom.xml → modules/hibernate-4.2/pom.xml
Expand Up @@ -30,7 +30,7 @@
<relativePath>../../parent</relativePath> <relativePath>../../parent</relativePath>
</parent> </parent>


<artifactId>ignite-hibernate</artifactId> <artifactId>ignite-hibernate_4.2</artifactId>
<version>2.0.0-SNAPSHOT</version> <version>2.0.0-SNAPSHOT</version>
<url>http://ignite.apache.org</url> <url>http://ignite.apache.org</url>


Expand All @@ -41,10 +41,16 @@
<version>${project.version}</version> <version>${project.version}</version>
</dependency> </dependency>


<dependency>
<groupId>org.apache.ignite</groupId>
<artifactId>ignite-hibernate-core</artifactId>
<version>${project.version}</version>
</dependency>

<dependency> <dependency>
<groupId>org.hibernate</groupId> <groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId> <artifactId>hibernate-core</artifactId>
<version>4.2.6.Final</version> <version>4.2.21.Final</version>
</dependency> </dependency>


<dependency> <dependency>
Expand Down Expand Up @@ -117,6 +123,13 @@
<version>${spring.version}</version> <version>${spring.version}</version>
<scope>test</scope> <scope>test</scope>
</dependency> </dependency>

<dependency>
<groupId>com.thoughtworks.xstream</groupId>
<artifactId>xstream</artifactId>
<version>1.4.8</version>
<scope>test</scope>
</dependency>
</dependencies> </dependencies>


<build> <build>
Expand Down
Expand Up @@ -27,12 +27,12 @@
*/ */
public abstract class HibernateAbstractRegionAccessStrategy implements RegionAccessStrategy { public abstract class HibernateAbstractRegionAccessStrategy implements RegionAccessStrategy {
/** */ /** */
protected final HibernateAccessStrategyAdapter stgy; final HibernateAccessStrategyAdapter stgy;


/** /**
* @param stgy Access strategy implementation. * @param stgy Access strategy implementation.
*/ */
protected HibernateAbstractRegionAccessStrategy(HibernateAccessStrategyAdapter stgy) { HibernateAbstractRegionAccessStrategy(HibernateAccessStrategyAdapter stgy) {
this.stgy = stgy; this.stgy = stgy;
} }


Expand All @@ -58,22 +58,26 @@ protected HibernateAbstractRegionAccessStrategy(HibernateAccessStrategyAdapter s


/** {@inheritDoc} */ /** {@inheritDoc} */
@Nullable @Override public SoftLock lockItem(Object key, Object ver) throws CacheException { @Nullable @Override public SoftLock lockItem(Object key, Object ver) throws CacheException {
return stgy.lock(key); stgy.lock(key);

return null;
} }


/** {@inheritDoc} */ /** {@inheritDoc} */
@Nullable @Override public SoftLock lockRegion() throws CacheException { @Nullable @Override public SoftLock lockRegion() throws CacheException {
return stgy.lockRegion(); stgy.lockRegion();

return null;
} }


/** {@inheritDoc} */ /** {@inheritDoc} */
@Override public void unlockRegion(SoftLock lock) throws CacheException { @Override public void unlockRegion(SoftLock lock) throws CacheException {
stgy.unlockRegion(lock); stgy.unlockRegion();
} }


/** {@inheritDoc} */ /** {@inheritDoc} */
@Override public void unlockItem(Object key, SoftLock lock) throws CacheException { @Override public void unlockItem(Object key, SoftLock lock) throws CacheException {
stgy.unlock(key, lock); stgy.unlock(key);
} }


/** {@inheritDoc} */ /** {@inheritDoc} */
Expand Down
Expand Up @@ -70,7 +70,7 @@ public class HibernateCollectionRegion extends HibernateTransactionalDataRegion
* @param cache Region cache. * @param cache Region cache.
* @param dataDesc Region data description. * @param dataDesc Region data description.
*/ */
public HibernateCollectionRegion(HibernateRegionFactory factory, String name, HibernateCollectionRegion(HibernateRegionFactory factory, String name,
Ignite ignite, HibernateCacheProxy cache, CacheDataDescription dataDesc) { Ignite ignite, HibernateCacheProxy cache, CacheDataDescription dataDesc) {
super(factory, name, ignite, cache, dataDesc); super(factory, name, ignite, cache, dataDesc);
} }
Expand Down
Expand Up @@ -60,7 +60,7 @@ public class HibernateEntityRegion extends HibernateTransactionalDataRegion impl
* @param cache Region cache, * @param cache Region cache,
* @param dataDesc Region data description. * @param dataDesc Region data description.
*/ */
public HibernateEntityRegion(HibernateRegionFactory factory, String name, Ignite ignite, HibernateEntityRegion(HibernateRegionFactory factory, String name, Ignite ignite,
HibernateCacheProxy cache, CacheDataDescription dataDesc) { HibernateCacheProxy cache, CacheDataDescription dataDesc) {
super(factory, name, ignite, cache, dataDesc); super(factory, name, ignite, cache, dataDesc);
} }
Expand Down Expand Up @@ -106,7 +106,7 @@ private AccessStrategy(HibernateAccessStrategyAdapter stgy) {
/** {@inheritDoc} */ /** {@inheritDoc} */
@Override public boolean afterUpdate(Object key, Object val, Object currVer, Object previousVer, SoftLock lock) @Override public boolean afterUpdate(Object key, Object val, Object currVer, Object previousVer, SoftLock lock)
throws CacheException { throws CacheException {
return stgy.afterUpdate(key, val, lock); return stgy.afterUpdate(key, val);
} }
} }
} }
Expand Up @@ -36,7 +36,7 @@ public class HibernateGeneralDataRegion extends HibernateRegion implements Gener
* @param ignite Grid. * @param ignite Grid.
* @param cache Region cache. * @param cache Region cache.
*/ */
public HibernateGeneralDataRegion(HibernateRegionFactory factory, String name, HibernateGeneralDataRegion(HibernateRegionFactory factory, String name,
Ignite ignite, HibernateCacheProxy cache) { Ignite ignite, HibernateCacheProxy cache) {
super(factory, name, ignite, cache); super(factory, name, ignite, cache);
} }
Expand Down Expand Up @@ -66,6 +66,11 @@ public HibernateGeneralDataRegion(HibernateRegionFactory factory, String name,


/** {@inheritDoc} */ /** {@inheritDoc} */
@Override public void evictAll() throws CacheException { @Override public void evictAll() throws CacheException {
HibernateAccessStrategyAdapter.evictAll(cache); try {
HibernateAccessStrategyAdapter.evictAll(cache);
}
catch (IgniteCheckedException e) {
throw HibernateRegionFactory.EXCEPTION_CONVERTER.convert(e);
}
} }
} }
Expand Up @@ -17,12 +17,13 @@


package org.apache.ignite.cache.hibernate; package org.apache.ignite.cache.hibernate;


import java.io.Serializable;
import org.apache.ignite.internal.util.typedef.internal.S; import org.apache.ignite.internal.util.typedef.internal.S;


/** /**
* Hibernate cache key wrapper. * Hibernate cache key wrapper.
*/ */
public class HibernateKeyWrapper { public class HibernateKeyWrapper implements Serializable {
/** Key. */ /** Key. */
private final Object key; private final Object key;


Expand Down
Expand Up @@ -50,8 +50,11 @@ public class HibernateNaturalIdRegion extends HibernateTransactionalDataRegion i
* @param cache Region cache, * @param cache Region cache,
* @param dataDesc Region data description. * @param dataDesc Region data description.
*/ */
public HibernateNaturalIdRegion(HibernateRegionFactory factory, String name, HibernateNaturalIdRegion(HibernateRegionFactory factory,
Ignite ignite, HibernateCacheProxy cache, CacheDataDescription dataDesc) { String name,
Ignite ignite,
HibernateCacheProxy cache,
CacheDataDescription dataDesc) {
super(factory, name, ignite, cache, dataDesc); super(factory, name, ignite, cache, dataDesc);
} }


Expand Down Expand Up @@ -94,7 +97,7 @@ private AccessStrategy(HibernateAccessStrategyAdapter stgy) {


/** {@inheritDoc} */ /** {@inheritDoc} */
@Override public boolean afterUpdate(Object key, Object val, SoftLock lock) throws CacheException { @Override public boolean afterUpdate(Object key, Object val, SoftLock lock) throws CacheException {
return stgy.afterUpdate(key, val, lock); return stgy.afterUpdate(key, val);
} }
} }
} }
Expand Up @@ -56,14 +56,14 @@
* values. For this reason, the query cache should always be used in conjunction with * values. For this reason, the query cache should always be used in conjunction with
* the second-level cache for those entities expected to be cached as part of a query result cache * the second-level cache for those entities expected to be cached as part of a query result cache
*/ */
public class HibernateQueryResultsRegion extends HibernateGeneralDataRegion implements QueryResultsRegion { class HibernateQueryResultsRegion extends HibernateGeneralDataRegion implements QueryResultsRegion {
/** /**
* @param factory Region factory. * @param factory Region factory.
* @param name Region name. * @param name Region name.
* @param ignite Grid. * @param ignite Grid.
* @param cache Region cache. * @param cache Region cache.
*/ */
public HibernateQueryResultsRegion(HibernateRegionFactory factory, String name, HibernateQueryResultsRegion(HibernateRegionFactory factory, String name,
Ignite ignite, HibernateCacheProxy cache) { Ignite ignite, HibernateCacheProxy cache) {
super(factory, name, ignite, cache); super(factory, name, ignite, cache);
} }
Expand Down
Expand Up @@ -45,7 +45,7 @@ public class HibernateRegion implements Region {
* @param ignite Grid. * @param ignite Grid.
* @param cache Region cache. * @param cache Region cache.
*/ */
public HibernateRegion(HibernateRegionFactory factory, String name, Ignite ignite, HibernateCacheProxy cache) { HibernateRegion(HibernateRegionFactory factory, String name, Ignite ignite, HibernateCacheProxy cache) {
this.factory = factory; this.factory = factory;
this.name = name; this.name = name;
this.ignite = ignite; this.ignite = ignite;
Expand Down

0 comments on commit ee1b19d

Please sign in to comment.