package eu.fbk.knowledgestore.datastore; import eu.fbk.knowledgestore.data.Record; import eu.fbk.knowledgestore.data.Stream; import eu.fbk.knowledgestore.data.XPath; import eu.fbk.knowledgestore.vocabulary.KS; import org.junit.Test; import java.io.IOException; import java.util.List; import java.util.concurrent.CancellationException; /** * Created with IntelliJ IDEA. * User: alessio * Date: 09/09/14 * Time: 11:24 * To change this template use File | Settings | File Templates. */ public class LuceneDataStoreTest extends AbstractDataStoreTest { @Override protected DataStore createDataStore() { LuceneDataStore s = new LuceneDataStore("/Users/alessio/lucene-ks", null); return s; } @Test public void testRetrieve() { DataStore ds = this.createDataStore(); try { ds.init(); List<Record> records = createRecords(3, KS.RESOURCE); DataTransaction dataTran = ds.begin(false); dataTran.store(KS.RESOURCE, records.get(0)); dataTran.store(KS.RESOURCE, records.get(1)); dataTran.delete(KS.RESOURCE, records.get(2).getID()); XPath condition = XPath.parse("'example.org'"); // TODO: I don't thing this will work //condition.decompose(propertyRanges); Stream<Record> cur = dataTran.retrieve(KS.RESOURCE, condition, null); try { for (Record r : cur) { System.out.println(r); } } finally { cur.close(); } } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (CancellationException ex) { // not our case: ignore } } }