T
- 入力ストリーム内のオブジェクトの型 public class EncoderHttpMessageWriter<T> extends ObjectSE implements HttpMessageWriter<T>
Encoder
にラップして委譲する HttpMessageWriter
。 また、リクエストやコントローラーメソッドアノテーションなど、サーバー側で利用可能な追加情報からエンコーディングヒントを事前に解決する HttpMessageWriter
。
コンストラクターと説明 |
---|
EncoderHttpMessageWriter(Encoder<T> encoder) 指定された Encoder をラップするインスタンスを作成します。 |
修飾子と型 | メソッドと説明 |
---|---|
boolean | canWrite(ResolvableType elementType, MediaType mediaType) 指定されたオブジェクト型がこのライターでサポートされているかどうか。 |
Encoder<T> | getEncoder() このライターの Encoder を返します。 |
ListSE<MediaType> | getWritableMediaTypes() このライターでサポートされているメディア型のリストを返します。 |
ListSE<MediaType> | getWritableMediaTypes(ResolvableType elementType) 指定された型の要素について、このライターでサポートされているメディア型のリストを返します。 |
protected MapSE<StringSE, ObjectSE> | getWriteHints(ResolvableType streamType, ResolvableType elementType, MediaType mediaType, ServerHttpRequest request, ServerHttpResponse response) たとえば、サーバーリクエストまたはコントローラーメソッドパラメーターからのアノテーションに基づいて、エンコードに関する追加のヒントを取得します。 |
reactor.core.publisher.Mono<VoidSE> | write(Publisher<? extends T> inputStream, ResolvableType elementType, MediaType mediaType, ReactiveHttpOutputMessage message, MapSE<StringSE, ObjectSE> hints) オブジェクトの特定のストリームを出力メッセージに書き込みます。 |
reactor.core.publisher.Mono<VoidSE> | write(Publisher<? extends T> inputStream, ResolvableType actualType, ResolvableType elementType, MediaType mediaType, ServerHttpRequest request, ServerHttpResponse response, MapSE<StringSE, ObjectSE> hints) 追加のコンテキストが利用可能な、 HttpMessageWriter.write(Publisher, ResolvableType, MediaType, ReactiveHttpOutputMessage, Map) のサーバー側のみの代替。 |
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSE
public ListSE<MediaType> getWritableMediaTypes()
HttpMessageWriter
canWrite(elementType, null)
を介して保護する必要があります。このリストでは、特定の要素型でのみサポートされているメディア型を除外することもできます。または、HttpMessageWriter.getWritableMediaTypes(ResolvableType)
を使用してより正確なリストを作成します。HttpMessageWriter<T>
の getWritableMediaTypes
public ListSE<MediaType> getWritableMediaTypes(ResolvableType elementType)
HttpMessageWriter
HttpMessageWriter.getWritableMediaTypes()
とは異なる場合があります。HttpMessageWriter<T>
の getWritableMediaTypes
elementType
- エンコードする要素の型 public boolean canWrite(ResolvableType elementType, @Nullable MediaType mediaType)
HttpMessageWriter
HttpMessageWriter<T>
の canWrite
elementType
- チェックするオブジェクトの型 mediaType
- 書き込みのメディア型 (おそらく null
)true
、それ以外の場合は false
public reactor.core.publisher.Mono<VoidSE> write(Publisher<? extends T> inputStream, ResolvableType elementType, @Nullable MediaType mediaType, ReactiveHttpOutputMessage message, MapSE<StringSE,ObjectSE> hints)
HttpMessageWriter
HttpMessageWriter<T>
の write
inputStream
- 書き込むオブジェクト elementType
- HttpMessageWriter.canWrite(ResolvableType, MediaType)
を介して事前にチェックされている必要があるストリーム内のオブジェクトの型 mediaType
- 書き込みのコンテンツ型 (ライターのデフォルトのコンテンツ型を使用する必要があることを示す null
)message
- 書き込むメッセージ hints
- エンコードおよび書き込み方法に関する追加情報 public reactor.core.publisher.Mono<VoidSE> write(Publisher<? extends T> inputStream, ResolvableType actualType, ResolvableType elementType, @Nullable MediaType mediaType, ServerHttpRequest request, ServerHttpResponse response, MapSE<StringSE,ObjectSE> hints)
HttpMessageWriter
HttpMessageWriter.write(Publisher, ResolvableType, MediaType, ReactiveHttpOutputMessage, Map)
のサーバー側のみの代替。HttpMessageWriter<T>
の write
actualType
- 値を返したメソッドの実際の戻り値の型。アノテーション付きコントローラーの場合、MethodParameter
は ResolvableType.getSource()
を介してアクセスできます。elementType
- 入力ストリーム内のオブジェクトの型 mediaType
- 使用するコンテンツ型 (ライターのデフォルトのコンテンツ型を使用する必要があることを示す null
)request
- 現在のリクエスト response
- 現在のレスポンス Mono
protected MapSE<StringSE,ObjectSE> getWriteHints(ResolvableType streamType, ResolvableType elementType, @Nullable MediaType mediaType, ServerHttpRequest request, ServerHttpResponse response)
HttpMessageEncoder
のインスタンスである場合はエンコーダーに委譲します。