use of org.openrdf.repository.sail.SailRepository in project incubator-rya by apache.
the class RyaGeoDirectExample method main.
public static void main(final String[] args) throws Exception {
final Configuration conf = getConf();
conf.set(PrecomputedJoinIndexerConfig.PCJ_STORAGE_TYPE, PrecomputedJoinStorageType.ACCUMULO.name());
conf.setBoolean(ConfigUtils.DISPLAY_QUERY_PLAN, PRINT_QUERIES);
conf.setBoolean(OptionalConfigUtils.USE_GEO, true);
log.info("Creating the tables as root.");
SailRepository repository = null;
SailRepositoryConnection conn = null;
try {
log.info("Connecting to Geo Sail Repository.");
final Sail extSail = GeoRyaSailFactory.getInstance(conf);
repository = new SailRepository(extSail);
conn = repository.getConnection();
final long start = System.currentTimeMillis();
log.info("Running SPARQL Example: Add Point and Geo Search with PCJ");
testAddPointAndWithinSearchWithPCJ(conn);
log.info("Running SPARQL Example: Temporal, Freetext, and Geo Search");
testTemporalFreeGeoSearch(conn);
log.info("Running SPARQL Example: Geo, Freetext, and PCJ Search");
testGeoFreetextWithPCJSearch(conn);
log.info("Running SPARQL Example: Delete Geo Data");
testDeleteGeoData(conn);
log.info("TIME: " + (System.currentTimeMillis() - start) / 1000.);
} finally {
log.info("Shutting down");
closeQuietly(conn);
closeQuietly(repository);
}
}
use of org.openrdf.repository.sail.SailRepository in project incubator-rya by apache.
the class MongoGeoIndexerFilterIT method tooManyArgumentsTest.
@Test(expected = QueryEvaluationException.class)
public void tooManyArgumentsTest() throws Exception {
final Sail sail = GeoRyaSailFactory.getInstance(conf);
final SailRepositoryConnection conn = new SailRepository(sail).getConnection();
try {
populateRya(conn);
// Only captial
final String query = "PREFIX geo: <http://www.opengis.net/ont/geosparql#>\n" + "PREFIX geof: <http://www.opengis.net/def/function/geosparql/>\n" + //
"SELECT * \n" + "WHERE { \n" + " <urn:geo> geo:asWKT ?point .\n" + " FILTER(geof:sfNear(?point, \"POINT(38.8895 77.0353)\"^^geo:wktLiteral, 100, 1000, 10))" + "}";
conn.prepareTupleQuery(QueryLanguage.SPARQL, query).evaluate();
} finally {
conn.close();
sail.shutDown();
}
}
use of org.openrdf.repository.sail.SailRepository in project incubator-rya by apache.
the class MongoGeoIndexerFilterIT method near_negativeDistance.
@Test(expected = IllegalArgumentException.class)
public void near_negativeDistance() throws Exception {
final Sail sail = GeoRyaSailFactory.getInstance(conf);
final SailRepositoryConnection conn = new SailRepository(sail).getConnection();
try {
populateRya(conn);
// Only captial
final String query = "PREFIX geo: <http://www.opengis.net/ont/geosparql#>\n" + "PREFIX geof: <http://www.opengis.net/def/function/geosparql/>\n" + //
"SELECT * \n" + "WHERE { \n" + " <urn:geo> geo:asWKT ?point .\n" + " FILTER(geof:sfNear(?point, \"POINT(38.8895 77.0353)\"^^geo:wktLiteral, -100))" + "}";
final TupleQueryResult rez = conn.prepareTupleQuery(QueryLanguage.SPARQL, query).evaluate();
while (rez.hasNext()) {
rez.next();
}
} finally {
conn.close();
sail.shutDown();
}
}
use of org.openrdf.repository.sail.SailRepository in project incubator-rya by apache.
the class MongoGeoIndexerFilterIT method nearHappyUsesTest.
@Test
public void nearHappyUsesTest() throws Exception {
final Sail sail = GeoRyaSailFactory.getInstance(conf);
final SailRepositoryConnection conn = new SailRepository(sail).getConnection();
try {
populateRya(conn);
// Only captial
String query = "PREFIX geo: <http://www.opengis.net/ont/geosparql#>\n" + "PREFIX geof: <http://www.opengis.net/def/function/geosparql/>\n" + //
"SELECT * \n" + "WHERE { \n" + " <urn:geo> geo:asWKT ?point .\n" + " FILTER(geof:sfNear(?point, \"POINT(38.8895 77.0353)\"^^geo:wktLiteral, 0.0, 2000))" + "}";
TupleQueryResult rez = conn.prepareTupleQuery(QueryLanguage.SPARQL, query).evaluate();
final List<BindingSet> results = new ArrayList<>();
while (rez.hasNext()) {
final BindingSet bs = rez.next();
results.add(bs);
}
assertEquals(1, results.size());
assertEquals(CAPITAL_BUILDING, bindingToGeo(results.get(0)));
// all but capital
query = "PREFIX geo: <http://www.opengis.net/ont/geosparql#>\n" + "PREFIX geof: <http://www.opengis.net/def/function/geosparql/>\n" + //
"SELECT * \n" + "WHERE { \n" + " <urn:geo> geo:asWKT ?point .\n" + " FILTER(geof:sfNear(?point, \"POINT(38.8895 77.0353)\"^^geo:wktLiteral, 2000))" + "}";
rez = conn.prepareTupleQuery(QueryLanguage.SPARQL, query).evaluate();
results.clear();
while (rez.hasNext()) {
final BindingSet bs = rez.next();
results.add(bs);
}
assertEquals(3, results.size());
assertEquals(WASHINGTON_MONUMENT, bindingToGeo(results.get(0)));
assertEquals(WHITE_HOUSE, bindingToGeo(results.get(1)));
assertEquals(LINCOLN_MEMORIAL, bindingToGeo(results.get(2)));
// all of them
query = "PREFIX geo: <http://www.opengis.net/ont/geosparql#>\n" + "PREFIX geof: <http://www.opengis.net/def/function/geosparql/>\n" + //
"SELECT * \n" + "WHERE { \n" + " <urn:geo> geo:asWKT ?point .\n" + " FILTER(geof:sfNear(?point, \"POINT(38.8895 77.0353)\"^^geo:wktLiteral, 6000, 000))" + "}";
rez = conn.prepareTupleQuery(QueryLanguage.SPARQL, query).evaluate();
results.clear();
while (rez.hasNext()) {
final BindingSet bs = rez.next();
results.add(bs);
}
assertEquals(4, results.size());
assertEquals(WASHINGTON_MONUMENT, bindingToGeo(results.get(0)));
assertEquals(WHITE_HOUSE, bindingToGeo(results.get(1)));
assertEquals(LINCOLN_MEMORIAL, bindingToGeo(results.get(2)));
assertEquals(CAPITAL_BUILDING, bindingToGeo(results.get(3)));
// donut, only 2
query = "PREFIX geo: <http://www.opengis.net/ont/geosparql#>\n" + "PREFIX geof: <http://www.opengis.net/def/function/geosparql/>\n" + //
"SELECT * \n" + "WHERE { \n" + " <urn:geo> geo:asWKT ?point .\n" + " FILTER(geof:sfNear(?point, \"POINT(38.8895 77.0353)\"^^geo:wktLiteral, 2000, 100))" + "}";
rez = conn.prepareTupleQuery(QueryLanguage.SPARQL, query).evaluate();
results.clear();
while (rez.hasNext()) {
final BindingSet bs = rez.next();
results.add(bs);
}
assertEquals(2, results.size());
assertEquals(WHITE_HOUSE, bindingToGeo(results.get(0)));
assertEquals(LINCOLN_MEMORIAL, bindingToGeo(results.get(1)));
// all of them
query = "PREFIX geo: <http://www.opengis.net/ont/geosparql#>\n" + "PREFIX geof: <http://www.opengis.net/def/function/geosparql/>\n" + //
"SELECT * \n" + "WHERE { \n" + " <urn:geo> geo:asWKT ?point .\n" + " FILTER(geof:sfNear(?point, \"POINT(38.8895 77.0353)\"^^geo:wktLiteral))" + "}";
rez = conn.prepareTupleQuery(QueryLanguage.SPARQL, query).evaluate();
results.clear();
while (rez.hasNext()) {
final BindingSet bs = rez.next();
results.add(bs);
}
assertEquals(4, results.size());
assertEquals(WASHINGTON_MONUMENT, bindingToGeo(results.get(0)));
assertEquals(WHITE_HOUSE, bindingToGeo(results.get(1)));
assertEquals(LINCOLN_MEMORIAL, bindingToGeo(results.get(2)));
assertEquals(CAPITAL_BUILDING, bindingToGeo(results.get(3)));
} finally {
conn.close();
sail.shutDown();
}
}
use of org.openrdf.repository.sail.SailRepository in project incubator-rya by apache.
the class MongoGeoTemporalIndexIT method ensureInEventStore_Test.
@Test
public void ensureInEventStore_Test() throws Exception {
final Sail sail = GeoRyaSailFactory.getInstance(conf);
final SailRepository repo = new SailRepository(sail);
try (final MongoGeoTemporalIndexer indexer = new MongoGeoTemporalIndexer()) {
indexer.setConf(conf);
indexer.init();
addStatements(repo.getConnection());
final EventStorage events = indexer.getEventStorage();
final RyaURI subject = new RyaURI("urn:event1");
final Optional<Event> event = events.get(subject);
assertTrue(event.isPresent());
} finally {
sail.shutDown();
}
}
Aggregations