1 5 6 package org.exoplatform.services.portletcontainer.impl.portletAPIImp.pool; 7 8 import org.apache.commons.pool.BasePoolableObjectFactory; 9 import org.exoplatform.services.portletcontainer.impl.portletAPIImp.*; 10 import org.exoplatform.services.portletcontainer.impl.portletAPIImp.helpers.*; 11 12 18 19 public class PortletObjectsWrapperFactory extends BasePoolableObjectFactory{ 20 21 private static PortletObjectsWrapperFactory ourInstance = new PortletObjectsWrapperFactory(); 22 23 public static PortletObjectsWrapperFactory getInstance() { 24 return ourInstance; 25 } 26 27 public PortletObjectsWrapper createObject(){ 28 PortletObjectsWrapper portletObjectsWrapper = new PortletObjectsWrapper(); 29 portletObjectsWrapper.setActionRequest(new ActionRequestImp(new EmptyRequest())); 30 portletObjectsWrapper.setActionResponse(new ActionResponseImp(new EmptyResponse())); 31 portletObjectsWrapper.setCustomRequestWrapper(new CustomRequestWrapper(new EmptyRequest())); 32 portletObjectsWrapper.setCustomResponseWrapper(new CustomResponseWrapper(new EmptyResponse())); 33 portletObjectsWrapper.setRenderRequest(new RenderRequestImp(new EmptyRequest())); 34 portletObjectsWrapper.setRenderResponse(new RenderResponseImp(new EmptyResponse())); 35 portletObjectsWrapper.setPortletSession(new PortletSessionImp()); 36 portletObjectsWrapper.setSharedSessionWrapper(new SharedSessionWrapper(new EmptySession())); 37 return portletObjectsWrapper; 38 } 39 40 public Object makeObject() throws Exception { 41 return createObject(); 42 } 43 44 public void passivateObject(Object o) throws Exception { 45 PortletObjectsWrapper portletObjectsWrapper = (PortletObjectsWrapper) o; 46 ((ActionRequestImp)portletObjectsWrapper.getActionRequest()). 47 emptyActionRequest(); 48 ((ActionResponseImp) portletObjectsWrapper.getActionResponse()). 49 emptyActionResponse(); 50 portletObjectsWrapper.getCustomRequestWrapper().emptyCustomRequestWrapper(); 51 portletObjectsWrapper.getCustomResponseWrapper().emptyResponseWrapper(); 52 ((RenderRequestImp)portletObjectsWrapper.getRenderRequest()).emptyRenderRequest(); 53 ((RenderResponseImp)portletObjectsWrapper.getRenderResponse()).emptyPortletResponse(); 54 ((RenderResponseImp)portletObjectsWrapper.getRenderResponse()).emptyPortletResponse(); 55 portletObjectsWrapper.getSharedSessionWrapper().emptySharedSessionWrapper(); 56 } 57 58 } | Popular Tags |