class RequestPreprocessor {

    public String preprocess(Message m, UriInfo u) {
        handleExtensionMappings(m, u);
        handleLanguageMappings(m, u);

        MultivaluedMap<String, String> queries = u.getQueryParameters();
        handleTypeQuery(m, queries);
        handleCType(m, queries);
        handleMethod(m, queries, new HttpHeadersImpl(m));
        return new UriInfoImpl(m, null).getPath();
    }

    public  RequestPreprocessor();
    public  RequestPreprocessor(Map<Object, Object> languageMappings,
                           Map<Object, Object> extensionMappings);

}