Class TextStreamCodec

  • All Implemented Interfaces:
    io.micronaut.http.codec.MediaTypeCodec

    @Singleton
    @Internal
    @Requires(bean=io.micronaut.core.io.buffer.ByteBufferFactory.class)
    public class TextStreamCodec
    extends java.lang.Object
    implements io.micronaut.http.codec.MediaTypeCodec
    A MediaTypeCodec that will encode Event objects in order to support Server Sent Events.
    Since:
    1.0
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
        TextStreamCodec​(io.micronaut.runtime.ApplicationConfiguration applicationConfiguration, io.micronaut.core.io.buffer.ByteBufferFactory byteBufferFactory, io.micronaut.context.BeanProvider<io.micronaut.http.codec.MediaTypeCodecRegistry> codecRegistryProvider, io.micronaut.http.codec.CodecConfiguration codecConfiguration)  
      protected TextStreamCodec​(java.nio.charset.Charset defaultCharset, io.micronaut.core.io.buffer.ByteBufferFactory byteBufferFactory, io.micronaut.context.BeanProvider<io.micronaut.http.codec.MediaTypeCodecRegistry> codecRegistryProvider, io.micronaut.http.codec.CodecConfiguration codecConfiguration)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      <T> T decode​(io.micronaut.core.type.Argument<T> type, java.io.InputStream inputStream)  
      <T> T decode​(java.lang.Class<T> type, java.io.InputStream inputStream)  
      <T> byte[] encode​(T object)  
      <T,​B>
      io.micronaut.core.io.buffer.ByteBuffer<B>
      encode​(T object, io.micronaut.core.io.buffer.ByteBufferFactory<?,​B> allocator)  
      <T> void encode​(T object, java.io.OutputStream outputStream)  
      java.util.Collection<io.micronaut.http.MediaType> getMediaTypes()  
      protected void writeAttribute​(io.micronaut.core.io.buffer.ByteBuffer eventData, byte[] attribute, java.lang.String value)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
      • Methods inherited from interface io.micronaut.http.codec.MediaTypeCodec

        decode, decode, decode, decode, decode, decode, encode, encode, encode, supportsType
    • Field Detail

      • CONFIGURATION_QUALIFIER

        public static final java.lang.String CONFIGURATION_QUALIFIER
        See Also:
        Constant Field Values
    • Constructor Detail

      • TextStreamCodec

        @Inject
        public TextStreamCodec​(io.micronaut.runtime.ApplicationConfiguration applicationConfiguration,
                               io.micronaut.core.io.buffer.ByteBufferFactory byteBufferFactory,
                               io.micronaut.context.BeanProvider<io.micronaut.http.codec.MediaTypeCodecRegistry> codecRegistryProvider,
                               @Named("text-stream") @Nullable
                               io.micronaut.http.codec.CodecConfiguration codecConfiguration)
        Parameters:
        applicationConfiguration - The application configuration
        byteBufferFactory - A byte buffer factory
        codecRegistryProvider - A media type codec registry
        codecConfiguration - The configuration for the codec
      • TextStreamCodec

        protected TextStreamCodec​(java.nio.charset.Charset defaultCharset,
                                  io.micronaut.core.io.buffer.ByteBufferFactory byteBufferFactory,
                                  io.micronaut.context.BeanProvider<io.micronaut.http.codec.MediaTypeCodecRegistry> codecRegistryProvider,
                                  @Named("text-stream") @Nullable
                                  io.micronaut.http.codec.CodecConfiguration codecConfiguration)
        Parameters:
        defaultCharset - The default charset
        byteBufferFactory - A byte buffer factory
        codecRegistryProvider - A media type codec registry
        codecConfiguration - The configuration for the codec
    • Method Detail

      • getMediaTypes

        public java.util.Collection<io.micronaut.http.MediaType> getMediaTypes()
        Specified by:
        getMediaTypes in interface io.micronaut.http.codec.MediaTypeCodec
      • decode

        public <T> T decode​(io.micronaut.core.type.Argument<T> type,
                            java.io.InputStream inputStream)
        Specified by:
        decode in interface io.micronaut.http.codec.MediaTypeCodec
      • decode

        public <T> T decode​(java.lang.Class<T> type,
                            java.io.InputStream inputStream)
        Specified by:
        decode in interface io.micronaut.http.codec.MediaTypeCodec
      • encode

        public <T> void encode​(T object,
                               java.io.OutputStream outputStream)
        Specified by:
        encode in interface io.micronaut.http.codec.MediaTypeCodec
      • encode

        public <T> byte[] encode​(T object)
        Specified by:
        encode in interface io.micronaut.http.codec.MediaTypeCodec
      • encode

        public <T,​B> io.micronaut.core.io.buffer.ByteBuffer<B> encode​(T object,
                                                                            io.micronaut.core.io.buffer.ByteBufferFactory<?,​B> allocator)
        Specified by:
        encode in interface io.micronaut.http.codec.MediaTypeCodec
      • writeAttribute

        protected void writeAttribute​(io.micronaut.core.io.buffer.ByteBuffer eventData,
                                      byte[] attribute,
                                      java.lang.String value)
        Parameters:
        eventData - The byte buffer
        attribute - The attribute
        value - The value