String prevState = stateNameSerializer.deserialize(source); long timestamp = timestampSerializer.deserialize(source); DeweyNumber version = versionSerializer.deserialize(source); long startTimestamp = timestampSerializer.deserialize(source); int counter = source.readInt();
String prevState = stateNameSerializer.deserialize(source); long timestamp = timestampSerializer.deserialize(source); DeweyNumber version = versionSerializer.deserialize(source); long startTimestamp = timestampSerializer.deserialize(source); int counter = source.readInt();
DeweyNumber.DeweyNumberSerializer versionSerializer = new DeweyNumber.DeweyNumberSerializer(); timestampSerializer.serialize(timestamp, target); DeweyNumber version = versionSerializer.deserialize(source); versionSerializer.serialize(version, target);
String prevState = stateNameSerializer.deserialize(source); long timestamp = timestampSerializer.deserialize(source); DeweyNumber version = versionSerializer.deserialize(source); long startTimestamp = timestampSerializer.deserialize(source); int counter = source.readInt();
@Override public NFA<T> deserialize(DataInputView source) throws IOException { Set<State<T>> states = deserializeStates(source); long windowTime = source.readLong(); boolean handleTimeout = source.readBoolean(); NFA<T> nfa = new NFA<>(eventSerializer, windowTime, handleTimeout); nfa.states = states; nfa.eventSharedBuffer = sharedBufferSerializer.deserialize(source); Queue<ComputationState<T>> computationStates = new LinkedList<>(); StringSerializer stateNameSerializer = StringSerializer.INSTANCE; LongSerializer timestampSerializer = LongSerializer.INSTANCE; DeweyNumber.DeweyNumberSerializer versionSerializer = new DeweyNumber.DeweyNumberSerializer(); int computationStateNo = source.readInt(); for (int i = 0; i < computationStateNo; i++) { State<T> state = getStateByName(stateNameSerializer.deserialize(source), nfa); State<T> prevState = getStateByName(stateNameSerializer.deserialize(source), nfa); long timestamp = timestampSerializer.deserialize(source); DeweyNumber version = versionSerializer.deserialize(source); long startTimestamp = timestampSerializer.deserialize(source); int counter = source.readInt(); T event = null; if (source.readBoolean()) { event = eventSerializer.deserialize(source); } computationStates.add(ComputationState.createState( nfa, state, prevState, event, counter, timestamp, version, startTimestamp)); } nfa.computationStates = computationStates; return nfa; }
@Override public void serialize(NFA<T> record, DataOutputView target) throws IOException { serializeStates(record.states, target); target.writeLong(record.windowTime); target.writeBoolean(record.handleTimeout); sharedBufferSerializer.serialize(record.eventSharedBuffer, target); target.writeInt(record.computationStates.size()); StringSerializer stateNameSerializer = StringSerializer.INSTANCE; LongSerializer timestampSerializer = LongSerializer.INSTANCE; DeweyNumber.DeweyNumberSerializer versionSerializer = new DeweyNumber.DeweyNumberSerializer(); for (ComputationState<T> computationState: record.computationStates) { stateNameSerializer.serialize(computationState.getState().getName(), target); stateNameSerializer.serialize(computationState.getPreviousState() == null ? null : computationState.getPreviousState().getName(), target); timestampSerializer.serialize(computationState.getTimestamp(), target); versionSerializer.serialize(computationState.getVersion(), target); timestampSerializer.serialize(computationState.getStartTimestamp(), target); target.writeInt(computationState.getCounter()); if (computationState.getEvent() == null) { target.writeBoolean(false); } else { target.writeBoolean(true); eventSerializer.serialize(computationState.getEvent(), target); } } }
private void copyStates(DataInputView source, DataOutputView target) throws IOException { int computationStateNo = source.readInt(); target.writeInt(computationStateNo); for (int i = 0; i < computationStateNo; i++) { String state = STATE_NAME_SERIALIZER.deserialize(source); STATE_NAME_SERIALIZER.serialize(state, target); NodeId prevState = NODE_ID_SERIALIZER.deserialize(source); NODE_ID_SERIALIZER.serialize(prevState, target); DeweyNumber version = VERSION_SERIALIZER.deserialize(source); VERSION_SERIALIZER.serialize(version, target); long startTimestamp = TIMESTAMP_SERIALIZER.deserialize(source); TIMESTAMP_SERIALIZER.serialize(startTimestamp, target); byte isNull = source.readByte(); target.writeByte(isNull); if (isNull == 1) { EventId startEventId = EVENT_ID_SERIALIZER.deserialize(source); EVENT_ID_SERIALIZER.serialize(startEventId, target); } } }
private void copyStates(DataInputView source, DataOutputView target) throws IOException { int computationStateNo = source.readInt(); target.writeInt(computationStateNo); for (int i = 0; i < computationStateNo; i++) { String state = STATE_NAME_SERIALIZER.deserialize(source); STATE_NAME_SERIALIZER.serialize(state, target); NodeId prevState = NODE_ID_SERIALIZER.deserialize(source); NODE_ID_SERIALIZER.serialize(prevState, target); DeweyNumber version = VERSION_SERIALIZER.deserialize(source); VERSION_SERIALIZER.serialize(version, target); long startTimestamp = TIMESTAMP_SERIALIZER.deserialize(source); TIMESTAMP_SERIALIZER.serialize(startTimestamp, target); byte isNull = source.readByte(); target.writeByte(isNull); if (isNull == 1) { EventId startEventId = EVENT_ID_SERIALIZER.deserialize(source); EVENT_ID_SERIALIZER.serialize(startEventId, target); } } }
private PriorityQueue<ComputationState> deserializeComputationStates(DataInputView source) throws IOException { PriorityQueue<ComputationState> computationStates = new PriorityQueue<>(NFAState.COMPUTATION_STATE_COMPARATOR); int computationStateNo = source.readInt(); for (int i = 0; i < computationStateNo; i++) { String state = STATE_NAME_SERIALIZER.deserialize(source); NodeId prevState = NODE_ID_SERIALIZER.deserialize(source); DeweyNumber version = VERSION_SERIALIZER.deserialize(source); long startTimestamp = TIMESTAMP_SERIALIZER.deserialize(source); byte isNull = source.readByte(); EventId startEventId = null; if (isNull == 1) { startEventId = EVENT_ID_SERIALIZER.deserialize(source); } computationStates.add(ComputationState.createState(state, prevState, version, startTimestamp, startEventId)); } return computationStates; }
private PriorityQueue<ComputationState> deserializeComputationStates(DataInputView source) throws IOException { PriorityQueue<ComputationState> computationStates = new PriorityQueue<>(NFAState.COMPUTATION_STATE_COMPARATOR); int computationStateNo = source.readInt(); for (int i = 0; i < computationStateNo; i++) { String state = STATE_NAME_SERIALIZER.deserialize(source); NodeId prevState = NODE_ID_SERIALIZER.deserialize(source); DeweyNumber version = VERSION_SERIALIZER.deserialize(source); long startTimestamp = TIMESTAMP_SERIALIZER.deserialize(source); byte isNull = source.readByte(); EventId startEventId = null; if (isNull == 1) { startEventId = EVENT_ID_SERIALIZER.deserialize(source); } computationStates.add(ComputationState.createState(state, prevState, version, startTimestamp, startEventId)); } return computationStates; }
private void serializeComputationStates(Queue<ComputationState> states, DataOutputView target) throws IOException { target.writeInt(states.size()); for (ComputationState computationState : states) { STATE_NAME_SERIALIZER.serialize(computationState.getCurrentStateName(), target); NODE_ID_SERIALIZER.serialize(computationState.getPreviousBufferEntry(), target); VERSION_SERIALIZER.serialize(computationState.getVersion(), target); TIMESTAMP_SERIALIZER.serialize(computationState.getStartTimestamp(), target); if (computationState.getStartEventID() != null) { target.writeByte(1); EVENT_ID_SERIALIZER.serialize(computationState.getStartEventID(), target); } else { target.writeByte(0); } } }
private void serializeComputationStates(Queue<ComputationState> states, DataOutputView target) throws IOException { target.writeInt(states.size()); for (ComputationState computationState : states) { STATE_NAME_SERIALIZER.serialize(computationState.getCurrentStateName(), target); NODE_ID_SERIALIZER.serialize(computationState.getPreviousBufferEntry(), target); VERSION_SERIALIZER.serialize(computationState.getVersion(), target); TIMESTAMP_SERIALIZER.serialize(computationState.getStartTimestamp(), target); if (computationState.getStartEventID() != null) { target.writeByte(1); EVENT_ID_SERIALIZER.serialize(computationState.getStartEventID(), target); } else { target.writeByte(0); } } }
@Override public DeweyNumber deserialize(DeweyNumber reuse, DataInputView source) throws IOException { return deserialize(source); }
@Override public DeweyNumber deserialize(DeweyNumber reuse, DataInputView source) throws IOException { return deserialize(source); }
@Override public DeweyNumber copy(DeweyNumber from, DeweyNumber reuse) { return copy(from); }
@Override public DeweyNumber deserialize(DeweyNumber reuse, DataInputView source) throws IOException { return deserialize(source); }
@Override public DeweyNumber copy(DeweyNumber from, DeweyNumber reuse) { return copy(from); }
@Override public DeweyNumber copy(DeweyNumber from, DeweyNumber reuse) { return copy(from); }
@Override public void serialize(SharedBufferEdge record, DataOutputView target) throws IOException { NodeId.NodeIdSerializer.INSTANCE.serialize(record.target, target); DeweyNumber.DeweyNumberSerializer.INSTANCE.serialize(record.deweyNumber, target); }
@Override public void copy(DataInputView source, DataOutputView target) throws IOException { NodeId.NodeIdSerializer.INSTANCE.copy(source, target); DeweyNumber.DeweyNumberSerializer.INSTANCE.copy(source, target); }