private void cleanupServiceGroupContexts() { long currentTime = System.currentTimeMillis(); for (Iterator<String> it = this.sessionmap.keySet().iterator(); it.hasNext();) { String cookieID = (String) it.next(); SessionContext sessionContext = (SessionContext) this.sessionmap.get(cookieID); if ((currentTime - sessionContext.getLastTouchedTime()) > sessionContext.sessionContextTimeoutInterval) { it.remove(); Iterator<ServiceGroupContext> serviceGroupContext = sessionContext.getServiceGroupContext(); if (serviceGroupContext != null) { while (serviceGroupContext.hasNext()) { ServiceGroupContext groupContext = (ServiceGroupContext) serviceGroupContext.next(); cleanupServiceContexts(groupContext); } } } } }
public synchronized SessionContext getSessionContext(String sessionKey) { SessionContext sessionContext = null; if (sessionKey != null && sessionKey.length() != 0) { sessionContext = (SessionContext) this.sessionmap.get(sessionKey); } if (sessionContext == null) { sessionKey = UIDGenerator.generateUID(); sessionContext = new SessionContext(null); sessionContext.setCookieID(sessionKey); this.sessionmap.put(sessionKey, sessionContext); } sessionContext.touch(); cleanupServiceGroupContexts(); return sessionContext; }
protected void finalize() throws Throwable { super.finalize(); if (serviceGroupContextMap != null && !serviceGroupContextMap.isEmpty()) { Iterator<ServiceGroupContext> valuse = serviceGroupContextMap.values().iterator(); while (valuse.hasNext()) { ServiceGroupContext serviceGroupContext = (ServiceGroupContext) valuse.next(); cleanupServiceContextes(serviceGroupContext); } } }
public SessionContext getSessionContext(MessageContext messageContext) { HttpServletRequest req = (HttpServletRequest) messageContext.getProperty( HTTPConstants.MC_HTTP_SERVLETREQUEST); SessionContext sessionContext = (SessionContext) req.getSession(true).getAttribute( Constants.SESSION_CONTEXT_PROPERTY); String sessionId = req.getSession().getId(); if (sessionContext == null) { sessionContext = new SessionContext(null); sessionContext.setCookieID(sessionId); req.getSession().setAttribute(Constants.SESSION_CONTEXT_PROPERTY, sessionContext); } messageContext.setSessionContext(sessionContext); messageContext.setProperty(AxisServlet.SESSION_ID, sessionId); return sessionContext; }
sessionContext.getServiceGroupContext(serviceGroupName); if (serviceGroupContext != null) { createAndFillContexts(service, msgContext, sessionContext); ServiceContext serviceContext = sessionContext.getServiceContext(service); serviceContext.setProperty(HTTPConstants.COOKIE_STRING, sessionContext.getCookieID());
out.writeLong(getLastTouchedTime()); out.writeMap(getProperties());
private void createAndFillContexts(AxisService service, MessageContext msgContext, SessionContext sessionContext) throws AxisFault { ServiceGroupContext serviceGroupContext; AxisServiceGroup axisServiceGroup = service.getAxisServiceGroup(); ConfigurationContext configCtx = msgContext.getConfigurationContext(); serviceGroupContext = configCtx.createServiceGroupContext(axisServiceGroup); msgContext.setServiceGroupContext(serviceGroupContext); ServiceContext serviceContext = serviceGroupContext.getServiceContext(service); msgContext.setServiceContext(serviceContext); if (sessionContext != null) { sessionContext.addServiceContext(serviceContext); sessionContext.addServiceGroupContext(serviceGroupContext); } }
/** * Test get session context. */ public void testGetSessionContext() { String sessionKey = null; SessionContext ctx1 = manager.getSessionContext(sessionKey); sessionKey = ctx1.getCookieID(); assertNotNull(ctx1); assertNotNull(sessionKey); SessionContext ctx2 = manager.getSessionContext(sessionKey); assertNotNull(ctx2); assertEquals(ctx1, ctx2); assertEquals(sessionKey, ctx2.getCookieID()); SessionContext ctx3 = manager.getSessionContext(null); assertNotNull(ctx3); assertNotSame(ctx1, ctx3); assertFalse(sessionKey.equals(ctx3.getCookieID())); }
sessionContext.getServiceGroupContext(serviceGroupName); if (serviceGroupContext != null) { createAndFillContexts(service, msgContext, sessionContext); ServiceContext serviceContext = sessionContext.getServiceContext(service); serviceContext.setProperty(HTTPConstants.COOKIE_STRING, sessionContext.getCookieID());
out.writeLong(getLastTouchedTime()); out.writeMap(getProperties());
private void createAndFillContexts(AxisService service, MessageContext msgContext, SessionContext sessionContext) throws AxisFault { ServiceGroupContext serviceGroupContext; AxisServiceGroup axisServiceGroup = service.getAxisServiceGroup(); ConfigurationContext configCtx = msgContext.getConfigurationContext(); serviceGroupContext = configCtx.createServiceGroupContext(axisServiceGroup); msgContext.setServiceGroupContext(serviceGroupContext); ServiceContext serviceContext = serviceGroupContext.getServiceContext(service); msgContext.setServiceContext(serviceContext); if (sessionContext != null) { sessionContext.addServiceContext(serviceContext); sessionContext.addServiceGroupContext(serviceGroupContext); } }
public SessionContext getSessionContext(MessageContext messageContext) { HttpServletRequest req = (HttpServletRequest) messageContext.getProperty( HTTPConstants.MC_HTTP_SERVLETREQUEST); SessionContext sessionContext = (SessionContext) req.getSession(true).getAttribute( Constants.SESSION_CONTEXT_PROPERTY); String sessionId = req.getSession().getId(); if (sessionContext == null) { sessionContext = new SessionContext(null); sessionContext.setCookieID(sessionId); req.getSession().setAttribute(Constants.SESSION_CONTEXT_PROPERTY, sessionContext); } messageContext.setSessionContext(sessionContext); messageContext.setProperty(AxisServlet.SESSION_ID, sessionId); return sessionContext; }
private void cleanupServiceGroupContexts() { long currentTime = System.currentTimeMillis(); for (Iterator<String> it = this.sessionmap.keySet().iterator(); it.hasNext();) { String cookieID = (String) it.next(); SessionContext sessionContext = (SessionContext) this.sessionmap.get(cookieID); if ((currentTime - sessionContext.getLastTouchedTime()) > sessionContext.sessionContextTimeoutInterval) { it.remove(); Iterator<ServiceGroupContext> serviceGroupContext = sessionContext.getServiceGroupContext(); if (serviceGroupContext != null) { while (serviceGroupContext.hasNext()) { ServiceGroupContext groupContext = (ServiceGroupContext) serviceGroupContext.next(); cleanupServiceContexts(groupContext); } } } } }
public synchronized SessionContext getSessionContext(String sessionKey) { SessionContext sessionContext = null; if (sessionKey != null && sessionKey.length() != 0) { sessionContext = (SessionContext) this.sessionmap.get(sessionKey); } if (sessionContext == null) { sessionKey = UIDGenerator.generateUID(); sessionContext = new SessionContext(null); sessionContext.setCookieID(sessionKey); this.sessionmap.put(sessionKey, sessionContext); } sessionContext.touch(); cleanupServiceGroupContexts(); return sessionContext; }
protected void finalize() throws Throwable { super.finalize(); if (serviceGroupContextMap != null && !serviceGroupContextMap.isEmpty()) { Iterator<ServiceGroupContext> valuse = serviceGroupContextMap.values().iterator(); while (valuse.hasNext()) { ServiceGroupContext serviceGroupContext = (ServiceGroupContext) valuse.next(); cleanupServiceContextes(serviceGroupContext); } } }