Show EventAdapterImpl.java syntax highlighted
/**
* Copyright (c) 2005
* Helsinki Institute of Physics
* see LICENSE file for details
*
* EventAdapterImpl.java
* Created on Nov 1, 2005
*/
package fi.hip.gb.gridlib.gridsp.adapters;
import fi.hip.gb.gridlib.gridsp.userbase.PortalUser;
import fi.hip.gb.gridlib.gridsp.SPConstants;
import java.util.HashMap;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import org.sourceid.idff12.adapter.EventAdapter;
import org.sourceid.idff12.adapter.SessionInfo;
import org.sourceid.idff12.adapter.Warrant;
import org.sourceid.idff12.adapter.FederationInfo;
/**
* This class includes the implementation for the
* org.sourceid.idff12.adapter.EventAdapter interface.
* @author Henri Mikkonen
* @version $Id: $
*/
public class EventAdapterImpl implements EventAdapter {
/**
* Keeps track of session IDs
*/
static HashMap sessionMap = new HashMap();
/**
* This method is run when a session is created.
* @param sinfo The session info.
* @param request The HTTP Servlet request.
* @param response The HTTP Servlet response.
*/
public void onSessionCreated(SessionInfo sinfo,
HttpServletRequest request,
HttpServletResponse response) {
HttpSession session = request.getSession();
session.setAttribute(SPConstants.ATTR_SESSION_KEY,
sinfo.getSessionId());
PortalUser user =
(PortalUser)session.getAttribute(SPConstants.ATTR_USER_KEY);
if (user == null)
{
user = new PortalUser();
user = user.getUserByName(sinfo.getPrincipalId());
session.setAttribute(SPConstants.ATTR_USER_KEY, user);
}
sessionMap.put(sinfo.getSessionId(), session);
}
/**
* This method is run when a session is terminated.
* @param sinfo The session info.
* @param request The HTTP Servlet request.
* @param response The HTTP Servlet response.
*/
public void onSessionTerminated(SessionInfo sinfo,
HttpServletRequest request,
HttpServletResponse response) {
HttpSession session =
(HttpSession)sessionMap.get(sinfo.getSessionId());
session.removeAttribute(SPConstants.ATTR_SESSION_KEY);
session.removeAttribute(SPConstants.ATTR_USER_KEY);
session.removeAttribute(SPConstants.ATTR_CURRENT_IDP_KEY);
}
/**
* This method is run when a warrant is issued.
* @param sinfo The session info.
* @param w The warrant that is issued.
* @param request The HTTP Servlet request.
* @param response The HTTP Servlet response.
*/
public void onWarrantIssued(SessionInfo sinfo,
Warrant w,
HttpServletRequest request,
HttpServletResponse response) {
HttpSession session =
(HttpSession)sessionMap.get(sinfo.getSessionId());
session.setAttribute(SPConstants.ATTR_CURRENT_IDP_KEY,
w.getProviderId());
}
/**
* This method is run when a federation is created.
* @param principalId The local principal identifier as
* <code>String</code>.
* @param providerId The provider identifier (as <code>String</code>)
* the federation is created with.
*/
public void onFederationCreated(String principalId, String providerId)
{
}
/**
* This method is run when a federation is terminated.
* @param principalId The local principal identifier as
* <code>String</code>.
* @param providerId The provider identifier (as <code>String</code>)
* of the federation that is terminated.
*/
public void onFederationTerminated(String principalId, String providerId)
{
}
}
See more files for this project here