@Override public RyaType newInstance() { return new RyaIRI(); } }
private static Set<RyaIRI> getPropURIFromStrings(final String... props) { final Set<RyaIRI> properties = new HashSet<>(); if (props != null) { for(final String prop : props) { if (StringUtils.isNotBlank(prop)) { properties.add(new RyaIRI(prop)); } } } return properties; }
public Set<RyaIRI> getStatementMetadataProperties() { final Set<RyaIRI> uriSet = new HashSet<>(); final String[] uriStrings = getStrings(CONF_STATEMENT_METADATA_PROPERTIES); if (uriStrings != null) { for (final String s : uriStrings) { uriSet.add(new RyaIRI(s)); } } return uriSet; }
private static RyaIRI ryaIRI(final int v) { return new RyaIRI("u:" + v); }
/** * Converts a {@link Resource} into a {@link RyaIRI} representation of the * {@code resource}. * @param resource the {@link Resource} to convert. Generally this will be * the subject. * @return the {@link RyaIRI} representation of the {@code resource}. */ public static RyaIRI convertResource(final Resource resource) { if (resource == null) { return null; } if (resource instanceof BNode) { return new RyaIRI(RyaSchema.BNODE_NAMESPACE + ((BNode) resource).getID()); } return convertIRI((IRI) resource); }
@Test public void serializationTestWithURI() { RyaSubGraph bundle = new RyaSubGraph(UUID.randomUUID().toString()); bundle.addStatement(new RyaStatement(new RyaIRI("uri:123"), new RyaIRI("uri:234"), new RyaIRI("uri:345"))); bundle.addStatement(new RyaStatement(new RyaIRI("uri:345"), new RyaIRI("uri:567"), new RyaIRI("uri:789"))); byte[] bundleBytes = serializer.toBytes(bundle); RyaSubGraph deserializedBundle = serializer.fromBytes(bundleBytes); assertEquals(bundle, deserializedBundle); }
private RyaIRI getPredIRI(final StatementPattern pattern) { final Var pred = pattern.getPredicateVar(); return new RyaIRI(pred.getValue().stringValue()); }
@Test public void serializationTestWithLiteral() { RyaSubGraph bundle = new RyaSubGraph(UUID.randomUUID().toString()); bundle.addStatement(new RyaStatement(new RyaIRI("uri:123"), new RyaIRI("uri:234"), new RyaType(XMLSchema.INTEGER, "345"))); bundle.addStatement(new RyaStatement(new RyaIRI("uri:345"), new RyaIRI("uri:567"), new RyaType(XMLSchema.INTEGER, "789"))); byte[] bundleBytes = serializer.toBytes(bundle); RyaSubGraph deserializedBundle = serializer.fromBytes(bundleBytes); assertEquals(bundle, deserializedBundle); }
private static RyaStatement buildVisibilityTestRyaStatement(final String documentVisibility) { final RyaStatementBuilder builder = new RyaStatementBuilder(); builder.setPredicate(new RyaIRI("http://temp.com")); builder.setSubject(new RyaIRI("http://subject.com")); builder.setObject(new RyaIRI("http://object.com")); builder.setContext(new RyaIRI("http://context.com")); builder.setColumnVisibility(documentVisibility != null ? documentVisibility.getBytes() : null); final RyaStatement statement = builder.build(); return statement; } }
private RyaStatement getStatement(final String s, final String p, final String o) { final RyaStatementBuilder builder = new RyaStatementBuilder(); if (s != null) { builder.setSubject(new RyaIRI(s)); } if (p != null) { builder.setPredicate(new RyaIRI(p)); } if (o != null) { builder.setObject(new RyaIRI(o)); } return builder.build(); }
@Test public void testConstructProjectionProjectSubj() throws MalformedQueryException, UnsupportedEncodingException { String query = "select ?x where { ?x <uri:talksTo> <uri:Bob> }"; SPARQLParser parser = new SPARQLParser(); ParsedQuery pq = parser.parseQuery(query, null); List<StatementPattern> patterns = StatementPatternCollector.process(pq.getTupleExpr()); ConstructProjection projection = new ConstructProjection(patterns.get(0)); QueryBindingSet bs = new QueryBindingSet(); bs.addBinding("x", VF.createIRI("uri:Joe")); VisibilityBindingSet vBs = new VisibilityBindingSet(bs, "FOUO"); RyaStatement statement = projection.projectBindingSet(vBs, new HashMap<>()); RyaStatement expected = new RyaStatement(new RyaIRI("uri:Joe"), new RyaIRI("uri:talksTo"), new RyaIRI("uri:Bob")); expected.setColumnVisibility("FOUO".getBytes("UTF-8")); expected.setTimestamp(statement.getTimestamp()); assertEquals(expected, statement); }
@Test public void testConstructProjectionProjPred() throws MalformedQueryException { String query = "select ?p where { <uri:Joe> ?p <uri:Bob> }"; SPARQLParser parser = new SPARQLParser(); ParsedQuery pq = parser.parseQuery(query, null); List<StatementPattern> patterns = StatementPatternCollector.process(pq.getTupleExpr()); ConstructProjection projection = new ConstructProjection(patterns.get(0)); QueryBindingSet bs = new QueryBindingSet(); bs.addBinding("p", VF.createIRI("uri:worksWith")); VisibilityBindingSet vBs = new VisibilityBindingSet(bs); RyaStatement statement = projection.projectBindingSet(vBs, new HashMap<>()); RyaStatement expected = new RyaStatement(new RyaIRI("uri:Joe"), new RyaIRI("uri:worksWith"), new RyaIRI("uri:Bob")); expected.setTimestamp(statement.getTimestamp()); expected.setColumnVisibility(new byte[0]); assertEquals(expected, statement); }
public void testTripleRowSerialization() throws Exception { final RyaIRI subj = new RyaIRI("urn:test#subj"); final RyaIRI pred = new RyaIRI("urn:test#pred"); final RyaType obj = new RyaType("mydata"); final RyaStatement statement = new RyaStatement(subj, pred, obj); final RyaTripleContext instance = RyaTripleContext.getInstance(new MockRdfConfiguration()); final Map<TABLE_LAYOUT, TripleRow> map = instance.serializeTriple(statement); final TripleRow tripleRow = map.get(TABLE_LAYOUT.SPO); assertEquals(statement, instance.deserializeTriple(TABLE_LAYOUT.SPO, tripleRow)); }
public void testHashedTripleRowSerialization() throws Exception { final RyaIRI subj = new RyaIRI("urn:test#subj"); final RyaIRI pred = new RyaIRI("urn:test#pred"); final RyaType obj = new RyaType("mydata"); final RyaStatement statement = new RyaStatement(subj, pred, obj); final MockRdfConfiguration config = new MockRdfConfiguration(); config.set(MockRdfConfiguration.CONF_PREFIX_ROW_WITH_HASH, Boolean.TRUE.toString()); final RyaTripleContext instance = RyaTripleContext.getInstance(config); final Map<TABLE_LAYOUT, TripleRow> map = instance.serializeTriple(statement); final TripleRow tripleRow = map.get(TABLE_LAYOUT.SPO); assertEquals(statement, instance.deserializeTriple(TABLE_LAYOUT.SPO, tripleRow)); }
/** * Converts a {@link IRI} into a {@link RyaIRI} representation of the * {@code iri}. * @param iri the {@link IRI} to convert. * @return the {@link RyaIRI} representation of the {@code iri}. */ public static RyaIRI convertIRI(final IRI iri) { if (iri == null) { return null; } if (iri instanceof RangeIRI) { final RangeIRI riri = (RangeIRI) iri; return new RyaIRIRange(convertIRI(riri.getStart()), convertIRI(riri.getEnd())); } return new RyaIRI(iri.stringValue()); }
public void testSerialization() throws Exception { RyaIRI ryaIRI = new RyaIRI("urn:testdata#data"); byte[] serialize = new RyaIRIResolver().serialize(ryaIRI); RyaType deserialize = new RyaIRIResolver().deserialize(serialize); assertEquals(ryaIRI, deserialize); } }
@Test public void testDeleteWildcard() throws RyaDAOException { final MongoDBRyaDAO dao = new MongoDBRyaDAO(); try { dao.setConf(conf); dao.init(); final RyaStatementBuilder builder = new RyaStatementBuilder(); builder.setPredicate(new RyaIRI("http://temp.com")); dao.delete(builder.build(), conf); } finally { dao.destroy(); } }
@Test public void simpleTests() throws Exception { StatementMetadata empty = new StatementMetadata(); byte[] emptyData = empty.toBytes(); Assert.assertArrayEquals(emptyData, new StatementMetadata(emptyData).toBytes()); StatementMetadata single = new StatementMetadata(); single.addMetadata(new RyaIRI("http://uri"), new RyaType("http://type")); byte[] singleData = single.toBytes(); Assert.assertArrayEquals(singleData, new StatementMetadata(singleData).toBytes()); } }
@Test public void testDeleteWildcard() throws RyaDAOException { final MongoDBRyaDAO dao = new MongoDBRyaDAO(); try { dao.setConf(conf); dao.init(); final RyaStatementBuilder builder = new RyaStatementBuilder(); builder.setPredicate(new RyaIRI("http://temp.com")); builder.setColumnVisibility(new DocumentVisibility("A").flatten()); dao.delete(builder.build(), conf); } finally { dao.destroy(); } }