Package io.micronaut.http.netty.body
Class AvailableNettyByteBody
java.lang.Object
io.micronaut.http.netty.body.NettyByteBody
io.micronaut.http.netty.body.AvailableNettyByteBody
- All Implemented Interfaces:
io.micronaut.http.body.AvailableByteBody,io.micronaut.http.body.ByteBody,io.micronaut.http.body.CloseableAvailableByteBody,io.micronaut.http.body.CloseableByteBody,io.micronaut.http.body.InternalByteBody,Closeable,AutoCloseable
@Internal
public final class AvailableNettyByteBody
extends NettyByteBody
implements io.micronaut.http.body.CloseableAvailableByteBody
Netty ByteBuf implementation of ImmediateByteBody.
- Since:
- 4.5.0
-
Nested Class Summary
Nested classes/interfaces inherited from interface io.micronaut.http.body.ByteBody
io.micronaut.http.body.ByteBody.BodyDiscardedException, io.micronaut.http.body.ByteBody.SplitBackpressureMode -
Field Summary
Fields inherited from class io.micronaut.http.netty.body.NettyByteBody
LOG -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription@NonNull io.micronaut.core.execution.ExecutionFlow<? extends io.micronaut.http.body.CloseableAvailableByteBody>voidclose()static @NonNull io.micronaut.http.body.CloseableByteBodycreateChecked(@NonNull io.netty.channel.EventLoop loop, @NonNull BodySizeLimits bodySizeLimits, @NonNull io.netty.buffer.ByteBuf buf) This is a wrapper aroundAvailableNettyByteBody(ByteBuf)with an extra body length check.static io.micronaut.http.body.CloseableAvailableByteBodyempty()longlength()io.netty.buffer.ByteBufpeek()@NonNull io.micronaut.http.body.CloseableAvailableByteBodysplit()byte @NonNull []static @NonNull io.netty.buffer.ByteBuftoByteBuf(@NonNull io.micronaut.http.body.AvailableByteBody body) @NonNull io.micronaut.core.io.buffer.ByteBuffer<?>protected reactor.core.publisher.Flux<io.netty.buffer.ByteBuf>@NonNull InputStream@NonNull Stringvoidtouch()Methods inherited from class io.micronaut.http.netty.body.NettyByteBody
toByteArrayPublisher, toByteBufferPublisher, toByteBufsMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface io.micronaut.http.body.AvailableByteBody
expectedLength, split, toByteArrayPublisher, toByteBufferPublisherMethods inherited from interface io.micronaut.http.body.CloseableAvailableByteBody
allowDiscardMethods inherited from interface io.micronaut.http.body.InternalByteBody
buffer
-
Constructor Details
-
AvailableNettyByteBody
public AvailableNettyByteBody(@NonNull @NonNull io.netty.buffer.ByteBuf buffer)
-
-
Method Details
-
empty
public static io.micronaut.http.body.CloseableAvailableByteBody empty() -
toByteBuf
@NonNull public static @NonNull io.netty.buffer.ByteBuf toByteBuf(@NonNull @NonNull io.micronaut.http.body.AvailableByteBody body) -
createChecked
@NonNull public static @NonNull io.micronaut.http.body.CloseableByteBody createChecked(@NonNull @NonNull io.netty.channel.EventLoop loop, @NonNull @NonNull BodySizeLimits bodySizeLimits, @NonNull @NonNull io.netty.buffer.ByteBuf buf) This is a wrapper aroundAvailableNettyByteBody(ByteBuf)with an extra body length check.- Parameters:
loop- The event loop for constructingStreamingNettyByteBodybodySizeLimits- The body size limits to checkbuf- The input buffer- Returns:
- The body with the given input buffer, or a
StreamingNettyByteBodywith the appropriate content length error
-
peek
public io.netty.buffer.ByteBuf peek() -
toInputStream
- Specified by:
toInputStreamin interfaceio.micronaut.http.body.ByteBody
-
length
public long length()- Specified by:
lengthin interfaceio.micronaut.http.body.AvailableByteBody
-
bufferFlow
@NonNull public @NonNull io.micronaut.core.execution.ExecutionFlow<? extends io.micronaut.http.body.CloseableAvailableByteBody> bufferFlow()- Specified by:
bufferFlowin interfaceio.micronaut.http.body.InternalByteBody- Specified by:
bufferFlowin classNettyByteBody
-
close
public void close()- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Specified by:
closein interfaceio.micronaut.http.body.CloseableByteBody
-
toByteBufPublisher
protected reactor.core.publisher.Flux<io.netty.buffer.ByteBuf> toByteBufPublisher() -
toByteArray
public byte @NonNull [] toByteArray()- Specified by:
toByteArrayin interfaceio.micronaut.http.body.AvailableByteBody
-
toByteBuffer
@NonNull public @NonNull io.micronaut.core.io.buffer.ByteBuffer<?> toByteBuffer()- Specified by:
toByteBufferin interfaceio.micronaut.http.body.AvailableByteBody
-
toString
- Specified by:
toStringin interfaceio.micronaut.http.body.AvailableByteBody
-
split
@NonNull public @NonNull io.micronaut.http.body.CloseableAvailableByteBody split()- Specified by:
splitin interfaceio.micronaut.http.body.AvailableByteBody- Specified by:
splitin interfaceio.micronaut.http.body.ByteBody
-
touch
public void touch()- Specified by:
touchin interfaceio.micronaut.http.body.ByteBody
-