Author: igorz Date: 2008-02-20 03:48:30 -0500 (Wed, 20 Feb 2008) New Revision: 96226
Modified: branches/mainsoft/gh2.2/mcs/class/Mainsoft.Web/Mainsoft.Web.Hosting/BaseFacesStateManager.cs branches/mainsoft/gh2.2/mcs/class/Mainsoft.Web/Mainsoft.Web.Hosting/ServletFacesStateManager.cs Log: refactoring: extract SaveStateInClient and GetStateFromClient to base class Modified: branches/mainsoft/gh2.2/mcs/class/Mainsoft.Web/Mainsoft.Web.Hosting/BaseFacesStateManager.cs =================================================================== --- branches/mainsoft/gh2.2/mcs/class/Mainsoft.Web/Mainsoft.Web.Hosting/BaseFacesStateManager.cs 2008-02-20 08:22:24 UTC (rev 96225) +++ branches/mainsoft/gh2.2/mcs/class/Mainsoft.Web/Mainsoft.Web.Hosting/BaseFacesStateManager.cs 2008-02-20 08:48:30 UTC (rev 96226) @@ -57,5 +57,20 @@ Trace.WriteLine ("Exiting getComponentStateToSave"); return serializedComponentStates; } + + protected void SaveStateInClient (FacesContext facesContext, StateManager.SerializedView serializedView) { + UIViewRoot uiViewRoot = facesContext.getViewRoot (); + //save state in response (client-side: full state; server-side: sequence) + RenderKit renderKit = RenderKitFactory.getRenderKit (facesContext, uiViewRoot.getRenderKitId ()); + // not us. + renderKit.getResponseStateManager ().writeState (facesContext, serializedView); + } + + protected object GetStateFromClient (FacesContext facesContext, javax.faces.component.UIViewRoot uiViewRoot, String renderKitId) { + RenderKit renderKit = RenderKitFactory.getRenderKit (facesContext, renderKitId); + ResponseStateManager responseStateManager = renderKit.getResponseStateManager (); + responseStateManager.getTreeStructureToRestore (facesContext, uiViewRoot.getViewId ()); //ignore result. Must call for compatibility with sun implementation. + return responseStateManager.getComponentStateToRestore (facesContext); + } } } Modified: branches/mainsoft/gh2.2/mcs/class/Mainsoft.Web/Mainsoft.Web.Hosting/ServletFacesStateManager.cs =================================================================== --- branches/mainsoft/gh2.2/mcs/class/Mainsoft.Web/Mainsoft.Web.Hosting/ServletFacesStateManager.cs 2008-02-20 08:22:24 UTC (rev 96225) +++ branches/mainsoft/gh2.2/mcs/class/Mainsoft.Web/Mainsoft.Web.Hosting/ServletFacesStateManager.cs 2008-02-20 08:48:30 UTC (rev 96226) @@ -23,11 +23,7 @@ if (serializedView != null) { if (isSavingStateInClient (facesContext)) { - UIViewRoot uiViewRoot = facesContext.getViewRoot (); - //save state in response (client-side: full state; server-side: sequence) - RenderKit renderKit = RenderKitFactory.getRenderKit (facesContext, uiViewRoot.getRenderKitId ()); - // not us. - renderKit.getResponseStateManager ().writeState (facesContext, serializedView); + SaveStateInClient (facesContext, serializedView); } else { HttpSession session = (HttpSession) facesContext.getExternalContext ().getSession (true); @@ -47,10 +43,7 @@ Object serializedComponentStates; if (isSavingStateInClient (facesContext)) { - RenderKit renderKit = RenderKitFactory.getRenderKit (facesContext, renderKitId); - ResponseStateManager responseStateManager = renderKit.getResponseStateManager (); - responseStateManager.getTreeStructureToRestore (facesContext, uiViewRoot.getViewId ()); //ignore result. Must call for compatibility with sun implementation. - serializedComponentStates = responseStateManager.getComponentStateToRestore (facesContext); + serializedComponentStates = GetStateFromClient (facesContext, uiViewRoot, renderKitId); } else { HttpSession session = (HttpSession) facesContext.getExternalContext ().getSession (false); _______________________________________________ Mono-patches maillist - Mono-patches@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-patches