diff options
author | Gonzalo Paniagua Javier <gonzalo.mono@gmail.com> | 2005-07-01 02:23:12 +0400 |
---|---|---|
committer | Gonzalo Paniagua Javier <gonzalo.mono@gmail.com> | 2005-07-01 02:23:12 +0400 |
commit | 962d6a7045e63469fdbf0a7f6626a623e666aef6 (patch) | |
tree | e59c42c3aac0cb5128b4162f3870655136f26255 /mcs | |
parent | 926c733cfc734f97333be25cc5b89f1c00a510cf (diff) |
from head
svn path=/branches/mono-1-1-8/mcs/; revision=46801
Diffstat (limited to 'mcs')
5 files changed, 40 insertions, 2 deletions
diff --git a/mcs/class/System.Web/System.Web.SessionState/ChangeLog b/mcs/class/System.Web/System.Web.SessionState/ChangeLog index f9b520340f8..6f49a718a1f 100644 --- a/mcs/class/System.Web/System.Web.SessionState/ChangeLog +++ b/mcs/class/System.Web/System.Web.SessionState/ChangeLog @@ -1,3 +1,17 @@ +2005-06-25 Gonzalo Paniagua Javier <gonzalo@ximian.com> + + * SessionInProcHandler.cs: use cache.InsertPrivate. + * SessionDictionary.cs: fix typo that made Clone useless. + +2005-06-08 Ilya Kharmatsky <ilyak-at-mainsoft.com> + + * SessionStateMode.cs: Added TARGET_J2EE directive in order + to provide in J2EE configuration additional mode - J2EE + * SessionStateModule.cs: Added TARGET_JVM directives in order + to resolve unsupported in Ghrasshopper "static variables" issue + (When static variable are stored in general place, instead of + storing such variables per AppDomain). + 2005-05-27 Gonzalo Paniagua Javier <gonzalo@ximian.com> * RemoteStateServer.cs: diff --git a/mcs/class/System.Web/System.Web.SessionState/SessionDictionary.cs b/mcs/class/System.Web/System.Web.SessionState/SessionDictionary.cs index d1b193d90d5..c91b1e829d2 100644 --- a/mcs/class/System.Web/System.Web.SessionState/SessionDictionary.cs +++ b/mcs/class/System.Web/System.Web.SessionState/SessionDictionary.cs @@ -45,7 +45,7 @@ internal class SessionDictionary : NameObjectCollectionBase internal SessionDictionary Clone () { SessionDictionary sess = new SessionDictionary (); - int last = sess.Count; + int last = Count; for (int i = 0; i < last; i++) { string key = GetKey (i); sess [key] = this [key]; diff --git a/mcs/class/System.Web/System.Web.SessionState/SessionInProcHandler.cs b/mcs/class/System.Web/System.Web.SessionState/SessionInProcHandler.cs index 800a5ca70e2..7ec4887cb23 100644 --- a/mcs/class/System.Web/System.Web.SessionState/SessionInProcHandler.cs +++ b/mcs/class/System.Web/System.Web.SessionState/SessionInProcHandler.cs @@ -87,7 +87,7 @@ namespace System.Web.SessionState read_only); //readonly TimeSpan timeout = new TimeSpan (0, config.Timeout, 0); - cache.Insert ("@@@InProc@" + sessionID, state, null, DateTime.Now + timeout, + cache.InsertPrivate ("@@@InProc@" + sessionID, state, null, DateTime.Now + timeout, timeout, CacheItemPriority.AboveNormal, removedCB); isNew = true; diff --git a/mcs/class/System.Web/System.Web.SessionState/SessionStateMode.cs b/mcs/class/System.Web/System.Web.SessionState/SessionStateMode.cs index b76f1a5475b..fd10b66c9e0 100644 --- a/mcs/class/System.Web/System.Web.SessionState/SessionStateMode.cs +++ b/mcs/class/System.Web/System.Web.SessionState/SessionStateMode.cs @@ -35,6 +35,9 @@ public enum SessionStateMode InProc = 1, StateServer = 2, SQLServer = 3 +#if TARGET_J2EE + ,J2ee = 1024 +#endif } } diff --git a/mcs/class/System.Web/System.Web.SessionState/SessionStateModule.cs b/mcs/class/System.Web/System.Web.SessionState/SessionStateModule.cs index a15f1d03404..2829d74d5da 100644 --- a/mcs/class/System.Web/System.Web.SessionState/SessionStateModule.cs +++ b/mcs/class/System.Web/System.Web.SessionState/SessionStateModule.cs @@ -42,8 +42,27 @@ namespace System.Web.SessionState internal static readonly string CookieName = "ASPSESSION"; internal static readonly string HeaderName = "AspFilterSessionId"; +#if !TARGET_J2EE static SessionConfig config; static Type handlerType; +#else + static private SessionConfig config { + get { + return (SessionConfig)AppDomain.CurrentDomain.GetData("SessionStateModule.config"); + } + set { + AppDomain.CurrentDomain.SetData("SessionStateModule.config", value); + } + } + static private Type handlerType { + get { + return (Type)AppDomain.CurrentDomain.GetData("SessionStateModule.handlerType"); + } + set { + AppDomain.CurrentDomain.SetData("SessionStateModule.handlerType", value); + } + } +#endif ISessionHandler handler; bool sessionForStaticFiles; @@ -197,8 +216,10 @@ namespace System.Web.SessionState internal void OnEnd () { +#if !TARGET_J2EE if (End != null) End (this, EventArgs.Empty); +#endif } public event EventHandler Start; |