private void clearFinishedBits(ValueState<BitSet> state) { if (!isFinishedSetNeeded()) { // Nothing to clear. return; } state.clear(); }
public void clear(StateAccessor<?> state) { state.access(PANE_INFO_TAG).clear(); }
@Override public void persist() { checkInvariants(); if (activeWindowToStateAddressWindows.isEmpty()) { // Force all persistent state to disappear. valueState.clear(); return; } if (activeWindowToStateAddressWindows.equals(originalActiveWindowToStateAddressWindows)) { // No change. return; } valueState.write(activeWindowToStateAddressWindows); // No need to update originalActiveWindowToStateAddressWindows since this object is about to // become garbage. }
private void persistFinishedSet( StateAccessor<?> state, FinishedTriggersBitSet modifiedFinishedSet) { if (!isFinishedSetNeeded()) { return; } ValueState<BitSet> finishedSetState = state.access(FINISHED_BITS_TAG); if (!readFinishedBits(finishedSetState).equals(modifiedFinishedSet)) { if (modifiedFinishedSet.getBitSet().isEmpty()) { finishedSetState.clear(); } else { finishedSetState.write(modifiedFinishedSet.getBitSet()); } } }
minBufferedIdState.clear(); minBufferedId = Long.MAX_VALUE;
private void performStateUpdates( String stateId, ProcessContext ctx, ValueState<Integer> valueState) { Map<String, Integer> stateValues = stateValuesMap.get(stateId); Integer value = ctx.element().getValue(); if (value == null) { throw new IllegalStateException(); } switch (value) { case CLEAR_STATE: valueState.clear(); break; case WRITE_STATE_TO_MAP: stateValues.put(ctx.element().getKey(), valueState.read()); break; default: Integer currentState = valueState.read(); if (currentState == null) { currentState = value; } else { currentState += value; } valueState.write(currentState); } } }));
@Test public void testValue() throws Exception { ValueState<String> value = underTest.state(NAMESPACE_1, STRING_VALUE_ADDR); // State instances are cached, but depend on the namespace. assertThat(underTest.state(NAMESPACE_1, STRING_VALUE_ADDR), equalTo(value)); assertThat(underTest.state(NAMESPACE_2, STRING_VALUE_ADDR), not(equalTo(value))); assertThat(value.read(), Matchers.nullValue()); value.write("hello"); assertThat(value.read(), equalTo("hello")); value.write("world"); assertThat(value.read(), equalTo("world")); value.clear(); assertThat(value.read(), Matchers.nullValue()); assertThat(underTest.state(NAMESPACE_1, STRING_VALUE_ADDR), equalTo(value)); }
attributionTimer.set(minGoal); } else { minGoalState.clear();
minBufferedIdState.clear(); minBufferedId = Long.MAX_VALUE;
private void performStateUpdates( ProcessContext ctx, ValueState<Integer> valueState) { Integer value = ctx.element().getValue(); if (value == null) { throw new IllegalStateException(); } switch (value) { case CLEAR_STATE: valueState.clear(); break; case WRITE_STATE: Integer read = valueState.read(); ctx.output( KV.of( ctx.element().getKey(), read == null ? "null" : read.toString())); break; default: Integer currentState = valueState.read(); if (currentState == null) { currentState = value; } else { currentState += value; } valueState.write(currentState); } } }));