private void processCoreferencedEntities(Integer docKey, List<Entity> entities) throws SQLException { Set<String> values = new HashSet<>(); Set<String> externalIds = new HashSet<>(); Set<String> geoJsons = new HashSet<>(); Class<? extends Entity> type = null; for (Entity e : entities) { values.add(e.getValue()); externalIds.add(e.getExternalId()); if (e instanceof Location) { Location l = (Location) e; try { geoJsons.add(addCrsToGeoJSON(l.getGeoJson())); } catch (BaleenException ex) { getMonitor().warn("Unable to add CRS to GeoJSON", ex); } } type = getSuperclass(type, e.getClass()); } if (type == null) { // No entities processed return; } Integer entityKey = executeEntityInsert(docKey, values, externalIds, type.getName()); if (entityKey != null) { for (String geoJson : geoJsons) { executeEntityGeoInsert(entityKey, geoJson); } } }
String geoJson = coord.getGeoJson(); String coordinate = null;
private void testJCas(JCas jCas, String s) { assertEquals(1, JCasUtil.select(jCas, Location.class).size()); Location l = JCasUtil.selectByIndex(jCas, Location.class, 0); assertEquals(s, l.getValue()); assertNotNull(l.getGeoJson()); } }
@Override public void validate(Location t) { super.validate(t); assertEquals(value, t.getValue()); assertEquals(geometry, t.getGeoJson()); } }
@Test public void testOneGeoJsonInner() throws Exception { AnalysisEngine rneAE = AnalysisEngineFactory.createEngine(RemoveNestedLocations.class); jCas.setDocumentText(NORTH_LONDON); Location l1 = Annotations.createLocation(jCas, 6, 12, LONDON, FAKE_GEOJSON); Location l2 = Annotations.createLocation(jCas, 0, 12, NORTH_LONDON, null); rneAE.process(jCas); assertEquals(1, JCasUtil.select(jCas, Location.class).size()); Location l = JCasUtil.selectByIndex(jCas, Location.class, 0); assertEquals(l1.getGeoJson(), l.getGeoJson()); l.setGeoJson(null); assertEquals(l2, l); } }
@Test public void testProperty() throws Exception { jCas.setDocumentText("Guy Fawkes was caught in London"); processJCas(MONGO, erd, COLLECTION, MONGO_COLL, TYPE, LOCATION); assertEquals(1, JCasUtil.select(jCas, Location.class).size()); Location lLon = JCasUtil.selectByIndex(jCas, Location.class, 0); assertEquals("London", lLon.getValue()); assertEquals("London", lLon.getCoveredText()); assertEquals(LONDON_GEOJSON.toJson(), lLon.getGeoJson()); }
@Test public void testProperty() throws Exception { jCas.setDocumentText("Hello London, this is a test"); processJCas(MONGO, erd, COLLECTION, MONGO_COLL, TYPE, LOCATION); assertEquals(1, JCasUtil.select(jCas, Location.class).size()); Location lLon = JCasUtil.selectByIndex(jCas, Location.class, 0); assertEquals("London", lLon.getValue()); assertEquals("London", lLon.getCoveredText()); assertEquals(LONDON_GEOJSON.toJson(), lLon.getGeoJson()); jCas.reset(); jCas.setDocumentText("Hello Madrid, this is a test"); processJCas(MONGO, erd, COLLECTION, MONGO_COLL, TYPE, LOCATION); assertEquals(1, JCasUtil.select(jCas, Location.class).size()); Location lMad = JCasUtil.selectByIndex(jCas, Location.class, 0); assertEquals("Madrid", lMad.getValue()); assertEquals("Madrid", lMad.getCoveredText()); assertEquals("Property Test", lMad.getGeoJson()); }
public void assertLocationMatches() { final Location inLocation = JCasUtil.selectSingle(in, Location.class); final Location outLocation = JCasUtil.selectSingle(out, Location.class); assertEquals(inLocation.getGeoJson(), outLocation.getGeoJson()); assertEquals(inLocation.getBegin(), outLocation.getBegin()); assertEquals(inLocation.getEnd(), outLocation.getEnd()); assertEquals(inLocation.getValue(), outLocation.getValue()); assertEquals(0, inLocation.getConfidence(), outLocation.getConfidence()); }
assertEquals("London", l.getValue()); assertEquals("London", l.getCoveredText()); assertEquals("Property_Test", l.getGeoJson());
@Test public void test() throws Exception { jCas.setDocumentText("Pierre is French"); Person p = new Person(jCas); p.setBegin(0); p.setEnd(6); p.setValue("Pierre"); p.addToIndexes(); Nationality n = new Nationality(jCas); n.setBegin(10); n.setEnd(16); n.setValue("French"); n.setCountryCode("fra"); n.addToIndexes(); ae.process(jCas); assertEquals(1, JCasUtil.select(jCas, Location.class).size()); Location l = JCasUtil.selectByIndex(jCas, Location.class, 0); assertEquals("French", l.getValue()); assertNotNull(l.getGeoJson()); } }
m4.getProperties().put("geoJson", e4.getGeoJson()); m4.getProperties().put(AnalysisConstants.POI, Arrays.asList(new LatLon(3, -1))); m5.getProperties().put("precision", e5.getPrecision());
.has("value", location.getValue()) .has(FIELD_DOCUMENT_ID, documentId) .has("geoJson", location.getGeoJson()) .hasNext());
.has("value", location.getValue()) .has(FIELD_DOCUMENT_ID, documentId) .has("geoJson", location.getGeoJson()) .hasNext());