本文整理了Java中com.fasterxml.aalto.AsyncXMLStreamReader.next()
方法的一些代码示例,展示了AsyncXMLStreamReader.next()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。AsyncXMLStreamReader.next()
方法的具体详情如下:
包路径:com.fasterxml.aalto.AsyncXMLStreamReader
类名称:AsyncXMLStreamReader
方法名:next
暂无
代码示例来源:origin: spring-projects/spring-framework
@Override
public Publisher<? extends XMLEvent> apply(DataBuffer dataBuffer) {
try {
this.streamReader.getInputFeeder().feedInput(dataBuffer.asByteBuffer());
List<XMLEvent> events = new ArrayList<>();
while (true) {
if (this.streamReader.next() == AsyncXMLStreamReader.EVENT_INCOMPLETE) {
// no more events with what currently has been fed to the reader
break;
}
else {
XMLEvent event = this.eventAllocator.allocate(this.streamReader);
events.add(event);
if (event.isEndDocument()) {
break;
}
}
}
return Flux.fromIterable(events);
}
catch (XMLStreamException ex) {
return Mono.error(ex);
}
finally {
DataBufferUtils.release(dataBuffer);
}
}
代码示例来源:origin: org.springframework/spring-web
@Override
public Publisher<? extends XMLEvent> apply(DataBuffer dataBuffer) {
try {
this.streamReader.getInputFeeder().feedInput(dataBuffer.asByteBuffer());
List<XMLEvent> events = new ArrayList<>();
while (true) {
if (this.streamReader.next() == AsyncXMLStreamReader.EVENT_INCOMPLETE) {
// no more events with what currently has been fed to the reader
break;
}
else {
XMLEvent event = this.eventAllocator.allocate(this.streamReader);
events.add(event);
if (event.isEndDocument()) {
break;
}
}
}
return Flux.fromIterable(events);
}
catch (XMLStreamException ex) {
return Mono.error(ex);
}
finally {
DataBufferUtils.release(dataBuffer);
}
}
代码示例来源:origin: wildfly/wildfly
int type = streamReader.next();
switch (type) {
case XMLStreamConstants.START_DOCUMENT:
代码示例来源:origin: stackoverflow.com
byte[] msg = "<html>Very <b>simple</b> input document!</html>".getBytes();
AsyncXMLStreamReader asyncReader = new InputFactoryImpl().createAsyncXMLStreamReader();
final AsyncInputFeeder feeder = asyncReader.getInputFeeder();
int inputPtr = 0; // as we feed byte at a time
int type = 0;
do {
// May need to feed multiple "segments"
while ((type = asyncReader.next()) == AsyncXMLStreamReader.EVENT_INCOMPLETE) {
feeder.feedInput(msg, inputPtr++, 1);
if (inputPtr >= msg.length) { // to indicate end-of-content (important for error handling)
feeder.endOfInput();
}
}
// and once we have full event, we just dump out event type (for now)
System.out.println("Got event of type: "+type);
// could also just copy event as is, using Stax, or do any other normal non-blocking handling:
// xmlStreamWriter.copyEventFromReader(asyncReader, false);
} while (type != AsyncXMLStreamReader.END_DOCUMENT);
代码示例来源:origin: xose/netty-xmpp
@Override
protected Object decode(ChannelHandlerContext ctx, Channel channel, ChannelBuffer buffer) throws Exception {
final List<XMLEvent> result = new ArrayList<XMLEvent>();
byte[] chunk = new byte[buffer.readableBytes()];
buffer.readBytes(chunk);
reader.getInputFeeder().feedInput(chunk, 0, chunk.length);
while (reader.hasNext() && reader.next() != AsyncXMLStreamReader.EVENT_INCOMPLETE) {
result.add(allocator.allocate(reader));
}
return result;
}
代码示例来源:origin: georocket/georocket
@Override
public boolean hasNext() {
// read next token
int event;
try {
event = parser.next();
} catch (XMLStreamException e) {
throw new IllegalStateException("Could not parse input", e);
}
if (event == AsyncXMLStreamReader.EVENT_INCOMPLETE) {
// wait for more input
return false;
} else if (event == AsyncXMLStreamReader.END_DOCUMENT) {
try {
parser.close();
return false;
} catch (XMLStreamException e) {
throw new IllegalStateException("Could not close input", e);
}
}
// create stream event
int pos = parser.getLocation().getCharacterOffset();
nextEvent = new XMLStreamEvent(event, pos, parser);
return true;
}
代码示例来源:origin: apache/servicemix-bundles
@Override
public Publisher<? extends XMLEvent> apply(DataBuffer dataBuffer) {
try {
this.streamReader.getInputFeeder().feedInput(dataBuffer.asByteBuffer());
List<XMLEvent> events = new ArrayList<>();
while (true) {
if (this.streamReader.next() == AsyncXMLStreamReader.EVENT_INCOMPLETE) {
// no more events with what currently has been fed to the reader
break;
}
else {
XMLEvent event = this.eventAllocator.allocate(this.streamReader);
events.add(event);
if (event.isEndDocument()) {
break;
}
}
}
return Flux.fromIterable(events);
}
catch (XMLStreamException ex) {
return Mono.error(ex);
}
finally {
DataBufferUtils.release(dataBuffer);
}
}
代码示例来源:origin: org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-web
@Override
public Publisher<? extends XMLEvent> apply(DataBuffer dataBuffer) {
try {
this.streamReader.getInputFeeder().feedInput(dataBuffer.asByteBuffer());
List<XMLEvent> events = new ArrayList<>();
while (true) {
if (this.streamReader.next() == AsyncXMLStreamReader.EVENT_INCOMPLETE) {
// no more events with what currently has been fed to the reader
break;
}
else {
XMLEvent event = this.eventAllocator.allocate(this.streamReader);
events.add(event);
if (event.isEndDocument()) {
break;
}
}
}
return Flux.fromIterable(events);
}
catch (XMLStreamException ex) {
return Mono.error(ex);
}
finally {
DataBufferUtils.release(dataBuffer);
}
}
代码示例来源:origin: rocks.xmpp/xmpp-nio-codec
while ((type = xmlStreamReader.next()) != XMLStreamConstants.END_DOCUMENT && type != AsyncXMLStreamReader.EVENT_INCOMPLETE) {
代码示例来源:origin: org.jboss.eap/wildfly-client-all
int type = streamReader.next();
switch (type) {
case XMLStreamConstants.START_DOCUMENT:
代码示例来源:origin: org.apache.hbase.thirdparty/hbase-shaded-netty
int type = streamReader.next();
switch (type) {
case XMLStreamConstants.START_DOCUMENT:
代码示例来源:origin: org.apache.ratis/ratis-proto-shaded
int type = streamReader.next();
switch (type) {
case XMLStreamConstants.START_DOCUMENT:
代码示例来源:origin: georocket/georocket
List<Result<XMLChunkMeta>> chunks = new ArrayList<>();
while (reader.hasNext()) {
int event = reader.next();
if (event == AsyncXMLStreamReader.EVENT_INCOMPLETE) {
reader.close();
内容来源于网络,如有侵权,请联系作者删除!