1 2006-07-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3 * RemoteStateServer.cs: use a Cache instead of a Hashtable so that we
4 get sliding expiration for free.
5 * StateServerItem.cs: expose 'timeout' through a property.
7 2006-06-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
9 * SessionId.cs: make the length of the SessionID 24, as MS.
11 2006-04-19 Sebastien Pouliot <sebastien@ximian.com>
13 * SessionConfig.cs: Avoid a cast.
14 * SessionDictionary.cs: Remove unused internal methods.
15 * SessionId.cs: Const-ify internal/private values.
16 * SessionStateModule.cs: Const-ify internal/private values.
18 2006-03-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
20 * SessionSQLServerHandler.cs: if the connection to the DB is lost, retry
21 the select/update/insert/delete commands after reconnecting.
24 2006-03-04 Robert Jordan <robertj@gmx.net>
26 * SessionSQLServerHandler.cs: make SQL statements and parameters
27 provider independent/configurable.
28 * SessionSQLServerHandler.cs (SelectSession): properly dispose
29 the data reader. Fixes bug #77698.
31 2006-02-28 Chris Toshok <toshok@ximian.com>
33 * IStateRuntime.cs: wrap new interface method with NET_2_0.
35 2006-02-28 Chris Toshok <toshok@ximian.com>
37 * SessionStateActions.cs: oops, actually rename the enum, not just
40 2006-02-28 Chris Toshok <toshok@ximian.com>
42 * SessionStateActions.cs: rename SessionStateActionFlags to this.
44 * ISessionIDManager.cs: rename ISessionIDModule to this.
46 * IStateRuntime.cs: corcompare work.
48 2006-02-01 Chris Toshok <toshok@ximian.com>
50 * SessionStateServerHandler.cs: CONFIGURATION_2_0 => NET_2_0.
52 * SessionSQLServerHandler.cs: same.
54 * SessionStateModule.cs: same.
56 * ISessionHandler.cs: same.
58 * SessionInProcHandler.cs: same.
60 2006-01-18 Konstantin Triger <kostat@mainsoft.com>
62 * HttpSessionState.jvm.cs: correcting serialization conditions.
64 2006-01-09 Konstantin Triger <kostat@mainsoft.com>
66 * HttpSessionState.jvm.cs: merging HttpSessionState.cs@@/main/19-24
68 2005-11-28 Chris Toshok <toshok@ximian.com>
70 * SessionStateModule.cs: CONFIGURATION_2_0 work.
72 * SessionSQLServerHandler.cs: CONFIGURATION_2_0 work.
74 * SessionInProcHandler.cs: CONFIGURATION_2_0 work.
76 * SessionStateServerHandler.cs: CONFIGURATION_2_0 work.
78 * ISessionHandler.cs (Init): @config is a SessionStateSection if
81 2005-09-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
83 * SessionStateModule.cs: use the new funciton in HttpRequest.
85 2005-09-22 Jackson Harper <jackson@ximian.com>
87 * SessionStateModule.cs: Use a concat instead of a format (mucho
90 2005-09-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
92 * SessionStateModule.cs: fix compilation warnings and use the
93 application path for the cookie path. This is a temporary fix for 76172.
94 * SessionId.cs: don't access the cookie collection twice.
96 2005-09-09 Sebastien Pouliot <sebastien@ximian.com>
98 * HttpSessionState.cs: Added LinkDemand for Minimal.
99 * IHttpSessionState.cs: Renamed IsCookieLess to IsCookieless.
100 * ISessionStateItemCollection.cs: Added ICollection and IEnumerable.
101 * SessionStateMode.cs: Added Custom (2.0).
102 * SessionStateModule.cs: Use RandomNumberGenerator.Create to create
103 the RNG. Assert EnvironmentPermission to read MONO_XSP_STATIC_SESSION.
104 Added LinkDemand for Minimal.
105 * StateRuntime.cs: Added LinkDemand for Minimal, new ProcessRequest
106 override (2.0) and security attributes on methods.
108 2005-09-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
110 * SessionStateModule.cs: raise the Start event for new sessions.
112 2005-09-08 Eyal Alaluf <eyala@mainsoft.com>
113 * HttpSessionState.jvm.cs - fixed serialization when we want to serialize
116 2005-09-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
118 * SessionStateModule.cs: Only invoke the End event using the new method
119 in HttpApplicationFactory and when session state mode is InProc.
121 2005-09-01 Eyal Alaluf <eyala@mainsoft.com>
122 * SessionStateModule.cs: Under TARGET_J2EE we let the J2EE app server handle
123 session persistence, so we don't support SQL/Remoting session servers
124 at the ASP.Net level.
126 2005-08-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
128 * SessionStateModule.cs: added lock around 'config'.
129 * SessionInProcHandler.cs: when inserting in the the session in the
130 Cache, use sliding expiration only.
132 2005-08-15 Miguel de Icaza <miguel@novell.com>
134 * SessionStateModule.cs: Make this use the synch api as the module
135 was synchronous anyways
137 2005-06-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
139 * SessionInProcHandler.cs: use cache.InsertPrivate.
140 * SessionDictionary.cs: fix typo that made Clone useless.
142 2005-06-08 Ilya Kharmatsky <ilyak-at-mainsoft.com>
144 * SessionStateMode.cs: Added TARGET_J2EE directive in order
145 to provide in J2EE configuration additional mode - J2EE
146 * SessionStateModule.cs: Added TARGET_JVM directives in order
147 to resolve unsupported in Ghrasshopper "static variables" issue
148 (When static variable are stored in general place, instead of
149 storing such variables per AppDomain).
151 2005-05-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
153 * RemoteStateServer.cs:
154 * HttpSessionState.cs:
155 * SessionSQLServerHandler.cs:
156 * SessionInProcHandler.cs:
157 * SessionStateServerHandler.cs: remove abandoned sessions in the
158 ReleseRequest state. Fixes bug #75051.
160 2005-04-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
162 * SessionSQLServerHandler.cs:
163 * SessionStateServerHandler.cs: removed warnigs.
165 2005-03-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
167 * SessionStateModule.cs:
168 * SessionId.cs: share the same RNG for all the instances of
171 2005-02-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
173 * SessionStateModule.cs: hack that makes static files work on sites that
174 use the Session object in global.asax. You need to set
175 MONO_XSP_STATIC_SESSION to enable it and by dong so you will lose a bit
176 of performance when serving static files. Fixes bug #71133.
178 2004-11-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
180 * SessionStateModule.cs: set the path modifier when using cookie-less
183 2004-10-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
185 * SessionStateModule.cs: use SetCurrentExePath instead of SetFilePath.
187 2004-09-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
189 * HttpSessionState.cs: don't share static session objects declared in
190 the application file across the application, but on a per-session
191 basis. Fixes bug #65446.
193 2004-08-31 Sanjay Gupta <gsanjay@novell.com>
195 * SessionStateItemExpireCallback.cs: Explicit modifier "sealed" not
196 required in definition.
198 2004-08-09 Sanjay Gupta <gsanjay@novell.com>
200 * SessionStateItemExpireCallback.cs: Added delegate.
201 * SessionStateStoreData.cs: Added a new class.
203 2004-08-05 Sanjay Gupta <gsanjay@novell.com>
205 * IHttpSessionState.cs:
206 * ISessionIDModule.cs:
207 * ISessionStateItemCollection.cs: Added new interfaces.
209 2004-08-04 Sanjay Gupta <gsanjay@novell.com>
211 * SessionStateActionFlags.cs: Added enumeration.
213 2004-07-07 Juraj Skripsky <juraj@hotfeet.ch>
215 * SessionStateModule.cs: set path in session cookie to application
218 2004-06-18 Gert Driesen <drieseng@users.sourceforge.net>
220 * IStateRuntime.cs: added missing marshalling attributes
222 2004-06-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
224 * SessionSQLServerHandler.cs:
225 * SessionStateServerHandler.cs:
226 * ISessionHandler.cs: added new parameter to Init.
228 * SessionInProcHandler.cs: use the HttpRuntime cache to store the
229 sessions and handle expiration.
231 * SessionStateModule.cs: added OnSessionRemoved internal method that is
232 called whenever a session expires or is removed.
234 2004-05-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
236 * HttpSessionState.cs: added Clone (), which makes and exact copy but
237 with a cloned SessionDictionary. When EnableSessionState is set to
238 ReadOnly, we can modify the collection, but changes are not propagated.
240 * ISessionHandler.cs: changed signature of UpdateContext().
242 * SessionDictionary.cs: added Clone.
244 * SessionInProcHandler.cs:
245 * SessionSQLServerHandler.cs:
246 * SessionStateServerHandler.cs: don't create a new session if the
247 handler do not require it. UpdateContext() now returns an
248 HttpSessionState to the module.
250 * SessionStateModule.cs: removed IsReadOnly as it is now passed as a
251 parameter to the session handler. If the session is read-only, clone
252 it so that it can be changed but changes are not kept.
254 In short, we don't create session objects when not required and we
255 honor the ReadOnly sessions.
257 2004-02-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
259 * SessionInProcHandler.cs:
260 * SessionSQLServerHandler.cs:
261 * SessionStateServerHandler.cs: when creating the
262 HttpSessionStateObjets, use the session objects that we know about
263 in HttpApplicationFactory.
265 2004-01-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
267 * HttpSessionState.cs:
268 * SessionInProcHandler.cs: IsNewSession doesn't have a public setter.
270 * SessionStateModule.cs: doesn't implement IRequiresSessionState.
271 * StateServerItem.cs: not public.
273 2004-01-05 Alon Gazit <along@mainsoft.com>
275 * SessionDictionary.cs: can't set item's value to null if the item is
278 2003-12-25 Jackson Harper <jackson@ximian.com>
280 * SessionStateModule.cs: Handle SessionStateMode.Off properly in
281 Init. Only set session cookies if a new session is created. This
284 2003-12-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
287 * SessionStateModule.cs: class status based fixes.
289 2003-12-05 Jackson Harper <jackson@ximian.com>
291 * SessionStateModule.cs: Add readonly property for readonly
292 sessions. This fixes bug #51647.
293 * SessionInProcHandler.cs:
294 * SessionSQLServerHandler.cs:
295 * SessionStateServerHandler.cs: Cleanup params for
296 HttpSessionState ctor. Make sure to always set is new, cookieless,
297 and readonly properly.
299 2003-12-03 Jackson Harper <jackson@ximian.com>
301 * SessionStateModule.cs: If using cookieless sessions add an
302 onbegin request handler that parsers out session ids and rewrites
303 the path. Also redirect to a url with an embedded session id if we
304 are creating a new cookieless session.
305 * SesionInProcHandler.cs:
306 * SessionSQLServerHandler.cs:
307 * SessionStateServerHandler.cs: Use SessionId::Lookup to lookup session
308 ids, don't set the session id cookie anymore. That is handled by
309 the SessionStateModule.
310 * SessionId.cs: Add method for looking up session ids, add some constants.
312 2003-11-26 Jackson Harper <jackson@ximian.com>
314 * SessionSQLServerHandler.cs: Fix typo in param name.
316 2003-11-25 Jackson Harper <jackson@ximian.com>
318 * RemoteStateServer.cs: Update the session dictionary data and the
320 * SessionDictionary.cs: Remove type serialization methods, these
321 have been moved to a utility class. Add convenience methods for
322 converting to/from byte arrays.
323 * SessionSQLServerHandler.cs:
324 * SessionStateServerHandler.cs: Save/Restore static objects. Use new
325 to/from byte array methods.
326 * StateServerItem.cs: Hold static objects data.
328 2003-11-24 Jackson Harper <jackson@ximian.com>
330 * SessionStateServerHandler.cs: Parse connection string. Need to
331 look into what MS allows/doesn't allow better.
333 2003-11-24 Jackson Harper <jackson@ximian.com>
335 * RemoteStateServer.cs: The state server object that will reside
336 on the server and store session data and ids.
337 * StateServerItem.cs: Container for session data.
338 * SessionStateServerHandler.cs: Handler that communicates with the
339 StateServer so sessions can be stored out of process.
340 * SessionStateModule.cs: Allow state server mode.
342 2003-11-13 Jackson Harper <jackson@ximian.com>
344 * SessionInProcHandler.cs: Use AppDomain.SetData so data is
345 available across all threads. Set the path of session id
346 cookies. Patch by Mohammad DAMT. Fixes bug #50922.
348 2003-11-06 Jackson Harper <jackson@ximian.com>
350 * ISessionHandler.cs: Pass the SessionStateModule to handlers when
352 * SessionSqlServerHandler.cs:
353 * SessionInProcHandler.cs: Accept SessionStateModule when
354 updating. Use new SessionId.Create method for creating session
356 * SessionStateModule.cs: Add a random number generator that will
357 be used for creating session ids. Pass this to handlers when
359 * SessionId.cs: New class for creating session ids.
361 2003-11-03 Jackson Harper <jackson@ximian.com>
363 * HttpSessionState.cs (CopyTo): Copy values not keys. Patch by Yaron Shkop.
365 2003-11-03 Jackson Harper <jackson@ximian.com>
367 * HttpSessionState.cs: Make the SessionDictionary accessable
368 * ISessionHandler.cs: Add method to update the session state
369 data in the handler. Pass the session config to handlers when
371 * SessionConfig.cs: Add StateNetworkTimeout
372 * SessionInProcHandler.cs: Updates because interface has
373 changed, all functionality is the same.
374 * SessionStateModule.cs: Get new config items, allow SQLServer
375 session manager type. Update session handlers when the session
376 state has been released.
377 * SessionStateSectionHandler.cs: Add StateNetworkTimeout
378 * SessionSQLServerHandler.cs: New class allows sessions to be
379 stored in a database.
381 2003-10-28 Jackson Harper <jackson@ximian.com>
383 * HttpSessionState.cs: Do not allow timeout to be set to less then
386 2003-10-28 Jackson Harper <jackson@ximian.com>
388 * SessionInProcHandler.cs: Compute timeouts
389 correctly. DateTime.Milliseconds is the just the milliseconds part
390 of the time, it is not the entire time as milliseconds.
392 2003-10-13 Ben Maurer <bmaurer@users.sourceforge.net>
394 * SessionStateModule.cs: prevent Context.State from being null if
395 the module is inited in another HttpApplication. Fixes #49569.
397 2003-07-30 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
399 * IStateRuntime.cs: New interface class
400 * StateRuntime.cs: New class - stubbed out
402 2003-07-17 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
404 * SessionInProcHandler.cs: Made these internal to fix signature and building CLS-compliant
406 2003-07-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
408 * SessionDictionary.cs: locking.
410 * SessionInProcHandler.cs: use the new method instead of the setter.
412 2003-07-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
414 * ISessionHandler.cs:
415 * SessionInProcHandler.cs:
416 * SessionStateModule.cs: UpdateContext returns a bool indicating if we
417 started a new session. Only call session start event if that is true.
419 2003-05-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
421 * SessionStateModule.cs: fire application start and session start/end
424 2003-03-31 Stefan Görling <stefan@gorling.se>
426 * HttpSessionState.cs:
427 * ISessionHandler.cs:
428 * SessionInProcHandler.cs:
429 * SessionStateModule.cs: initial implementation of InProc session.
431 2003-03-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
433 * HttpSessionState.cs: implemented CodePage.
435 * SessionStateModule.cs: initial stuff to make it work.
437 2003-03-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
439 * HttpSessionState.cs: reworked to use SessionDictionary.
440 * SessionDictionary.cs: implemented serialization/deserialization.
442 2003-03-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
445 * SessionStateSectionHandler.cs: new files to read <sessionState>
448 2002-10-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
450 * SessionStateModule.cs: don't throw exception. Just for testing the
451 configuration stuff until we implement this.
453 2002-08-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
455 * HttpSessionState.cs: IsAbandoned is internal.
456 * SessionDictionary.cs: scope fixes.
457 * SessionStateModule.cs: added events.
459 2002-06-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
461 * System.Web.SessionState/HttpSessionState.cs:
462 Fixes based on class status page:
464 - Add attributes (DefaultEvent, ParseChildren).
466 - Explicitly implement some interfaces (IPostBackDataHandler
467 and IPostBackEventHandler).
468 - Implemented some missing methods.
470 2002-06-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
472 * HttpSessionState.cs: implemented more methods/properties.
473 * SessionDictionary.cs: New file.
475 2002-06-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
477 * System.Web.SessionState/HttpSessionState.cs:
478 * System.Web.SessionState/SessionStateModule.cs: new files with some
479 implementation and the rest stubbed.
481 2002-06-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
483 * IReadOnlySessionState.cs:
484 * IRequiresSessionState.cs:
485 * SessionStateMode.cs: new files.