X-Git-Url: http://git.argeo.org/?a=blobdiff_plain;f=org.argeo.app.geo%2Fsrc%2Forg%2Fargeo%2Fapp%2Fapi%2Fgeo%2FFeatureAdapter.java;h=03ca1ce4bd8fd5a0b670e410fd962453a7172270;hb=d76ddbc151846278fabe03f5e5dcbbca94704ba5;hp=d00a2c092952c1a79850ec0c2cd5f01a9005c9c1;hpb=59da7271e876ca8a429beb86b67e7350eef1e1ca;p=gpl%2Fargeo-suite.git diff --git a/org.argeo.app.geo/src/org/argeo/app/api/geo/FeatureAdapter.java b/org.argeo.app.geo/src/org/argeo/app/api/geo/FeatureAdapter.java index d00a2c0..03ca1ce 100644 --- a/org.argeo.app.geo/src/org/argeo/app/api/geo/FeatureAdapter.java +++ b/org.argeo.app.geo/src/org/argeo/app/api/geo/FeatureAdapter.java @@ -17,6 +17,17 @@ public interface FeatureAdapter { default Geometry getDefaultGeometry(Content c, QName targetFeature) { // TODO deal with more defaults // TODO deal with target feature + if (c.hasContentClass(EntityType.geopoint)) { + return getGeoPointGeometry(c); + } + return null; + } + + void writeProperties(JsonGenerator g, Content content, QName targetFeature); + + void addConstraintsForFeature(AndFilter filter, QName targetFeature); + + static Geometry getGeoPointGeometry(Content c) { if (c.hasContentClass(EntityType.geopoint)) { double latitude = c.get(WGS84PosName.lat, Double.class).get(); double longitude = c.get(WGS84PosName.lon, Double.class).get(); @@ -27,8 +38,4 @@ public interface FeatureAdapter { } return null; } - - void writeProperties(JsonGenerator g, Content content, QName targetFeature); - - void addConstraintsForFeature(AndFilter filter, QName targetFeature); }