1 package net.sumaris.core.dao.technical.hibernate.spatial;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 import org.hibernate.boot.model.TypeContributions;
26 import org.hibernate.dialect.HSQLDialect;
27 import org.hibernate.service.ServiceRegistry;
28 import org.hibernate.spatial.GeolatteGeometryJavaTypeDescriptor;
29 import org.hibernate.spatial.GeolatteGeometryType;
30 import org.hibernate.spatial.JTSGeometryJavaTypeDescriptor;
31 import org.hibernate.spatial.JTSGeometryType;
32 import org.hibernate.type.descriptor.sql.LongVarcharTypeDescriptor;
33
34
35
36
37 public class HSQLSpatialDialect extends HSQLDialect {
38
39 @Override
40 public void contributeTypes(TypeContributions typeContributions, ServiceRegistry serviceRegistry) {
41 super.contributeTypes(typeContributions, serviceRegistry);
42
43
44 typeContributions.contributeType(new GeolatteGeometryType(LongVarcharTypeDescriptor.INSTANCE));
45 typeContributions.contributeType(new JTSGeometryType(LongVarcharTypeDescriptor.INSTANCE));
46
47 typeContributions.contributeJavaTypeDescriptor(GeolatteGeometryJavaTypeDescriptor.INSTANCE);
48 typeContributions.contributeJavaTypeDescriptor(JTSGeometryJavaTypeDescriptor.INSTANCE);
49 }
50 }