public void arcDeleted(Object nodeId, Object targetNodeId, Object arcId) { if (isClientArc(nodeId, targetNodeId, arcId)) { diffs.add(new ArcDeleteOperation(nodeId, targetNodeId, arcId)); } }
void unregisterNode(Object nodeId) { Iterator<?> it = diffs.iterator(); while (it.hasNext()) { Object next = it.next(); if (next instanceof NodeDiff) { if (nodeId.equals(((NodeDiff) next).getNodeId())) { it.remove(); } else if (next instanceof ArcCreateOperation) { if (nodeId.equals(((ArcCreateOperation) next).getTargetNodeId())) { it.remove(); } } else if (next instanceof ArcDeleteOperation) { if (nodeId.equals(((ArcDeleteOperation) next).getTargetNodeId())) { it.remove(); } } } } }
public void arcCreated(Object nodeId, Object targetNodeId, Object arcId) { if (targetNodeId != null) { List<NodeDiff> diffs = diffsByNode.get(nodeId); if (diffs != null) { for (int i = diffs.size() - 1; i >= 0; i--) { NodeDiff diff = diffs.get(i); if (diff instanceof ArcDeleteOperation) { ArcDeleteOperation arcDiff = (ArcDeleteOperation) diff; if (arcId.equals(arcDiff.getArcId()) && targetNodeId.equals(arcDiff.targetNodeId)) { diffs.remove(i); compressed.remove(arcDiff); return; } } } } } registerDiff(new ArcCreateOperation(nodeId, targetNodeId, arcId)); }
void unregisterNode(Object nodeId) { Iterator it = diffs.iterator(); while (it.hasNext()) { Object next = it.next(); if (next instanceof NodeDiff) { if (nodeId.equals(((NodeDiff) next).getNodeId())) { it.remove(); } else if (next instanceof ArcCreateOperation) { if (nodeId.equals(((ArcCreateOperation) next).getTargetNodeId())) { it.remove(); } } else if (next instanceof ArcDeleteOperation) { if (nodeId.equals(((ArcDeleteOperation) next).getTargetNodeId())) { it.remove(); } } } } }
public void arcDeleted(Object nodeId, Object targetNodeId, Object arcId) { if (targetNodeId != null) { List<NodeDiff> diffs = diffsByNode.get(nodeId); if (diffs != null) { for (int i = diffs.size() - 1; i >= 0; i--) { NodeDiff diff = diffs.get(i); if (diff instanceof ArcCreateOperation) { ArcCreateOperation arcDiff = (ArcCreateOperation) diff; if (arcId.equals(arcDiff.getArcId()) && targetNodeId.equals(arcDiff.targetNodeId)) { diffs.remove(i); compressed.remove(arcDiff); return; } } } } } registerDiff(new ArcDeleteOperation(nodeId, targetNodeId, arcId)); }
@Override public synchronized void arcDeleted(Object nodeId, Object targetNodeId, Object arcId) { stateLog.arcDeleted(nodeId, targetNodeId, arcId); processChange(new ArcDeleteOperation(nodeId, targetNodeId, arcId)); }
public synchronized void arcDeleted(Object nodeId, Object targetNodeId, Object arcId) { stateLog.arcDeleted(nodeId, targetNodeId, arcId); processChange(new ArcDeleteOperation(nodeId, targetNodeId, arcId)); }