node-web-mvc
Version:
node spring mvc
21 lines (20 loc) • 999 B
TypeScript
/** *
* @module AbstractHttpMessageConverter
*/
import { JsDataType } from '../../../interface/declare';
import MediaType from '../MediaType';
import ServletContext from '../ServletContext';
import HttpMessageConverter from './HttpMessageConverter';
export default abstract class AbstractHttpMessageConverter<T> implements HttpMessageConverter<T> {
private supportedMediaTypes;
constructor(...mediaTypes: Array<MediaType>);
getSupportedMediaTypes(): MediaType[];
private matchMediaType;
canRead(clazz: JsDataType, mediaType: MediaType): boolean;
canWrite(clazz: JsDataType, mediaType: MediaType): boolean;
read(servletContext: ServletContext, dataType: Function): Promise<T>;
write(data: T, servletContext: ServletContext): Promise<void>;
abstract supports(clazz: Function): boolean;
abstract readInternal(servletContext: ServletContext, dataType: Function): Promise<T>;
abstract writeInternal(data: T, servletContext: ServletContext): Promise<void>;
}