package Ġeu . nk 2 . spring craft . utils Ċ Ċ import Ġorg . reactiv est ream s . Publisher Ċ import Ġorg . springframework . core . Res olvable Type Ċ import Ġorg . springframework . core . io . buffer . Data Buffer Ċ import Ġorg . springframework . core . io . buffer . Data Buffer Factory Ċ import Ġorg . springframework . http . MediaType Ċ import Ġorg . springframework . http . codec . Http Message Encoder Ċ import Ġorg . springframework . util . MimeType Ċ import Ġreactor . core . publisher . Flux Ċ Ċ class ĠCom bined Http Message Encoder ( ĊĠĠĠ Ġprivate Ġval Ġen coders : ĠList < Http Message Encoder < Any >> Ċ ): ĠHttp Message Encoder < Any > Ġ{ ĊĠĠĠ Ġoverride Ġfun Ġget En codable Mime Types (): ĠMutable List < MimeType > Ġ= ĊĠĠĠĠĠĠĠ Ġen coders . flatMap Ġ{ Ġit . en codable Mime Types Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. to Mutable List () ĊĊĠĠĠ Ġoverride Ġfun Ġget Streaming Media Types (): ĠMutable List < MediaType > Ġ= ĊĠĠĠĠĠĠĠ Ġen coders . flatMap Ġ{ Ġit . streaming Media Types Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. to Mutable List () ĊĊĠĠĠ Ġoverride Ġfun Ġcan Encode ( elementType : ĠRes olvable Type , ĠmimeType : ĠMime Type ?): ĠBoolean Ġ= ĊĠĠĠĠĠĠĠ Ġen coders . any Ġ{ Ġit . can Encode ( elementType , ĠmimeType ) Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġencode Value ( value : ĠAny , Ġbuffer Factory : ĠData Buffer Factory , Ġvalue Type : ĠRes olvable Type , ĠmimeType : ĠMime Type ?, Ġhints : ĠMutable Map < String , ĠAny >? ): ĠData Buffer Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġen coders . find Ġ{ ĠmimeType Ġin Ġit . en codable Mime Types Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ? . encode Value ( value , Ġbuffer Factory , Ġvalue Type , ĠmimeType , Ġhints ) !! ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġencode ( inputStream : ĠPublisher < out ĠAny >, Ġbuffer Factory : ĠData Buffer Factory , Ġelement Type : ĠRes olvable Type , ĠmimeType : ĠMime Type ?, Ġhints : ĠMutable Map < String , ĠAny >? ): ĠFlux < Data Buffer > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġen coders . find Ġ{ ĠmimeType Ġin Ġit . en codable Mime Types Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ? . encode ( inputStream , Ġbuffer Factory , Ġelement Type , ĠmimeType , Ġhints ) !! ĊĠĠĠ Ġ} Ċ Ċ } Ċ