public static boolean isValidOperationXDIAddress(XDIAddress operationXDIAddress) { return XDIAddressUtil.startsWithXDIAddress(operationXDIAddress, XDIMessagingConstants.XDI_ADD_GET) != null || XDIAddressUtil.startsWithXDIAddress(operationXDIAddress, XDIMessagingConstants.XDI_ADD_SET) != null || XDIAddressUtil.startsWithXDIAddress(operationXDIAddress, XDIMessagingConstants.XDI_ADD_DEL) != null || XDIAddressUtil.startsWithXDIAddress(operationXDIAddress, XDIMessagingConstants.XDI_ADD_DO) != null || XDIAddressUtil.startsWithXDIAddress(operationXDIAddress, XDIMessagingConstants.XDI_ADD_CONNECT) != null || XDIAddressUtil.startsWithXDIAddress(operationXDIAddress, XDIMessagingConstants.XDI_ADD_SEND) != null || XDIAddressUtil.startsWithXDIAddress(operationXDIAddress, XDIMessagingConstants.XDI_ADD_PUSH) != null; }
/** * Removes a start address from an address. * E.g. for =a*b*c*d and =a*b, this returns *c*d * E.g. for =a*b*c*d and (empty address), this returns =a*b*c*d * E.g. for =a*b*c*d and =a*b*c*d, this returns (empty address) * E.g. for =a*b*c*d and =x, this returns null */ public static XDIAddress removeStartXDIAddress(final XDIAddress XDIaddress, final XDIAddress startXDIAddress) { return removeStartXDIAddress(XDIaddress, startXDIAddress, false, false); }
@Override public LiteralNode replaceLiteralNode(LiteralNode literalNode) { for (CopyStrategy copyStrategy : this.copyStrategies) literalNode = copyStrategy.replaceLiteralNode(literalNode); return literalNode; } }
private XDIAddress result() { return this.forward ? XDIAddressUtil.parentXDIAddress(this.XDIaddress, this.position): XDIAddressUtil.localXDIAddress(this.XDIaddress, - this.position - 1); }
private XDIAddress replaceXDIAddress(XDIAddress XDIaddress) { return XDIAddressUtil.concatXDIAddresses(this.startXDIAddress, XDIaddress); } }
public static XDIAddress getTemplateAuthorityAndId(XDIAddress XDIaddress) { int index = XDIAddressUtil.indexOfXDIArc(XDIaddress, XDILinkContractConstants.XDI_ARC_V_CONTRACT); if (index < 0) return null; return XDIAddressUtil.subXDIAddress(XDIaddress, 0, index); }
private XDIAddress replaceXDIAddress(XDIAddress XDIaddress) { XDIAddress replacedXDIAddress = XDIAddressUtil.extractXDIAddress(XDIaddress, this.clazzes, this.keepOnlyFirstFound, this.keepOnlyLastFound, this.keepAllFound, this.keepParent, this.keepLocal); return replacedXDIAddress != null ? replacedXDIAddress : XDIaddress; } }
@Override public List<ContextNode> replaceContextNode(ContextNode contextNode) { if (contextNode.isRootContextNode()) return null; if (! contextNode.getContextNode().isRootContextNode()) return null; XDIAddress contextNodeXDIAddress = contextNode.getXDIAddress(); XDIAddress replacedContextNodeXDIAddress = replaceXDIAddress(contextNodeXDIAddress); if (log.isTraceEnabled()) log.trace("Replaced " + contextNodeXDIAddress + " with " + replacedContextNodeXDIAddress); if (contextNodeXDIAddress.equals(replacedContextNodeXDIAddress)) return super.replaceContextNode(contextNode); ContextNode replacedContextNode = GraphUtil.contextNodeFromComponents(replacedContextNodeXDIAddress); CopyUtil.copyContextNodeContents(contextNode, replacedContextNode, null); int additionalArcs = replacedContextNodeXDIAddress.getNumXDIArcs() - contextNodeXDIAddress.getNumXDIArcs(); replacedContextNode = replacedContextNode.getContextNode(additionalArcs); return Collections.singletonList(replacedContextNode); }
public static Node copyNode(Node node, Graph targetGraph, CopyStrategy copyStrategy) { if (node instanceof ContextNode) { return copyContextNode((ContextNode) node, targetGraph, copyStrategy); } else if (node instanceof LiteralNode) { return copyLiteralNode((LiteralNode) node, targetGraph, copyStrategy); } else { throw new IllegalArgumentException("Invalid node: " + node); } }
@Override public List<ContextNode> replaceContextNode(ContextNode contextNode) { XDIAddress contextNodeXDIAddress = contextNode.getXDIAddress(); XDIAddress replacedContextNodeXDIAddress = replaceXDIAddress(contextNodeXDIAddress); ContextNode replacedContextNode = GraphUtil.contextNodeFromComponents(replacedContextNodeXDIAddress); CopyUtil.copyContextNodeContents(contextNode, replacedContextNode, null); return Collections.singletonList(replacedContextNode); }
private static boolean isSetOnContractAddress(XDIAddress targetXDIAddress, Operation operation) { if (! (operation instanceof SetOperation)) return false; if (XDIAddressUtil.indexOfXDIArc(targetXDIAddress, XDILinkContractConstants.XDI_ARC_CONTRACT) != -1) return true; return false; }
/** * Removes a start address from a statement. * E.g. for =a*b*c*d/&/... and =a*b, this returns *c*d/&/... */ public static XDIStatement removeStartXDIStatement(final XDIStatement statement, final XDIAddress start) { return removeStartXDIStatement(statement, start, false, false); }
/** * Checks if an address ends with a certain other address. */ public static XDIAddress[] endsWithXDIAddress(final XDIAddress XDIaddress, final XDIAddress endXDIAddress) { return endsWithXDIAddress(XDIaddress, endXDIAddress, false, false); }
/** * Removes an end address from an address. * E.g. for =a*b*c*d and *c*d, this returns =a*b * E.g. for =a*b*c*d and (empty address), this returns =a*b*c*d * E.g. for =a*b*c*d and =a*b*c*d, this returns (empty address) * E.g. for =a*b*c*d and *y, this returns null */ public static XDIAddress removeEndXDIAddress(final XDIAddress XDIaddress, final XDIAddress endXDIAddress) { return removeEndXDIAddress(XDIaddress, endXDIAddress, false, false); }
public XDIAddress concatXDIAddress(XDIAddress XDIaddress) { return XDIAddressUtil.concatXDIAddresses(this, XDIaddress); }
/** * Checks if an address starts with a certain other address. */ public static XDIAddress[] startsWithXDIAddress(XDIAddress XDIaddress, XDIAddress startXDIAddress) { return startsWithXDIAddress(XDIaddress, startXDIAddress, false, false); }
public XDIAddress concatXDIAddress(XDIAddress XDIaddress) { return XDIAddressUtil.concatXDIAddresses(this, XDIaddress); }
public XDIAddress concatXDIAddress(XDIArc XDIarc) { return XDIAddressUtil.concatXDIAddresses(this, XDIarc); }
public XDIAddress concatXDIAddress(XDIArc XDIarc) { return XDIAddressUtil.concatXDIAddresses(this, XDIarc); }
/** * Returns an XDI address for a JSON data type. */ public static XDIAddress dataTypeXDIAddressFromJsonType(String jsonType) { XDIAddress jsonTypeXDIAddress = XDIAddress.create("" + XDIConstants.CS_CLASS_RESERVED + jsonType); return XDIAddressUtil.concatXDIAddresses(XDI_ADD_DATATYPE_JSON, jsonTypeXDIAddress); }