{
}
public static Session createSessionForRequest(HttpServletRequest servletRequest)
{
SessionBuilder sessionBuilder = Session.builder()
.setUser(getRequiredHeader(servletRequest, PRESTO_USER, "User"))
.setSource(servletRequest.getHeader(PRESTO_SOURCE))
.setCatalog(getRequiredHeader(servletRequest, PRESTO_CATALOG, "Catalog"))
.setSchema(getRequiredHeader(servletRequest, PRESTO_SCHEMA, "Schema"))
.setRemoteUserAddress(servletRequest.getRemoteAddr())
.setUserAgent(servletRequest.getHeader(USER_AGENT));
String timeZoneId = servletRequest.getHeader(PRESTO_TIME_ZONE);
if (timeZoneId != null) {
sessionBuilder.setTimeZoneKey(getTimeZoneKey(timeZoneId));
}
String language = servletRequest.getHeader(PRESTO_LANGUAGE);
if (language != null) {
sessionBuilder.setLocale(Locale.forLanguageTag(language));
}
return sessionBuilder.build();
}