Map<XDIArc, Object> replacements = this.getReplacements(baseXDIAddress); if (replacements == null) return null;
new ReplaceXDIAddressCopyStrategy(XDI_ARC_SELF, this.getBootstrapOwner()), new ReplaceRegexLiteralStringCopyStrategy(Pattern.quote(XDI_ARC_SELF.toString()), this.getBootstrapOwner().toString())); CopyStrategy copyStrategy = new ReplaceXDIAddressCopyStrategy(XDI_ARC_SELF, BootstrapInterceptor.this.getBootstrapOwner());
new ReplaceXDIAddressCopyStrategy(variableValues), new ReplaceLiteralVariablesCopyStrategy(variableValues), new ReplaceEscapedVariablesCopyStrategy());
new ReplaceXDIAddressCopyStrategy(variableValues), new ReplaceLiteralVariablesCopyStrategy(variableValues), new ReplaceEscapedVariablesCopyStrategy());
Map<XDIArc, Object> replacements = this.getReplacements(baseXDIAddress); if (replacements == null) return super.replaceRelation(relation);
public void testMultipleReplacements() throws Exception { Graph graph1 = MemoryGraphFactory.getInstance().openGraph(); Graph graph2 = MemoryGraphFactory.getInstance().openGraph(); graph1.setStatement(XDIStatement.create("=a=b=c/+e/=f")); XDIArc from1 = XDIArc.create("=b"); List<XDIAddress> to1 = new ArrayList<XDIAddress> (); to1.add(XDIAddress.create("=x")); to1.add(XDIAddress.create("=y")); XDIArc from2 = XDIArc.create("=f"); List<XDIAddress> to2 = new ArrayList<XDIAddress> (); to2.add(XDIAddress.create("=m")); to2.add(XDIAddress.create("=n")); Map<XDIArc, Object> replacements = new HashMap<XDIArc, Object> (); replacements.put(from1, to1); replacements.put(from2, to2); CopyUtil.copyGraph(graph1, graph2, new ReplaceXDIAddressCopyStrategy(replacements)); assertTrue(graph2.containsStatement(XDIStatement.create("=a=x=c/+e/=m"))); assertTrue(graph2.containsStatement(XDIStatement.create("=a=x=c/+e/=n"))); assertTrue(graph2.containsStatement(XDIStatement.create("=a=y=c/+e/=m"))); assertTrue(graph2.containsStatement(XDIStatement.create("=a=y=c/+e/=n"))); assertEquals(graph2.getAllStatementCount(), 11); graph1.close(); graph2.close(); }