@Test public void testDeweyNumberGeneration() { DeweyNumber start = new DeweyNumber(1); DeweyNumber increased = start.increase(); DeweyNumber increaseAddStage = increased.addStage(); DeweyNumber startAddStage = start.addStage(); DeweyNumber startAddStageIncreased = startAddStage.increase(); DeweyNumber startAddStageIncreasedAddStage = startAddStageIncreased.addStage(); assertEquals(DeweyNumber.fromString("1"), start); assertEquals(DeweyNumber.fromString("2"), increased); assertEquals(DeweyNumber.fromString("2.0"), increaseAddStage); assertEquals(DeweyNumber.fromString("1.0"), startAddStage); assertEquals(DeweyNumber.fromString("1.1"), startAddStageIncreased); assertEquals(DeweyNumber.fromString("1.1.0"), startAddStageIncreasedAddStage); assertTrue(startAddStage.isCompatibleWith(start)); assertTrue(startAddStageIncreased.isCompatibleWith(startAddStage)); assertTrue(startAddStageIncreasedAddStage.isCompatibleWith(startAddStageIncreased)); assertFalse(startAddStageIncreasedAddStage.isCompatibleWith(startAddStage)); assertFalse(increaseAddStage.isCompatibleWith(startAddStage)); assertFalse(startAddStage.isCompatibleWith(increaseAddStage)); assertFalse(startAddStageIncreased.isCompatibleWith(startAddStageIncreasedAddStage)); } }
outgoingEdges.getTotalIgnoreBranches(), outgoingEdges.getTotalTakeBranches()); version = computationState.getVersion().increase(toIncrease); } else { .increase(totalTakeToSkip + ignoreBranchesToVisit) .addStage(); ignoreBranchesToVisit--; final DeweyNumber currentVersion = computationState.getVersion().increase(takeBranchesToVisit); final DeweyNumber nextVersion = new DeweyNumber(currentVersion).addStage(); takeBranchesToVisit--; outgoingEdges.getTotalTakeBranches()); DeweyNumber startVersion = computationState.getVersion().increase(totalBranches); ComputationState startState = ComputationState.createStartState(computationState.getCurrentStateName(), startVersion); resultingComputationStates.add(startState);
@Override public DeweyNumber copy(DeweyNumber from) { return new DeweyNumber(from); }
/** * Creates a new dewey number from this such that its last digit is increased by * one. * * @return A new dewey number derived from this whose last digit is increased by one */ public DeweyNumber increase() { return increase(1); }
if (currentVersion.isCompatibleWith(edge.getDeweyNumber())) { final NodeId target = edge.getTarget(); Stack<Tuple2<NodeId, SharedBufferNode>> newPath;
if (prevState != null) { nodeId = sharedBuffer.getNodeId(prevState, timestamp, counter, event); startEventId = sharedBuffer.getStartEventId(version.getRun()); } else { nodeId = null;
@Override public boolean equals(Object obj) { if (obj instanceof SharedBufferEdge) { @SuppressWarnings("unchecked") SharedBufferEdge<K, V> other = (SharedBufferEdge<K, V>) obj; if (version.equals(other.version)) { if (target == null && other.target == null) { return true; } else if (target != null && other.target != null) { return target.getKey().equals(other.target.getKey()) && target.getValueTime().equals(other.target.getValueTime()); } else { return false; } } else { return false; } } else { return false; } }
outgoingEdges.getTotalIgnoreBranches(), outgoingEdges.getTotalTakeBranches()); version = computationState.getVersion().increase(toIncrease); } else { .increase(totalTakeToSkip + ignoreBranchesToVisit) .addStage(); ignoreBranchesToVisit--; final DeweyNumber currentVersion = computationState.getVersion().increase(takeBranchesToVisit); final DeweyNumber nextVersion = new DeweyNumber(currentVersion).addStage(); takeBranchesToVisit--; outgoingEdges.getTotalTakeBranches()); DeweyNumber startVersion = computationState.getVersion().increase(totalBranches); ComputationState startState = ComputationState.createStartState(computationState.getCurrentStateName(), startVersion); resultingComputationStates.add(startState);
@Override public DeweyNumber createInstance() { return new DeweyNumber(1); }
/** * Creates a new dewey number from this such that its last digit is increased by * one. * * @return A new dewey number derived from this whose last digit is increased by one */ public DeweyNumber increase() { return increase(1); }
if (currentVersion.isCompatibleWith(edge.getVersion())) { if (firstMatch) {
if (prevState != null) { nodeId = sharedBuffer.getNodeId(prevState, timestamp, counter, event); startEventId = sharedBuffer.getStartEventId(version.getRun()); } else { nodeId = null;
outgoingEdges.getTotalIgnoreBranches(), outgoingEdges.getTotalTakeBranches()); version = computationState.getVersion().increase(toIncrease); } else { .increase(totalTakeToSkip + ignoreBranchesToVisit) .addStage(); ignoreBranchesToVisit--; final DeweyNumber currentVersion = computationState.getVersion().increase(takeBranchesToVisit); final DeweyNumber nextVersion = new DeweyNumber(currentVersion).addStage(); takeBranchesToVisit--; outgoingEdges.getTotalTakeBranches()); DeweyNumber startVersion = computationState.getVersion().increase(totalBranches); ComputationState startState = ComputationState.createStartState(computationState.getCurrentStateName(), startVersion); resultingComputationStates.add(startState);
/** * Creates a new dewey number from this such that a 0 is appended as new last digit. * * @return A new dewey number which contains this as a prefix and has 0 as last digit */ public DeweyNumber addStage() { int[] newDeweyNumber = Arrays.copyOf(deweyNumber, deweyNumber.length + 1); return new DeweyNumber(newDeweyNumber); }
/** * Creates a new dewey number from this such that its last digit is increased by * one. * * @return A new dewey number derived from this whose last digit is increased by one */ public DeweyNumber increase() { return increase(1); }
if (currentVersion.isCompatibleWith(edge.getDeweyNumber())) { final NodeId target = edge.getTarget(); Stack<Tuple2<NodeId, SharedBufferNode>> newPath;