@PreMatching
final class HttpsContainerRequestFilter
extends java.lang.Object
implements javax.ws.rs.container.ContainerRequestFilter
Modifier and Type | Field and Description |
---|---|
private static org.slf4j.Logger |
log |
Constructor and Description |
---|
HttpsContainerRequestFilter() |
Modifier and Type | Method and Description |
---|---|
void |
filter(javax.ws.rs.container.ContainerRequestContext requestContext) |
private boolean |
isSSL(javax.ws.rs.core.MultivaluedMap<java.lang.String,java.lang.String> headers)
#override SERVER-PORT-SECURE by X-EPAGES-NEEDS-SSL or X-Forwarded-SSL if set;
see also: http://en.wikipedia.org/wiki/List_of_HTTP_header_fields
$WebServerVars{'SERVER_PORT_SECURE'} = $WebServerVars{'HTTP_X_EPAGES_NEEDS_SSL'} if $WebServerVars{'HTTP_X_EPAGES_NEEDS_SSL'};
$WebServerVars{'SERVER_PORT_SECURE'} = $WebServerVars{'HTTP_X_FORWARDED_SSL'} if $WebServerVars{'HTTP_X_FORWARDED_SSL'};
if( $WebServerVars{'HTTP_X_FORWARDED_PROTO'} ) {
$WebServerVars{'SERVER_PORT_SECURE'} = $WebServerVars{'HTTP_X_FORWARDED_PROTO'} eq 'https' ? 1 : 0;
}elsif( $WebServerVars{'HTTP_FRONT_END_HTTPS'} ) {
$WebServerVars{'SERVER_PORT_SECURE'} = 1;
}
|
private boolean |
isTrueForPerl(javax.ws.rs.core.MultivaluedMap<java.lang.String,java.lang.String> headers,
java.lang.String key) |
public void filter(javax.ws.rs.container.ContainerRequestContext requestContext)
filter
in interface javax.ws.rs.container.ContainerRequestFilter
private boolean isSSL(javax.ws.rs.core.MultivaluedMap<java.lang.String,java.lang.String> headers)
private boolean isTrueForPerl(javax.ws.rs.core.MultivaluedMap<java.lang.String,java.lang.String> headers, java.lang.String key)