refactoring:
authorIgor Zelmanovich <igorz@mono-cvs.ximian.com>
Wed, 20 Feb 2008 08:48:30 +0000 (08:48 -0000)
committerIgor Zelmanovich <igorz@mono-cvs.ximian.com>
Wed, 20 Feb 2008 08:48:30 +0000 (08:48 -0000)
extract SaveStateInClient and GetStateFromClient to base class

svn path=/branches/mainsoft/gh2.2/mcs/; revision=96226

mcs/class/Mainsoft.Web/Mainsoft.Web.Hosting/BaseFacesStateManager.cs
mcs/class/Mainsoft.Web/Mainsoft.Web.Hosting/ServletFacesStateManager.cs

index a4cc9a69a4152a2cd2d112bbb42fd4f27eb758c9..628c0ce75cc1812af103035005087d6941b858b9 100644 (file)
@@ -57,5 +57,20 @@ namespace Mainsoft.Web.Hosting
                        Trace.WriteLine ("Exiting getComponentStateToSave");\r
                        return serializedComponentStates;\r
                }\r
+\r
+               protected void SaveStateInClient (FacesContext facesContext, StateManager.SerializedView serializedView) {\r
+                       UIViewRoot uiViewRoot = facesContext.getViewRoot ();\r
+                       //save state in response (client-side: full state; server-side: sequence)\r
+                       RenderKit renderKit = RenderKitFactory.getRenderKit (facesContext, uiViewRoot.getRenderKitId ());\r
+                       // not us.\r
+                       renderKit.getResponseStateManager ().writeState (facesContext, serializedView);\r
+               }\r
+\r
+               protected object GetStateFromClient (FacesContext facesContext, javax.faces.component.UIViewRoot uiViewRoot, String renderKitId) {\r
+                       RenderKit renderKit = RenderKitFactory.getRenderKit (facesContext, renderKitId);\r
+                       ResponseStateManager responseStateManager = renderKit.getResponseStateManager ();\r
+                       responseStateManager.getTreeStructureToRestore (facesContext, uiViewRoot.getViewId ()); //ignore result. Must call for compatibility with sun implementation.\r
+                       return responseStateManager.getComponentStateToRestore (facesContext);\r
+               }\r
        }\r
 }\r
index 807021a80c1ba95a55afb400f499172ad91528af..475310b9a6f6ad346f3dcd8335dca4d06c6c75ba 100644 (file)
@@ -23,11 +23,7 @@ namespace Mainsoft.Web.Hosting
 \r
                        if (serializedView != null) {\r
                                if (isSavingStateInClient (facesContext)) {\r
-                                       UIViewRoot uiViewRoot = facesContext.getViewRoot ();\r
-                                       //save state in response (client-side: full state; server-side: sequence)\r
-                                       RenderKit renderKit = RenderKitFactory.getRenderKit (facesContext, uiViewRoot.getRenderKitId ());\r
-                                       // not us.\r
-                                       renderKit.getResponseStateManager ().writeState (facesContext, serializedView);\r
+                                       SaveStateInClient (facesContext, serializedView);\r
                                }\r
                                else {\r
                                        HttpSession session = (HttpSession) facesContext.getExternalContext ().getSession (true);\r
@@ -47,10 +43,7 @@ namespace Mainsoft.Web.Hosting
 \r
                        Object serializedComponentStates;\r
                        if (isSavingStateInClient (facesContext)) {\r
-                               RenderKit renderKit = RenderKitFactory.getRenderKit (facesContext, renderKitId);\r
-                               ResponseStateManager responseStateManager = renderKit.getResponseStateManager ();\r
-                               responseStateManager.getTreeStructureToRestore (facesContext, uiViewRoot.getViewId ()); //ignore result. Must call for compatibility with sun implementation.\r
-                               serializedComponentStates = responseStateManager.getComponentStateToRestore (facesContext);\r
+                               serializedComponentStates = GetStateFromClient (facesContext, uiViewRoot, renderKitId);\r
                        }\r
                        else {\r
                                HttpSession session = (HttpSession) facesContext.getExternalContext ().getSession (false);\r