ClientUtils.java revision bbb43b578c74fb7367a176e7cb07c94daf71c209
/**
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
*
* Copyright (c) 2005 Sun Microsystems Inc. All Rights Reserved
*
* The contents of this file are subject to the terms
* of the Common Development and Distribution License
* (the License). You may not use this file except in
* compliance with the License.
*
* You can obtain a copy of the License at
* See the License for the specific language governing
* permission and limitations under the License.
*
* When distributing Covered Code, include this CDDL
* Header Notice in each file and include the License file
* at opensso/legal/CDDLv1.0.txt.
* If applicable, add the following below the CDDL Header,
* with the fields enclosed by brackets [] replaced by
* your own identifying information:
* "Portions Copyrighted [year] [name of copyright owner]"
*
*/
/*
* Portions Copyrighted 2013-2015 ForgeRock AS.
*/
/**
* Shared utility class for HTTP Clients.
*/
public final class ClientUtils {
private ClientUtils() {
// Static utility methods so private constructor.
}
/**
* Returns client IP address. The method checks the special HTTP header
* first (handles Load Balancer case), then checks the remote address contained in the request.
* Refactored from <code>AuthClientUtils.getClientIPAddress()</code> to enable classes outside of the core
* (Federation for example) to access this utility method.
*
* @param request HttpServletRequest request to be used to obtain client's IP address
* @return String representing the client's IP address
*/
}
}
if (utilDebug.messageEnabled()) {
}
} else {
if (utilDebug.messageEnabled()) {
}
}
}
return result;
}
/**
*
* @param context the Commons Http-Framework context which will be examined to obtain the client's ip address.
* @param request the Commons Http-Framework request which will be examined to obtain the client's ip address
* @return the client ip address, specified in either a custom header value, or pulled from the request, via the ClientInfoContext
* class.
*/
}
}
if (utilDebug.messageEnabled()) {
}
} else {
if (utilDebug.messageEnabled()) {
}
}
}
return result;
}
/**
* @param context the Commons Http-Framework context which will be examined to obtain the client's ip address.
* @return the client ip address, specified in either a custom header value, or pulled from the request, via the ClientInfoContext
* class. Differs from the method above as this method relies upon the presence of crest context objects, which are not
* present in the CHF context.
*/
List<String> clientIPHeaderContent = context.asContext(HttpContext.class).getHeaders().get(ipAddrHeader);
}
}
}
if (utilDebug.messageEnabled()) {
}
} else {
if (utilDebug.messageEnabled()) {
}
}
return result;
}
}