projects
/
mono.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
move RenderKitFactory to the base
[mono.git]
/
mcs
/
class
/
Mainsoft.Web
/
Mainsoft.Web.Hosting
/
BaseFacesStateManager.cs
diff --git
a/mcs/class/Mainsoft.Web/Mainsoft.Web.Hosting/BaseFacesStateManager.cs
b/mcs/class/Mainsoft.Web/Mainsoft.Web.Hosting/BaseFacesStateManager.cs
index 07c917daa3906f550e26c812363276cd09bfb3a2..f916f72128fd8f688f67bce8c847024dfc44d470 100644
(file)
--- a/
mcs/class/Mainsoft.Web/Mainsoft.Web.Hosting/BaseFacesStateManager.cs
+++ b/
mcs/class/Mainsoft.Web/Mainsoft.Web.Hosting/BaseFacesStateManager.cs
@@
-4,11
+4,18
@@
using System.Text;
using javax.faces.application;
\r
using javax.faces.component;
\r
using javax.faces.context;
\r
using javax.faces.application;
\r
using javax.faces.component;
\r
using javax.faces.context;
\r
+using System.Diagnostics;
\r
+using System.Web.UI;
\r
+using javax.faces.render;
\r
+using javax.faces;
\r
\r
namespace Mainsoft.Web.Hosting
\r
{
\r
public abstract class BaseFacesStateManager : StateManager
\r
{
\r
\r
namespace Mainsoft.Web.Hosting
\r
{
\r
public abstract class BaseFacesStateManager : StateManager
\r
{
\r
+ protected static readonly string VIEWSTATE = "__VIEWSTATE";
\r
+ protected static readonly RenderKitFactory RenderKitFactory = (RenderKitFactory) FactoryFinder.getFactory (FactoryFinder.RENDER_KIT_FACTORY);
\r
+
\r
public override StateManager.SerializedView saveSerializedView (FacesContext facesContext) {
\r
Object treeStruct = getTreeStructureToSave (facesContext);
\r
Object compStates = getComponentStateToSave (facesContext);
\r
public override StateManager.SerializedView saveSerializedView (FacesContext facesContext) {
\r
Object treeStruct = getTreeStructureToSave (facesContext);
\r
Object compStates = getComponentStateToSave (facesContext);
\r
@@
-16,7
+23,7
@@
namespace Mainsoft.Web.Hosting
return serializedView;
\r
}
\r
\r
return serializedView;
\r
}
\r
\r
- protected override Object getTreeStructureToSave (FacesContext facesContext) {
\r
+ protected override
sealed
Object getTreeStructureToSave (FacesContext facesContext) {
\r
return null;
\r
}
\r
\r
return null;
\r
}
\r
\r
@@
-25,28
+32,29
@@
namespace Mainsoft.Web.Hosting
String renderKitId) {
\r
\r
UIViewRoot uiViewRoot = restoreTreeStructure (facesContext, viewId, renderKitId);
\r
String renderKitId) {
\r
\r
UIViewRoot uiViewRoot = restoreTreeStructure (facesContext, viewId, renderKitId);
\r
- if (uiViewRoot != null) {
\r
- uiViewRoot.setViewId (viewId);
\r
+ Page page = (Page) uiViewRoot.getChildren ().get (0);
\r
+ if (page.IsPostBack || page.IsCallback)
\r
restoreComponentState (facesContext, uiViewRoot, renderKitId);
\r
restoreComponentState (facesContext, uiViewRoot, renderKitId);
\r
- String restoredViewId = uiViewRoot.getViewId ();
\r
- if (restoredViewId == null || !(restoredViewId.Equals (viewId))) {
\r
- return null;
\r
- }
\r
- }
\r
+ else
\r
+ facesContext.renderResponse ();
\r
return uiViewRoot;
\r
}
\r
\r
return uiViewRoot;
\r
}
\r
\r
+ protected override sealed UIViewRoot restoreTreeStructure (FacesContext facesContext, string viewId, string renderKitId) {
\r
+ return facesContext.getApplication ().getViewHandler ().createView (facesContext, viewId);
\r
+ }
\r
+
\r
protected override Object getComponentStateToSave (FacesContext facesContext) {
\r
protected override Object getComponentStateToSave (FacesContext facesContext) {
\r
-
Consol
e.WriteLine ("Entering getComponentStateToSave");
\r
+
Trac
e.WriteLine ("Entering getComponentStateToSave");
\r
\r
UIViewRoot viewRoot = facesContext.getViewRoot ();
\r
if (viewRoot.isTransient ()) {
\r
return null;
\r
}
\r
\r
\r
UIViewRoot viewRoot = facesContext.getViewRoot ();
\r
if (viewRoot.isTransient ()) {
\r
return null;
\r
}
\r
\r
- Object serializedComponentStates =
viewRoot
.processSaveState (facesContext);
\r
+ Object serializedComponentStates =
((UIComponent) viewRoot.getChildren ().get (0))
.processSaveState (facesContext);
\r
//Locale is a state attribute of UIViewRoot and need not be saved explicitly
\r
//Locale is a state attribute of UIViewRoot and need not be saved explicitly
\r
-
Consol
e.WriteLine ("Exiting getComponentStateToSave");
\r
+
Trac
e.WriteLine ("Exiting getComponentStateToSave");
\r
return serializedComponentStates;
\r
}
\r
}
\r
return serializedComponentStates;
\r
}
\r
}
\r