/** {@inheritDoc} */ // CheckStyle: ReturnCount OFF @Override protected void doExecute(@Nonnull final ProfileRequestContext profileRequestContext, @Nonnull final AuthenticationContext authenticationContext) { final HttpServletRequest request = getHttpServletRequest(); if (request == null) { log.debug("{} Profile action does not contain an HttpServletRequest", getLogPrefix()); ActionSupport.buildEvent(profileRequestContext, AuthnEventIds.NO_CREDENTIALS); return; } final String addressString = applyTransforms(request.getRemoteAddr()); if (addressString == null || !InetAddresses.isInetAddress(addressString)) { log.debug("{} User agent's address, {}, is not a valid IP address", getLogPrefix(), addressString); ActionSupport.buildEvent(profileRequestContext, AuthnEventIds.NO_CREDENTIALS); return; } authenticationContext.getSubcontext(UserAgentContext.class, true).setAddress( InetAddresses.forString(addressString)); } // CheckStyle: ReturnCount ON