1 2006-09-03 Robert Jordan <robertj@gmx.net>
3 * SessionSQLServerHandler.cs: persist and handle the "timeout" and
4 "expire" properties of the session. Fixes bug #78281.
5 Patch by Boris Dores <babal@via.ecp.fr>.
7 2006-08-08 Vladimir Krasnov <vladimirk@mainsoft.com>
9 * SessionInProcHandler.jvm.cs:
10 * SessionStateModule.cs: added NET_2_0 parts into TARGET_J2EE
12 2006-07-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
14 * RemoteStateServer.cs: make it inmortal.
16 2006-07-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
18 * RemoteStateServer.cs: use a Cache instead of a Hashtable so that we
19 get sliding expiration for free.
20 * StateServerItem.cs: expose 'timeout' through a property.
22 2006-06-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
24 * SessionId.cs: make the length of the SessionID 24, as MS.
26 2006-04-19 Sebastien Pouliot <sebastien@ximian.com>
28 * SessionConfig.cs: Avoid a cast.
29 * SessionDictionary.cs: Remove unused internal methods.
30 * SessionId.cs: Const-ify internal/private values.
31 * SessionStateModule.cs: Const-ify internal/private values.
33 2006-03-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
35 * SessionSQLServerHandler.cs: if the connection to the DB is lost, retry
36 the select/update/insert/delete commands after reconnecting.
39 2006-03-04 Robert Jordan <robertj@gmx.net>
41 * SessionSQLServerHandler.cs: make SQL statements and parameters
42 provider independent/configurable.
43 * SessionSQLServerHandler.cs (SelectSession): properly dispose
44 the data reader. Fixes bug #77698.
46 2006-02-28 Chris Toshok <toshok@ximian.com>
48 * IStateRuntime.cs: wrap new interface method with NET_2_0.
50 2006-02-28 Chris Toshok <toshok@ximian.com>
52 * SessionStateActions.cs: oops, actually rename the enum, not just
55 2006-02-28 Chris Toshok <toshok@ximian.com>
57 * SessionStateActions.cs: rename SessionStateActionFlags to this.
59 * ISessionIDManager.cs: rename ISessionIDModule to this.
61 * IStateRuntime.cs: corcompare work.
63 2006-02-01 Chris Toshok <toshok@ximian.com>
65 * SessionStateServerHandler.cs: CONFIGURATION_2_0 => NET_2_0.
67 * SessionSQLServerHandler.cs: same.
69 * SessionStateModule.cs: same.
71 * ISessionHandler.cs: same.
73 * SessionInProcHandler.cs: same.
75 2006-01-18 Konstantin Triger <kostat@mainsoft.com>
77 * HttpSessionState.jvm.cs: correcting serialization conditions.
79 2006-01-09 Konstantin Triger <kostat@mainsoft.com>
81 * HttpSessionState.jvm.cs: merging HttpSessionState.cs@@/main/19-24
83 2005-11-28 Chris Toshok <toshok@ximian.com>
85 * SessionStateModule.cs: CONFIGURATION_2_0 work.
87 * SessionSQLServerHandler.cs: CONFIGURATION_2_0 work.
89 * SessionInProcHandler.cs: CONFIGURATION_2_0 work.
91 * SessionStateServerHandler.cs: CONFIGURATION_2_0 work.
93 * ISessionHandler.cs (Init): @config is a SessionStateSection if
96 2005-09-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
98 * SessionStateModule.cs: use the new funciton in HttpRequest.
100 2005-09-22 Jackson Harper <jackson@ximian.com>
102 * SessionStateModule.cs: Use a concat instead of a format (mucho
105 2005-09-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
107 * SessionStateModule.cs: fix compilation warnings and use the
108 application path for the cookie path. This is a temporary fix for 76172.
109 * SessionId.cs: don't access the cookie collection twice.
111 2005-09-09 Sebastien Pouliot <sebastien@ximian.com>
113 * HttpSessionState.cs: Added LinkDemand for Minimal.
114 * IHttpSessionState.cs: Renamed IsCookieLess to IsCookieless.
115 * ISessionStateItemCollection.cs: Added ICollection and IEnumerable.
116 * SessionStateMode.cs: Added Custom (2.0).
117 * SessionStateModule.cs: Use RandomNumberGenerator.Create to create
118 the RNG. Assert EnvironmentPermission to read MONO_XSP_STATIC_SESSION.
119 Added LinkDemand for Minimal.
120 * StateRuntime.cs: Added LinkDemand for Minimal, new ProcessRequest
121 override (2.0) and security attributes on methods.
123 2005-09-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
125 * SessionStateModule.cs: raise the Start event for new sessions.
127 2005-09-08 Eyal Alaluf <eyala@mainsoft.com>
128 * HttpSessionState.jvm.cs - fixed serialization when we want to serialize
131 2005-09-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
133 * SessionStateModule.cs: Only invoke the End event using the new method
134 in HttpApplicationFactory and when session state mode is InProc.
136 2005-09-01 Eyal Alaluf <eyala@mainsoft.com>
137 * SessionStateModule.cs: Under TARGET_J2EE we let the J2EE app server handle
138 session persistence, so we don't support SQL/Remoting session servers
139 at the ASP.Net level.
141 2005-08-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
143 * SessionStateModule.cs: added lock around 'config'.
144 * SessionInProcHandler.cs: when inserting in the the session in the
145 Cache, use sliding expiration only.
147 2005-08-15 Miguel de Icaza <miguel@novell.com>
149 * SessionStateModule.cs: Make this use the synch api as the module
150 was synchronous anyways
152 2005-06-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
154 * SessionInProcHandler.cs: use cache.InsertPrivate.
155 * SessionDictionary.cs: fix typo that made Clone useless.
157 2005-06-08 Ilya Kharmatsky <ilyak-at-mainsoft.com>
159 * SessionStateMode.cs: Added TARGET_J2EE directive in order
160 to provide in J2EE configuration additional mode - J2EE
161 * SessionStateModule.cs: Added TARGET_JVM directives in order
162 to resolve unsupported in Ghrasshopper "static variables" issue
163 (When static variable are stored in general place, instead of
164 storing such variables per AppDomain).
166 2005-05-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
168 * RemoteStateServer.cs:
169 * HttpSessionState.cs:
170 * SessionSQLServerHandler.cs:
171 * SessionInProcHandler.cs:
172 * SessionStateServerHandler.cs: remove abandoned sessions in the
173 ReleseRequest state. Fixes bug #75051.
175 2005-04-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
177 * SessionSQLServerHandler.cs:
178 * SessionStateServerHandler.cs: removed warnigs.
180 2005-03-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
182 * SessionStateModule.cs:
183 * SessionId.cs: share the same RNG for all the instances of
186 2005-02-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
188 * SessionStateModule.cs: hack that makes static files work on sites that
189 use the Session object in global.asax. You need to set
190 MONO_XSP_STATIC_SESSION to enable it and by dong so you will lose a bit
191 of performance when serving static files. Fixes bug #71133.
193 2004-11-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
195 * SessionStateModule.cs: set the path modifier when using cookie-less
198 2004-10-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
200 * SessionStateModule.cs: use SetCurrentExePath instead of SetFilePath.
202 2004-09-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
204 * HttpSessionState.cs: don't share static session objects declared in
205 the application file across the application, but on a per-session
206 basis. Fixes bug #65446.
208 2004-08-31 Sanjay Gupta <gsanjay@novell.com>
210 * SessionStateItemExpireCallback.cs: Explicit modifier "sealed" not
211 required in definition.
213 2004-08-09 Sanjay Gupta <gsanjay@novell.com>
215 * SessionStateItemExpireCallback.cs: Added delegate.
216 * SessionStateStoreData.cs: Added a new class.
218 2004-08-05 Sanjay Gupta <gsanjay@novell.com>
220 * IHttpSessionState.cs:
221 * ISessionIDModule.cs:
222 * ISessionStateItemCollection.cs: Added new interfaces.
224 2004-08-04 Sanjay Gupta <gsanjay@novell.com>
226 * SessionStateActionFlags.cs: Added enumeration.
228 2004-07-07 Juraj Skripsky <juraj@hotfeet.ch>
230 * SessionStateModule.cs: set path in session cookie to application
233 2004-06-18 Gert Driesen <drieseng@users.sourceforge.net>
235 * IStateRuntime.cs: added missing marshalling attributes
237 2004-06-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
239 * SessionSQLServerHandler.cs:
240 * SessionStateServerHandler.cs:
241 * ISessionHandler.cs: added new parameter to Init.
243 * SessionInProcHandler.cs: use the HttpRuntime cache to store the
244 sessions and handle expiration.
246 * SessionStateModule.cs: added OnSessionRemoved internal method that is
247 called whenever a session expires or is removed.
249 2004-05-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
251 * HttpSessionState.cs: added Clone (), which makes and exact copy but
252 with a cloned SessionDictionary. When EnableSessionState is set to
253 ReadOnly, we can modify the collection, but changes are not propagated.
255 * ISessionHandler.cs: changed signature of UpdateContext().
257 * SessionDictionary.cs: added Clone.
259 * SessionInProcHandler.cs:
260 * SessionSQLServerHandler.cs:
261 * SessionStateServerHandler.cs: don't create a new session if the
262 handler do not require it. UpdateContext() now returns an
263 HttpSessionState to the module.
265 * SessionStateModule.cs: removed IsReadOnly as it is now passed as a
266 parameter to the session handler. If the session is read-only, clone
267 it so that it can be changed but changes are not kept.
269 In short, we don't create session objects when not required and we
270 honor the ReadOnly sessions.
272 2004-02-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
274 * SessionInProcHandler.cs:
275 * SessionSQLServerHandler.cs:
276 * SessionStateServerHandler.cs: when creating the
277 HttpSessionStateObjets, use the session objects that we know about
278 in HttpApplicationFactory.
280 2004-01-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
282 * HttpSessionState.cs:
283 * SessionInProcHandler.cs: IsNewSession doesn't have a public setter.
285 * SessionStateModule.cs: doesn't implement IRequiresSessionState.
286 * StateServerItem.cs: not public.
288 2004-01-05 Alon Gazit <along@mainsoft.com>
290 * SessionDictionary.cs: can't set item's value to null if the item is
293 2003-12-25 Jackson Harper <jackson@ximian.com>
295 * SessionStateModule.cs: Handle SessionStateMode.Off properly in
296 Init. Only set session cookies if a new session is created. This
299 2003-12-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
302 * SessionStateModule.cs: class status based fixes.
304 2003-12-05 Jackson Harper <jackson@ximian.com>
306 * SessionStateModule.cs: Add readonly property for readonly
307 sessions. This fixes bug #51647.
308 * SessionInProcHandler.cs:
309 * SessionSQLServerHandler.cs:
310 * SessionStateServerHandler.cs: Cleanup params for
311 HttpSessionState ctor. Make sure to always set is new, cookieless,
312 and readonly properly.
314 2003-12-03 Jackson Harper <jackson@ximian.com>
316 * SessionStateModule.cs: If using cookieless sessions add an
317 onbegin request handler that parsers out session ids and rewrites
318 the path. Also redirect to a url with an embedded session id if we
319 are creating a new cookieless session.
320 * SesionInProcHandler.cs:
321 * SessionSQLServerHandler.cs:
322 * SessionStateServerHandler.cs: Use SessionId::Lookup to lookup session
323 ids, don't set the session id cookie anymore. That is handled by
324 the SessionStateModule.
325 * SessionId.cs: Add method for looking up session ids, add some constants.
327 2003-11-26 Jackson Harper <jackson@ximian.com>
329 * SessionSQLServerHandler.cs: Fix typo in param name.
331 2003-11-25 Jackson Harper <jackson@ximian.com>
333 * RemoteStateServer.cs: Update the session dictionary data and the
335 * SessionDictionary.cs: Remove type serialization methods, these
336 have been moved to a utility class. Add convenience methods for
337 converting to/from byte arrays.
338 * SessionSQLServerHandler.cs:
339 * SessionStateServerHandler.cs: Save/Restore static objects. Use new
340 to/from byte array methods.
341 * StateServerItem.cs: Hold static objects data.
343 2003-11-24 Jackson Harper <jackson@ximian.com>
345 * SessionStateServerHandler.cs: Parse connection string. Need to
346 look into what MS allows/doesn't allow better.
348 2003-11-24 Jackson Harper <jackson@ximian.com>
350 * RemoteStateServer.cs: The state server object that will reside
351 on the server and store session data and ids.
352 * StateServerItem.cs: Container for session data.
353 * SessionStateServerHandler.cs: Handler that communicates with the
354 StateServer so sessions can be stored out of process.
355 * SessionStateModule.cs: Allow state server mode.
357 2003-11-13 Jackson Harper <jackson@ximian.com>
359 * SessionInProcHandler.cs: Use AppDomain.SetData so data is
360 available across all threads. Set the path of session id
361 cookies. Patch by Mohammad DAMT. Fixes bug #50922.
363 2003-11-06 Jackson Harper <jackson@ximian.com>
365 * ISessionHandler.cs: Pass the SessionStateModule to handlers when
367 * SessionSqlServerHandler.cs:
368 * SessionInProcHandler.cs: Accept SessionStateModule when
369 updating. Use new SessionId.Create method for creating session
371 * SessionStateModule.cs: Add a random number generator that will
372 be used for creating session ids. Pass this to handlers when
374 * SessionId.cs: New class for creating session ids.
376 2003-11-03 Jackson Harper <jackson@ximian.com>
378 * HttpSessionState.cs (CopyTo): Copy values not keys. Patch by Yaron Shkop.
380 2003-11-03 Jackson Harper <jackson@ximian.com>
382 * HttpSessionState.cs: Make the SessionDictionary accessable
383 * ISessionHandler.cs: Add method to update the session state
384 data in the handler. Pass the session config to handlers when
386 * SessionConfig.cs: Add StateNetworkTimeout
387 * SessionInProcHandler.cs: Updates because interface has
388 changed, all functionality is the same.
389 * SessionStateModule.cs: Get new config items, allow SQLServer
390 session manager type. Update session handlers when the session
391 state has been released.
392 * SessionStateSectionHandler.cs: Add StateNetworkTimeout
393 * SessionSQLServerHandler.cs: New class allows sessions to be
394 stored in a database.
396 2003-10-28 Jackson Harper <jackson@ximian.com>
398 * HttpSessionState.cs: Do not allow timeout to be set to less then
401 2003-10-28 Jackson Harper <jackson@ximian.com>
403 * SessionInProcHandler.cs: Compute timeouts
404 correctly. DateTime.Milliseconds is the just the milliseconds part
405 of the time, it is not the entire time as milliseconds.
407 2003-10-13 Ben Maurer <bmaurer@users.sourceforge.net>
409 * SessionStateModule.cs: prevent Context.State from being null if
410 the module is inited in another HttpApplication. Fixes #49569.
412 2003-07-30 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
414 * IStateRuntime.cs: New interface class
415 * StateRuntime.cs: New class - stubbed out
417 2003-07-17 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
419 * SessionInProcHandler.cs: Made these internal to fix signature and building CLS-compliant
421 2003-07-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
423 * SessionDictionary.cs: locking.
425 * SessionInProcHandler.cs: use the new method instead of the setter.
427 2003-07-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
429 * ISessionHandler.cs:
430 * SessionInProcHandler.cs:
431 * SessionStateModule.cs: UpdateContext returns a bool indicating if we
432 started a new session. Only call session start event if that is true.
434 2003-05-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
436 * SessionStateModule.cs: fire application start and session start/end
439 2003-03-31 Stefan Görling <stefan@gorling.se>
441 * HttpSessionState.cs:
442 * ISessionHandler.cs:
443 * SessionInProcHandler.cs:
444 * SessionStateModule.cs: initial implementation of InProc session.
446 2003-03-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
448 * HttpSessionState.cs: implemented CodePage.
450 * SessionStateModule.cs: initial stuff to make it work.
452 2003-03-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
454 * HttpSessionState.cs: reworked to use SessionDictionary.
455 * SessionDictionary.cs: implemented serialization/deserialization.
457 2003-03-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
460 * SessionStateSectionHandler.cs: new files to read <sessionState>
463 2002-10-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
465 * SessionStateModule.cs: don't throw exception. Just for testing the
466 configuration stuff until we implement this.
468 2002-08-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
470 * HttpSessionState.cs: IsAbandoned is internal.
471 * SessionDictionary.cs: scope fixes.
472 * SessionStateModule.cs: added events.
474 2002-06-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
476 * System.Web.SessionState/HttpSessionState.cs:
477 Fixes based on class status page:
479 - Add attributes (DefaultEvent, ParseChildren).
481 - Explicitly implement some interfaces (IPostBackDataHandler
482 and IPostBackEventHandler).
483 - Implemented some missing methods.
485 2002-06-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
487 * HttpSessionState.cs: implemented more methods/properties.
488 * SessionDictionary.cs: New file.
490 2002-06-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
492 * System.Web.SessionState/HttpSessionState.cs:
493 * System.Web.SessionState/SessionStateModule.cs: new files with some
494 implementation and the rest stubbed.
496 2002-06-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
498 * IReadOnlySessionState.cs:
499 * IRequiresSessionState.cs:
500 * SessionStateMode.cs: new files.