/** Try to map a file name to a {@link Lang}; return null on no registered mapping */ public static Lang filenameToLang(String filename) { if ( filename == null ) return null ; if ( filename.endsWith(".gz") ) filename = filename.substring(0, filename.length()-3) ; return fileExtToLang(FileUtils.getFilenameExt(filename)) ; }
/** Try to map a URI or file name to a {@link Lang}; return null on no registered mapping. */ public static Lang filenameToLang(String filename) { if ( filename == null ) return null; // Remove any URI fragment (there can be only one # in a URI). // Pragmatically, assume any # is URI related. // URIs can be relative. int iHash = filename.indexOf('#'); if ( iHash > 0 ) filename = filename.substring(0, iHash); // Gzip or BZip2 compressed? filename = IO.filenameNoCompression(filename); return fileExtToLang(FileUtils.getFilenameExt(filename)); }