mirror of
https://github.com/hibernate/hibernate-orm
synced 2025-02-21 18:45:09 +00:00
HHH-6509 - Updates to geolatte-geom 1.0-SNAPSHOT
This commit is contained in:
parent
ed98698aa4
commit
dbfeb16e43
@ -25,8 +25,8 @@ apply plugin: 'hibernate-matrix-testing'
|
||||
dependencies {
|
||||
compile(project(':hibernate-core'))
|
||||
compile([group: 'postgresql', name: 'postgresql', version: '8.4-701.jdbc4'])
|
||||
compile([group: 'org.geolatte', name: 'geolatte-geom', version: '0.12-SNAPSHOT'])
|
||||
compile([group: 'com.vividsolutions', name: 'jts', version: '1.12'])
|
||||
compile([group: 'org.geolatte', name: 'geolatte-geom', version: '1.0-SNAPSHOT'])
|
||||
// compile([group: 'com.vividsolutions', name: 'jts', version: '1.12'])
|
||||
|
||||
compile(libraries.dom4j) {
|
||||
transitive = false
|
||||
|
@ -50,7 +50,7 @@ public GeolatteGeometryJavaTypeDescriptor() {
|
||||
|
||||
@Override
|
||||
public String toString(Geometry value) {
|
||||
return value.asText();
|
||||
return value.toString();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -29,16 +29,16 @@
|
||||
|
||||
import org.geolatte.geom.ByteBuffer;
|
||||
import org.geolatte.geom.ByteOrder;
|
||||
import org.geolatte.geom.DimensionalFlag;
|
||||
import org.geolatte.geom.C2D;
|
||||
import org.geolatte.geom.Envelope;
|
||||
import org.geolatte.geom.Geometry;
|
||||
import org.geolatte.geom.PointSequence;
|
||||
import org.geolatte.geom.PointSequenceBuilders;
|
||||
import org.geolatte.geom.Polygon;
|
||||
import org.geolatte.geom.PositionSequence;
|
||||
import org.geolatte.geom.PositionSequenceBuilders;
|
||||
import org.geolatte.geom.codec.Wkb;
|
||||
import org.geolatte.geom.codec.WkbDecoder;
|
||||
import org.geolatte.geom.codec.WkbEncoder;
|
||||
import org.geolatte.geom.crs.CrsId;
|
||||
import org.geolatte.geom.crs.CoordinateReferenceSystems;
|
||||
import org.geolatte.geom.jts.JTS;
|
||||
|
||||
import org.hibernate.HibernateException;
|
||||
@ -109,13 +109,14 @@ else if ( object instanceof com.vividsolutions.jts.geom.Envelope ) {
|
||||
|
||||
}
|
||||
|
||||
private static Geometry toPolygon(Envelope env) {
|
||||
final PointSequence ps = PointSequenceBuilders.fixedSized( 4, DimensionalFlag.d2D, CrsId.UNDEFINED )
|
||||
.add( env.getMinX(), env.getMinY() )
|
||||
.add( env.getMinX(), env.getMaxY() )
|
||||
.add( env.getMaxX(), env.getMaxY() )
|
||||
.add( env.getMinX(), env.getMinY() ).toPointSequence();
|
||||
return new Polygon( ps );
|
||||
private static Geometry<C2D> toPolygon(Envelope env) {
|
||||
final PositionSequence<C2D> ps = PositionSequenceBuilders.fixedSized(4, C2D.class)
|
||||
.add( env.lowerLeft().getCoordinate( 0 ), env.lowerLeft().getCoordinate(1) )
|
||||
.add( env.lowerLeft().getCoordinate( 0 ), env.upperRight().getCoordinate(1) )
|
||||
.add( env.upperRight().getCoordinate( 0 ), env.upperRight().getCoordinate(1) )
|
||||
.add( env.lowerLeft().getCoordinate( 0 ), env.lowerLeft().getCoordinate(1) )
|
||||
.toPositionSequence();
|
||||
return new Polygon<C2D>( ps, CoordinateReferenceSystems.PROJECTED_2D_METER );
|
||||
}
|
||||
|
||||
private static ByteBuffer toByteBuffer(Blob blob) {
|
||||
|
@ -25,10 +25,13 @@
|
||||
import javax.persistence.Id;
|
||||
import javax.persistence.Table;
|
||||
|
||||
import org.geolatte.geom.C3DM;
|
||||
import org.geolatte.geom.Geometry;
|
||||
import org.geolatte.geom.codec.Wkt;
|
||||
import org.geolatte.geom.codec.WktDecodeException;
|
||||
import org.geolatte.geom.codec.WktDecoder;
|
||||
import org.geolatte.geom.crs.CoordinateReferenceSystem;
|
||||
import org.geolatte.geom.crs.CoordinateReferenceSystems;
|
||||
|
||||
import org.hibernate.spatial.testing.TestDataElement;
|
||||
|
||||
@ -39,13 +42,14 @@
|
||||
@Table(name = "geomtest")
|
||||
public class GeomEntity {
|
||||
|
||||
private final static CoordinateReferenceSystem<C3DM> CRS = CoordinateReferenceSystems.PROJECTED_3DM_METER;
|
||||
|
||||
@Id
|
||||
private Integer id;
|
||||
|
||||
private String type;
|
||||
|
||||
private Geometry geom;
|
||||
private Geometry<C3DM> geom;
|
||||
|
||||
public Integer getId() {
|
||||
return id;
|
||||
@ -63,17 +67,17 @@ public void setType(String type) {
|
||||
this.type = type;
|
||||
}
|
||||
|
||||
public Geometry getGeom() {
|
||||
public Geometry<C3DM> getGeom() {
|
||||
return geom;
|
||||
}
|
||||
|
||||
public void setGeom(Geometry geom) {
|
||||
public void setGeom(Geometry<C3DM> geom) {
|
||||
this.geom = geom;
|
||||
}
|
||||
|
||||
public static GeomEntity createFrom(TestDataElement element) throws WktDecodeException {
|
||||
WktDecoder decoder = Wkt.newDecoder( Wkt.Dialect.POSTGIS_EWKT_1 );
|
||||
Geometry geom = decoder.decode( element.wkt );
|
||||
Geometry<C3DM> geom = decoder.decode( element.wkt, CRS );
|
||||
GeomEntity result = new GeomEntity();
|
||||
result.setId( element.id );
|
||||
result.setGeom( geom );
|
||||
|
@ -4,6 +4,7 @@
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import org.geolatte.geom.C3DM;
|
||||
import org.geolatte.geom.Geometry;
|
||||
import org.geolatte.geom.GeometryEquality;
|
||||
import org.geolatte.geom.GeometryPointEquality;
|
||||
@ -66,8 +67,8 @@ private void retrieveAndCompare(Map<Integer, GeomEntity> stored) {
|
||||
for ( GeomEntity storedEntity : stored.values() ) {
|
||||
id = storedEntity.getId();
|
||||
GeomEntity retrievedEntity = (GeomEntity) session.get( GeomEntity.class, id );
|
||||
Geometry retrievedGeometry = retrievedEntity.getGeom();
|
||||
Geometry storedGeometry = storedEntity.getGeom();
|
||||
Geometry<C3DM> retrievedGeometry = retrievedEntity.getGeom();
|
||||
Geometry<C3DM> storedGeometry = storedEntity.getGeom();
|
||||
String msg = createFailureMessage( storedEntity.getId(), storedGeometry, retrievedGeometry );
|
||||
assertTrue( msg, geomEq.equals( storedGeometry, retrievedGeometry ) );
|
||||
}
|
||||
@ -87,8 +88,8 @@ private void retrieveAndCompare(Map<Integer, GeomEntity> stored) {
|
||||
}
|
||||
|
||||
private String createFailureMessage(int id, Geometry storedGeometry, Geometry retrievedGeometry) {
|
||||
String expectedText = ( storedGeometry != null ? storedGeometry.asText() : "NULL" );
|
||||
String retrievedText = ( retrievedGeometry != null ? retrievedGeometry.asText() : "NULL" );
|
||||
String expectedText = ( storedGeometry != null ? storedGeometry.toString() : "NULL" );
|
||||
String retrievedText = ( retrievedGeometry != null ? retrievedGeometry.toString() : "NULL" );
|
||||
return String.format(
|
||||
"Equality testsuite-suite failed for %d.%nExpected: %s%nReceived:%s",
|
||||
id,
|
||||
|
@ -30,10 +30,10 @@ hibernate.show_sql true
|
||||
|
||||
hibernate.max_fetch_depth 5
|
||||
|
||||
hibernate.dialect org.hibernate.dialect.H2Dialect
|
||||
hibernate.connection.driver_class org.h2.Driver
|
||||
hibernate.connection.url jdbc:h2:mem:db1;DB_CLOSE_DELAY=-1;MVCC=TRUE
|
||||
hibernate.connection.username sa
|
||||
#hibernate.dialect org.hibernate.dialect.H2Dialect
|
||||
#hibernate.connection.driver_class org.h2.Driver
|
||||
#hibernate.connection.url jdbc:h2:mem:db1;DB_CLOSE_DELAY=-1;MVCC=TRUE
|
||||
#hibernate.connection.username sa
|
||||
|
||||
#hibernate.cache.region_prefix hibernate.test
|
||||
#hibernate.cache.region.factory_class org.hibernate.testing.cache.CachingRegionFactory
|
||||
@ -44,11 +44,11 @@ hibernate.connection.username sa
|
||||
|
||||
## Configs for spatial databases (used during testing on local dev environment).
|
||||
#
|
||||
#hibernate.dialect org.hibernate.spatial.dialect.postgis.PostgisDialect
|
||||
#hibernate.connection.driver_class org.postgresql.Driver
|
||||
#hibernate.connection.url jdbc:postgresql://localhost:5432:hibbrtru
|
||||
#hibernate.connection.username hibbrtru
|
||||
#hibernate.connection.password hibbrtru
|
||||
hibernate.dialect org.hibernate.spatial.dialect.postgis.PostgisDialect
|
||||
hibernate.connection.driver_class org.postgresql.Driver
|
||||
hibernate.connection.url jdbc:postgresql://localhost:5432:hibbrtru
|
||||
hibernate.connection.username hibbrtru
|
||||
hibernate.connection.password hibbrtru
|
||||
|
||||
##
|
||||
## GeoDb (H2 spatial extension)
|
||||
|
Loading…
x
Reference in New Issue
Block a user