com.webpieces.http2parser.impl.Http2StatefulParserImpl Maven / Gradle / Ivy
package com.webpieces.http2parser.impl;
import java.util.List;
import org.webpieces.data.api.DataWrapper;
import com.webpieces.http2.api.dto.lowlevel.lib.Http2Frame;
import com.webpieces.http2parser.api.Http2Memento;
import com.webpieces.http2parser.api.Http2Parser;
import com.webpieces.http2parser.api.Http2StatefulParser;
public class Http2StatefulParserImpl implements Http2StatefulParser {
private Http2Parser statelessParser;
private Http2Memento state;
public Http2StatefulParserImpl(Http2Parser statelessParser, long maxFrameSize) {
this.statelessParser = statelessParser;
state = statelessParser.prepareToParse(maxFrameSize);
}
@Override
public DataWrapper marshalToByteBuffer(Http2Frame frame) {
return statelessParser.marshal(frame);
}
@Override
public List parse(DataWrapper moreData) {
state = statelessParser.parse(state, moreData);
return state.getParsedFrames();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy