2006-02-28 Chris Toshok <toshok@ximian.com>
[mono.git] / mcs / class / System.Web / System.Web.SessionState / ChangeLog
1 2006-02-28  Chris Toshok  <toshok@ximian.com>
2
3         * IStateRuntime.cs: wrap new interface method with NET_2_0.
4
5 2006-02-28  Chris Toshok  <toshok@ximian.com>
6
7         * SessionStateActions.cs: oops, actually rename the enum, not just
8         the file.
9
10 2006-02-28  Chris Toshok  <toshok@ximian.com>
11
12         * SessionStateActions.cs: rename SessionStateActionFlags to this.
13
14         * ISessionIDManager.cs: rename ISessionIDModule to this.
15
16         * IStateRuntime.cs: corcompare work.
17
18 2006-02-01  Chris Toshok  <toshok@ximian.com>
19
20         * SessionStateServerHandler.cs: CONFIGURATION_2_0 => NET_2_0.
21
22         * SessionSQLServerHandler.cs: same.
23
24         * SessionStateModule.cs: same.
25
26         * ISessionHandler.cs: same.
27
28         * SessionInProcHandler.cs: same.
29
30 2006-01-18 Konstantin Triger <kostat@mainsoft.com>
31
32         * HttpSessionState.jvm.cs: correcting serialization conditions.
33
34 2006-01-09  Konstantin Triger <kostat@mainsoft.com>
35
36         * HttpSessionState.jvm.cs: merging HttpSessionState.cs@@/main/19-24
37
38 2005-11-28  Chris Toshok  <toshok@ximian.com>
39
40         * SessionStateModule.cs: CONFIGURATION_2_0 work.
41
42         * SessionSQLServerHandler.cs: CONFIGURATION_2_0 work.
43
44         * SessionInProcHandler.cs: CONFIGURATION_2_0 work.
45
46         * SessionStateServerHandler.cs: CONFIGURATION_2_0 work.
47         
48         * ISessionHandler.cs (Init): @config is a SessionStateSection if
49         CONFIGURATION_2_0.
50
51 2005-09-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
52
53         * SessionStateModule.cs: use the new funciton in HttpRequest.
54
55 2005-09-22  Jackson Harper  <jackson@ximian.com>
56
57         * SessionStateModule.cs: Use a concat instead of a format (mucho
58         faster).
59
60 2005-09-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
61
62         * SessionStateModule.cs: fix compilation warnings and use the
63         application path for the cookie path. This is a temporary fix for 76172.
64         * SessionId.cs: don't access the cookie collection twice.
65
66 2005-09-09  Sebastien Pouliot  <sebastien@ximian.com>
67
68         * HttpSessionState.cs: Added LinkDemand for Minimal.
69         * IHttpSessionState.cs: Renamed IsCookieLess to IsCookieless.
70         * ISessionStateItemCollection.cs: Added ICollection and IEnumerable.
71         * SessionStateMode.cs: Added Custom (2.0).
72         * SessionStateModule.cs: Use RandomNumberGenerator.Create to create 
73         the RNG. Assert EnvironmentPermission to read MONO_XSP_STATIC_SESSION.
74         Added LinkDemand for Minimal.
75         * StateRuntime.cs: Added LinkDemand for Minimal, new ProcessRequest
76         override (2.0) and security attributes on methods.
77
78 2005-09-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
79
80         * SessionStateModule.cs: raise the Start event for new sessions.
81
82 2005-09-08 Eyal Alaluf <eyala@mainsoft.com>
83         * HttpSessionState.jvm.cs - fixed serialization when we want to serialize
84           an empty session.
85
86 2005-09-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
87
88         * SessionStateModule.cs: Only invoke the End event using the new method
89         in HttpApplicationFactory and when session state mode is InProc.
90
91 2005-09-01 Eyal Alaluf <eyala@mainsoft.com>
92         * SessionStateModule.cs: Under TARGET_J2EE we let the J2EE app server handle
93           session persistence, so we don't support SQL/Remoting session servers
94           at the ASP.Net level.
95
96 2005-08-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
97
98         * SessionStateModule.cs: added lock around 'config'.
99         * SessionInProcHandler.cs: when inserting in the the session in the
100         Cache, use sliding expiration only.  
101
102 2005-08-15  Miguel de Icaza  <miguel@novell.com>
103
104         * SessionStateModule.cs: Make this use the synch api as the module
105         was synchronous anyways
106
107 2005-06-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
108
109         * SessionInProcHandler.cs: use cache.InsertPrivate.
110         * SessionDictionary.cs: fix typo that made Clone useless.
111
112 2005-06-08 Ilya Kharmatsky <ilyak-at-mainsoft.com>
113
114         * SessionStateMode.cs: Added TARGET_J2EE directive in order
115         to provide in J2EE configuration additional mode - J2EE
116         * SessionStateModule.cs: Added TARGET_JVM directives in order
117         to resolve unsupported in Ghrasshopper "static variables" issue
118         (When static variable are stored in general place, instead of
119         storing such variables per AppDomain).
120
121 2005-05-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
122
123         * RemoteStateServer.cs:
124         * HttpSessionState.cs:
125         * SessionSQLServerHandler.cs:
126         * SessionInProcHandler.cs:
127         * SessionStateServerHandler.cs: remove abandoned sessions in the 
128         ReleseRequest state. Fixes bug #75051.
129
130 2005-04-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
131
132         * SessionSQLServerHandler.cs:
133         * SessionStateServerHandler.cs: removed warnigs.
134
135 2005-03-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
136
137         * SessionStateModule.cs:
138         * SessionId.cs: share the same RNG for all the instances of
139         SessionStateModule.
140
141 2005-02-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
142
143         * SessionStateModule.cs: hack that makes static files work on sites that
144         use the Session object in global.asax. You need to set
145         MONO_XSP_STATIC_SESSION to enable it and by dong so you will lose a bit 
146         of performance when serving static files. Fixes bug #71133.
147
148 2004-11-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
149
150         * SessionStateModule.cs: set the path modifier when using cookie-less
151         sessions.
152
153 2004-10-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
154
155         * SessionStateModule.cs: use SetCurrentExePath instead of SetFilePath.
156
157 2004-09-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
158
159         * HttpSessionState.cs: don't share static session objects declared in
160         the application file across the application, but on a per-session
161         basis. Fixes bug #65446.
162
163 2004-08-31  Sanjay Gupta <gsanjay@novell.com>
164
165         * SessionStateItemExpireCallback.cs: Explicit modifier "sealed" not 
166         required in definition.
167
168 2004-08-09  Sanjay Gupta <gsanjay@novell.com>
169
170         * SessionStateItemExpireCallback.cs: Added delegate.
171         * SessionStateStoreData.cs: Added a new class.
172
173 2004-08-05  Sanjay Gupta <gsanjay@novell.com>
174
175         * IHttpSessionState.cs: 
176         * ISessionIDModule.cs:
177         * ISessionStateItemCollection.cs: Added new interfaces.
178
179 2004-08-04  Sanjay Gupta <gsanjay@novell.com>
180
181         * SessionStateActionFlags.cs: Added enumeration.
182
183 2004-07-07  Juraj Skripsky <juraj@hotfeet.ch>
184
185         * SessionStateModule.cs: set path in session cookie to application
186         path.
187
188 2004-06-18  Gert Driesen <drieseng@users.sourceforge.net>
189
190         * IStateRuntime.cs: added missing marshalling attributes
191
192 2004-06-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
193
194         * SessionSQLServerHandler.cs:
195         * SessionStateServerHandler.cs:
196         * ISessionHandler.cs: added new parameter to Init.
197
198         * SessionInProcHandler.cs: use the HttpRuntime cache to store the
199         sessions and handle expiration.
200
201         * SessionStateModule.cs: added OnSessionRemoved internal method that is
202         called whenever a session expires or is removed.
203
204 2004-05-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
205
206         * HttpSessionState.cs: added Clone (), which makes and exact copy but
207         with a cloned SessionDictionary. When EnableSessionState is set to
208         ReadOnly, we can modify the collection, but changes are not propagated.
209
210         * ISessionHandler.cs: changed signature of UpdateContext().
211
212         * SessionDictionary.cs: added Clone.
213
214         * SessionInProcHandler.cs:
215         * SessionSQLServerHandler.cs:
216         * SessionStateServerHandler.cs: don't create a new session if the
217         handler do not require it. UpdateContext() now returns an
218         HttpSessionState to the module.
219
220         * SessionStateModule.cs: removed IsReadOnly as it is now passed as a 
221         parameter to the session handler. If the session is read-only, clone
222         it so that it can be changed but changes are not kept.
223
224         In short, we don't create session objects when not required and we
225         honor the ReadOnly sessions.
226
227 2004-02-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
228
229         * SessionInProcHandler.cs:
230         * SessionSQLServerHandler.cs:
231         * SessionStateServerHandler.cs: when creating the
232         HttpSessionStateObjets, use the session objects that we know about
233         in HttpApplicationFactory.
234
235 2004-01-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
236
237         * HttpSessionState.cs:
238         * SessionInProcHandler.cs: IsNewSession doesn't have a public setter.
239
240         * SessionStateModule.cs: doesn't implement IRequiresSessionState.
241         * StateServerItem.cs: not public.
242
243 2004-01-05  Alon Gazit <along@mainsoft.com>
244
245         * SessionDictionary.cs: can't set item's value to null if the item is
246         new.
247
248 2003-12-25  Jackson Harper <jackson@ximian.com>
249
250         * SessionStateModule.cs: Handle SessionStateMode.Off properly in
251         Init. Only set session cookies if a new session is created. This
252         fixes bug #52501.
253         
254 2003-12-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
255
256         * IStateRuntime.cs:
257         * SessionStateModule.cs: class status based fixes.
258
259 2003-12-05  Jackson Harper <jackson@ximian.com>
260
261         * SessionStateModule.cs: Add readonly property for readonly
262         sessions. This fixes bug #51647.
263         * SessionInProcHandler.cs:
264         * SessionSQLServerHandler.cs:
265         * SessionStateServerHandler.cs: Cleanup params for
266         HttpSessionState ctor. Make sure to always set is new, cookieless,
267         and readonly properly.
268         
269 2003-12-03  Jackson Harper <jackson@ximian.com>
270
271         * SessionStateModule.cs: If using cookieless sessions add an
272         onbegin request handler that parsers out session ids and rewrites
273         the path. Also redirect to a url with an embedded session id if we
274         are creating a new cookieless session.
275         * SesionInProcHandler.cs:
276         * SessionSQLServerHandler.cs:
277         * SessionStateServerHandler.cs: Use SessionId::Lookup to lookup session
278         ids, don't set the session id cookie anymore. That is handled by
279         the SessionStateModule.
280         * SessionId.cs: Add method for looking up session ids, add some constants.
281         
282 2003-11-26  Jackson Harper <jackson@ximian.com>
283
284         * SessionSQLServerHandler.cs: Fix typo in param name.
285         
286 2003-11-25  Jackson Harper <jackson@ximian.com>
287
288         * RemoteStateServer.cs: Update the session dictionary data and the
289         static objects data.
290         * SessionDictionary.cs: Remove type serialization methods, these
291         have been moved to a utility class. Add convenience methods for
292         converting to/from byte arrays.
293         * SessionSQLServerHandler.cs: 
294         * SessionStateServerHandler.cs: Save/Restore static objects. Use new
295         to/from byte array methods.
296         * StateServerItem.cs: Hold static objects data.
297         
298 2003-11-24  Jackson Harper <jackson@ximian.com>
299
300         * SessionStateServerHandler.cs: Parse connection string. Need to
301         look into what MS allows/doesn't allow better.
302         
303 2003-11-24  Jackson Harper <jackson@ximian.com>
304
305         * RemoteStateServer.cs: The state server object that will reside
306         on the server and store session data and ids.
307         * StateServerItem.cs: Container for session data.
308         * SessionStateServerHandler.cs: Handler that communicates with the
309         StateServer so sessions can be stored out of process.
310         * SessionStateModule.cs: Allow state server mode.
311         
312 2003-11-13  Jackson Harper <jackson@ximian.com>
313
314         * SessionInProcHandler.cs: Use AppDomain.SetData so data is
315         available across all threads. Set the path of session id
316         cookies. Patch by Mohammad DAMT. Fixes bug #50922.
317          
318 2003-11-06 Jackson Harper <jackson@ximian.com>
319
320         * ISessionHandler.cs: Pass the SessionStateModule to handlers when
321         updating.
322         * SessionSqlServerHandler.cs:
323         * SessionInProcHandler.cs: Accept SessionStateModule when
324         updating. Use new SessionId.Create method for creating session
325         ids.
326         * SessionStateModule.cs: Add a random number generator that will
327         be used for creating session ids. Pass this to handlers when
328         updating.
329         * SessionId.cs: New class for creating session ids.
330         
331 2003-11-03 Jackson Harper <jackson@ximian.com>
332
333         * HttpSessionState.cs (CopyTo): Copy values not keys. Patch by Yaron Shkop.
334         
335 2003-11-03 Jackson Harper <jackson@ximian.com>
336
337         * HttpSessionState.cs: Make the SessionDictionary accessable
338         * ISessionHandler.cs: Add method to update the session state
339         data in the handler. Pass the session config to handlers when
340         initializing.
341         * SessionConfig.cs: Add StateNetworkTimeout
342         * SessionInProcHandler.cs: Updates because interface has
343         changed, all functionality is the same.
344         * SessionStateModule.cs: Get new config items, allow SQLServer
345         session manager type. Update session handlers when the session
346         state has been released.
347         * SessionStateSectionHandler.cs: Add StateNetworkTimeout
348         * SessionSQLServerHandler.cs: New class allows sessions to be
349         stored in a database.
350         
351 2003-10-28 Jackson Harper <jackson@ximian.com>
352
353         * HttpSessionState.cs: Do not allow timeout to be set to less then
354         one.
355         
356 2003-10-28 Jackson Harper <jackson@ximian.com>
357
358         * SessionInProcHandler.cs: Compute timeouts
359         correctly. DateTime.Milliseconds is the just the milliseconds part
360         of the time, it is not the entire time as milliseconds.
361         
362 2003-10-13 Ben Maurer  <bmaurer@users.sourceforge.net>
363
364         * SessionStateModule.cs: prevent Context.State from being null if
365         the module is inited in another HttpApplication. Fixes #49569.
366
367 2003-07-30  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
368
369         * IStateRuntime.cs: New interface class
370         * StateRuntime.cs: New class - stubbed out
371
372 2003-07-17  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
373
374         * SessionInProcHandler.cs: Made these internal to fix signature and building CLS-compliant
375
376 2003-07-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
377
378         * SessionDictionary.cs: locking.
379
380         * SessionInProcHandler.cs: use the new method instead of the setter.
381
382 2003-07-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
383
384         * ISessionHandler.cs:
385         * SessionInProcHandler.cs:
386         * SessionStateModule.cs: UpdateContext returns a bool indicating if we
387         started a new session. Only call session start event if that is true.
388
389 2003-05-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
390
391         * SessionStateModule.cs: fire application start and session start/end
392         events.
393
394 2003-03-31  Stefan Görling <stefan@gorling.se>
395
396         * HttpSessionState.cs:
397         * ISessionHandler.cs:
398         * SessionInProcHandler.cs:
399         * SessionStateModule.cs: initial implementation of InProc session.
400
401 2003-03-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
402
403         * HttpSessionState.cs: implemented CodePage.
404
405         * SessionStateModule.cs: initial stuff to make it work.
406
407 2003-03-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
408
409         * HttpSessionState.cs: reworked to use SessionDictionary.
410         * SessionDictionary.cs: implemented serialization/deserialization.
411
412 2003-03-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
413
414         * SessionConfig.cs:
415         * SessionStateSectionHandler.cs: new files to read <sessionState>
416         configuration.
417
418 2002-10-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
419
420         * SessionStateModule.cs: don't throw exception.  Just for testing the
421         configuration stuff until we implement this.
422
423 2002-08-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
424
425         * HttpSessionState.cs: IsAbandoned is internal.
426         * SessionDictionary.cs: scope fixes.
427         * SessionStateModule.cs: added events.
428
429 2002-06-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
430
431         * System.Web.SessionState/HttpSessionState.cs: 
432         Fixes based on class status page:
433         
434                 - Add attributes (DefaultEvent, ParseChildren).
435                 - Fix declarations.
436                 - Explicitly implement some interfaces (IPostBackDataHandler
437                 and IPostBackEventHandler).
438                 - Implemented some missing methods.
439
440 2002-06-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
441
442         * HttpSessionState.cs: implemented more methods/properties.
443         * SessionDictionary.cs: New file.
444
445 2002-06-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
446
447         * System.Web.SessionState/HttpSessionState.cs:
448         * System.Web.SessionState/SessionStateModule.cs: new files with some
449         implementation and the rest stubbed.
450
451 2002-06-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
452
453         * IReadOnlySessionState.cs:
454         * IRequiresSessionState.cs:
455         * SessionStateMode.cs: new files.
456