ChangeLog 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620
  1. 2010-05-06 Marek Habersack <[email protected]>
  2. * OutputCacheModule.cs: added a 2.0 internal property to return
  3. the internal provider used in this profile.
  4. * OutputCache.cs: added internal RemoveFromProvider method to
  5. remove items from the indicated provider.
  6. 2010-02-23 Marek Habersack <[email protected]>
  7. * CachedVaryBy.cs: made serializable for 4.0+ (necessary for
  8. extensible output caching)
  9. 2010-02-03 Marek Habersack <[email protected]>
  10. * OutputCache.cs: DefaultProviderName checks if there was any
  11. provider configured and, if not, returns a built-in provider's
  12. name.
  13. * SqlCacheDependencyAdmin.cs: added
  14. * OutputCacheProviderCollection.cs: added
  15. * OutputCacheProvider.cs: added
  16. * OutputCacheModule.cs: uses the 4.0 extensible output cache
  17. provider model now (also internally in the 2.0 profile)
  18. OutputCacheProvider is retrieved on every request using
  19. HttpApplication.GetOutputCacheProviderName (4.0+). In the 2.0
  20. profile an instance of InMemoryOutputCacheProvider is always
  21. returned.
  22. * InMemoryOutputCacheProvider.cs: default output cache provider
  23. for ASP.NET 4.0, also used internally in the 2.0 profile.
  24. * CachedVaryBy.cs: made the generated key shorter
  25. * CacheItemPriorityQueueDebug.cs: debugging support for
  26. CacheItemPriorityQueue. Most of the code is compiled only when the
  27. DEBUG macro is defined. Debugging support includes recording of
  28. the queue operations sequence which is output to an XML file on
  29. appdomain shutdown. The recorded sequence files can be used to
  30. generate NUnit test cases for the priority queue (see
  31. ../Test/tools/README)
  32. * CacheItemPriorityQueue.cs: rewritten using an array based heap
  33. instead of a binary tree based one - implementation is simpler,
  34. faster and more elegant. Heap is initially 32 entries long and
  35. its size is doubled every time it fills up. After reaching a
  36. threshold (8192 entries currently) it is shrunk to the number of
  37. items + 1/3 of item count in order to preserve memory.
  38. * CacheItem.cs: added a Guid field to easier distinguish items
  39. (mostly for debugging purposes)
  40. * CacheDependency.cs: minor performance improvements
  41. * Cache.cs: better handling of timer periods
  42. 2010-01-25 Marek Habersack <[email protected]>
  43. * SqlCacheDependency.cs: added parameter checks to the
  44. constructors.
  45. Partially implemented 4.0 method CreateOutputCacheDependency
  46. * CacheItemUpdateReason.cs, CacheItemUpdateCallback.cs: added
  47. * CacheItem.cs: added OnUpdateCallback field
  48. * Cache.cs: implemented support for cache item update callback
  49. (3.5+)
  50. * AggregateCacheDependency.cs: added undocumented
  51. DependencyDispose method override
  52. 2010-01-22 Marek Habersack <[email protected]>
  53. * SubstitutionResponseElement.cs: implemented correct
  54. (de)serialization of the Callback delegate.
  55. * OutputCache.cs: implemented Serialize, Deserialize,
  56. DefaultProviderName and Providers.
  57. 2010-01-21 Marek Habersack <[email protected]>
  58. * DatabaseNotEnabledForNotificationException.cs, OutputCache.cs,
  59. FileResponseElement.cs, HeaderElement.cs, IOutputCacheEntry.cs,
  60. MemoryResponseElement.cs, OutputCacheProvider.cs,
  61. ResponseElement.cs, OutputCacheProviderCollection.cs,
  62. SubstitutionResponseElement.cs,
  63. TableNotEnabledForNotificationException.cs: added
  64. * CacheDependency.cs: default constructor is protected in 4.0
  65. 2010-01-06 Marek Habersack <[email protected]>
  66. * CacheItemPriorityQueue.cs: make sure lastParent is never null if
  67. root is not null in Enqueue. Possible fix for bug #567869
  68. 2009-12-01 Marek Habersack <[email protected]>
  69. * Cache.cs: ExpireItems dequeues the next item when a disabled
  70. item is found before continuing to look for items to expire. Fixes
  71. bug #559470. Patch from Adriaan van Kekem <[email protected]>,
  72. thanks.
  73. 2009-10-21 Marek Habersack <[email protected]>
  74. * CacheItemPriorityQueue.cs: lock the queue on enqueue/dequeue
  75. 2009-10-20 Marek Habersack <[email protected]>
  76. * OutputCacheModule.cs: keysCache and entriesToInvalidate
  77. dictionaries are allocated only when they are
  78. required. BuildManager's RemoveEntry envent is subscribed to only
  79. if cache actually has some entries.
  80. Added support for post-cache substitution.
  81. * CachedRawResponse.cs: data is stored in a list of DataItem
  82. instances instead of just in a single buffer. This enables support
  83. for post-cache substitution.
  84. 2009-10-05 Marek Habersack <[email protected]>
  85. * Cache.cs: if item expiration time exceeds the maximum value
  86. Timer accepts, use the latter - item will expire properly anyway,
  87. as the timer will be rescheduled for the item's expiration time
  88. once that item is bubbled to the top of the priority queue. Fixes
  89. bug #544171
  90. 2009-09-26 Marek Habersack <[email protected]>
  91. * CacheItemPriorityQueue.cs, CacheItem.cs, CacheItemEnumerator.cs:
  92. added
  93. * Cache.cs: factored out CacheItem and CacheItemEnumerator to
  94. separate files.
  95. Use reader-writer locks instead of Monitor.
  96. Added two 3.5sp1 properties - EffectivePrivateBytesLimit and
  97. EffectivePercentagePhysicalMemoryLimit.
  98. Added support for disabling cache item expiration.
  99. One timer is used to expire all timed items (instead of one timer
  100. per item). Timed items are kept in a priority queue.
  101. 2009-03-03 Marek Habersack <[email protected]>
  102. * CachedRawResponse.cs: headers are stored in NameValueCollection
  103. now.
  104. 2009-01-09 Marek Habersack <[email protected]>
  105. * Cache.cs: System.Threading.Timer.Change takes a long, not an
  106. int. The maximum value of sliding expiration is 365 days
  107. (31536000000ms) which fits within the value range of long. The
  108. previous cast to int might yield negative values in certain
  109. situations which was the reason for bug #464221. Fixes bug #464221
  110. 2008-10-21 Marek Habersack <[email protected]>
  111. * OutputCacheModule.cs: seal the class.
  112. Made OnRawResponseRemoved a static method.
  113. * CachedVaryBy.cs: seal the class.
  114. Use portable line terminators instead of literal '\n'.
  115. * Cache.cs: seal the CacheItem and CacheItemEnumerator classes.
  116. * CacheDependency.cs: dispose the associated dependency in the
  117. DependencyDispose method.
  118. * CachedRawResponse.cs: seal the class
  119. 2008-10-15 Marek Habersack <[email protected]>
  120. * OutputCacheModule.cs: do not take any action if Response returns
  121. null from GetCachedResponse.
  122. 2008-09-30 Juraj Skripsky <[email protected]>
  123. * CachedRawResponse.cs: Don't allocate a 32k buffer that is never
  124. used. Fixes enhancement bug #430963.
  125. 2008-09-29 Marek Habersack <[email protected]>
  126. * OutputCacheModule.cs: invalidate cache entries when the
  127. corresponding source file (.as?x) is recompiled by hooking up to
  128. System.Web.Compilation.BuildManager's build cache entry removal
  129. event. Fixes bug #429926
  130. 2008-09-26 Juraj Skripsky <[email protected]>
  131. * OutputCacheModule.cs: Consistently use InternalCache for
  132. CachedRawResponse items and Cache for CachedVaryBy items.
  133. Partial fix for bug #429926.
  134. 2008-08-11 Marek Habersack <[email protected]>
  135. * Cache.cs: dispose item timer when removing an entry. Fixes bug
  136. #416076. Patch provided by Adriaan van Kekem
  137. <[email protected]>, thanks!
  138. Pass onRemoveCallback along in Insert. Fixes bugs #324528 and
  139. #382644. Patch provided by Juraj Skripsky <[email protected]>,
  140. thanks!
  141. 2008-06-18 Marek Habersack <[email protected]>
  142. * SqlCacheDependency.cs: added
  143. 2008-05-30 Marek Habersack <[email protected]>
  144. * CacheDependency.cs: do not use synthetized event accessors (to
  145. avoid locks).
  146. 2008-05-23 Marek Habersack <[email protected]>
  147. * Cache.cs: optimize lock usage
  148. 2008-04-28 Marek Habersack <[email protected]>
  149. * Cache.cs: refactoring - move the timeout setting code to
  150. separate methods, so that it can be accessed from outside the
  151. class. Fixes bug #382644
  152. 2008-03-18 Geoff Norton <[email protected]>
  153. * Cache.cs: MS allows calling Insert in a removed handler, we need to
  154. avoid double locking here otherwise the Insert will never succeed.
  155. 2008-02-26 Kornél Pál <[email protected]>
  156. * CachedRawResponse.cs, OutputCacheModule.cs: Don't add Date header because
  157. servers usually add a Date header that would result in duplicate Date header
  158. sent to the client. Fixes bug #363404.
  159. 2007-12-31 Vladimir Krasnov <[email protected]>
  160. * Cache.cs: added DependencyCache property, a cache object for
  161. creating dependencies
  162. 2007-12-19 Juraj Skripsky <[email protected]>
  163. * Cache.cs: Replace periodic timer (60s) with per-cache-item expiration
  164. timers.
  165. 2007-08-17 Marek Habersack <[email protected]>
  166. * CacheDependency.cs: use DependencyChanged as a list of events.
  167. OnChanged now calls OnDependencyChanged, to notify
  168. AggregateCacheDependency that it has changed. Fixes bug #82419.
  169. 2007-08-14 Marek Habersack <[email protected]>
  170. * AggregateCacheDependency.cs: propagate changes in any child
  171. dependencies to the base class.
  172. 2007-06-25 Juraj Skripsky <[email protected]>
  173. * Cache.cs: Re-introduce "InvokePrivateCallbacks" accidentally
  174. removed in r80321.
  175. 2007-06-20 Marek Habersack <[email protected]>
  176. * OutputCacheModule.cs: use Context.InternalCache.
  177. * Cache.cs: 2.0 profile uses generic containers to keep the cache
  178. entries.
  179. Gotten rid of the InsertPrivate and InsertInternal methods. The
  180. latter was moved to one of the Insert overloads.
  181. Private entries are no longer handled specifically, because the
  182. internal cache is now kept in a separate object.
  183. Iterate over the entries when filling the ArrayList in the 2.0
  184. profile to avoid type cast exceptions.
  185. 2007-05-03 Igor Zelmanovich <[email protected]>
  186. * AggregateCacheDependency.cs:
  187. * CacheDependency.cs:
  188. added missing API.
  189. 2007-04-10 Marek Habersack <[email protected]>
  190. * CacheDependency.cs: add the NotifyFilters.Size to the
  191. watcher flags, so that we watch for modifications to a file when
  192. using Linux inotify.
  193. 2006-11-29 Marek Habersack <[email protected]>
  194. * CachedVaryBy.cs: Make sure that the vary:* header is generated
  195. only when allowed under the 2.0 profile.
  196. 2006-11-25 Marek Habersack <[email protected]>
  197. * AggregateCacheDependency.cs: A small code optimization.
  198. 2006-11-14 Marek Habersack <[email protected]>
  199. * Cache.cs:
  200. * CacheDependency.cs:
  201. * AggregateCacheDependency.cs: implement this one.
  202. 2006-09-11 Andrew Skiba <[email protected]>
  203. * CacheDependency.cs: ifdef TARGET_JVM
  204. 2006-08-03 Gonzalo Paniagua Javier <[email protected]>
  205. * CacheDependency.cs:
  206. * Cache.cs: check dependencies on other cache keys. Fixes bug #79002.
  207. 2006-03-18 Robert Jordan <[email protected]>
  208. * OutputCacheModule.cs: invoke the validation callbacks of
  209. HttpCachePolicy. Fixes bug #77825.
  210. 2006-03-14 Robert Jordan <[email protected]>
  211. * CachedVaryBy.cs: Fixed VaryByParam="*". Replaced request.Param
  212. with QueryString and Form lookups. Made the param name output case
  213. insensitive. Fixes bug #77757.
  214. 2005-10-24 Gonzalo Paniagua Javier <[email protected]>
  215. * Cache.cs: new internal method.
  216. 2005-09-08 Eyal Alaluf <[email protected]>
  217. * OutputCacheModule.cs: Use C# 1.0 style of delegate instantiating.
  218. Needed to compile Grasshopper (TARGET_J2EE) which uses MS C# 1.0
  219. compiler and does not use msc.
  220. 2005-09-02 Gonzalo Paniagua Javier <[email protected]>
  221. * Cache.cs: ignore exceptions thrown by removed item callbacks.
  222. 2005-09-02 Sebastien Pouliot <[email protected]>
  223. * Cache.cs: Added security permissions with Minimal level for
  224. AspNetHostingPermissionLevel (only LinkDemand as the class is sealed).
  225. * CacheDependency.cs: : Added security permissions with Minimal level
  226. for AspNetHostingPermissionLevel (note class is sealed only in 1.x).
  227. 2005-09-01 Eyal Alaluf <[email protected]>
  228. * CacheDependency.cs: TARGET_J2EE fixes.
  229. 2005-08-20 Gonzalo Paniagua Javier <[email protected]>
  230. * CacheDependency.cs: add missing ctor.
  231. 2005-08-15 Jackson Harper <[email protected]>
  232. * CacheItemPriority.cs:
  233. * CacheItemRemovedCallback.cs:
  234. * CacheItemRemovedReason.cs: New implementations.
  235. 2005-07-30 Miguel de Icaza <[email protected]>
  236. * OutputCacheModule.cs: Make synchronous.
  237. 2005-07-15 Lluis Sanchez Gual <[email protected]>
  238. * Cache.cs: New implementation.
  239. * CacheDependency.cs: New implementation.
  240. 2005-06-25 Gonzalo Paniagua Javier <[email protected]>
  241. * Cache.cs: added new InsertPrivate overload.
  242. 2005-06-25 Gonzalo Paniagua Javier <[email protected]>
  243. * Cache.cs:
  244. * CacheEntry.cs: style. Removed doc. comments.
  245. 2005-06-08 Ilya Kharmatsky <ilyak-at-mainsoft.com>
  246. * CacheDependency.cs - added TARGET_JVM directives in places,
  247. where file watching is using (Mainsoft's implementation currently
  248. doesn't support the feature).
  249. 2005-05-09 Gonzalo Paniagua Javier <[email protected]>
  250. * CacheEntry.cs: credits for this patch should go to mcs. it catched
  251. that the code after 'if ((_enumFlags & Flags.Removed) != 0)' was
  252. unreachable.
  253. 2005-04-28 Gonzalo Paniagua Javier <[email protected]>
  254. * ExpiresBuckets.cs:
  255. * Cache.cs:
  256. * CacheExpires.cs: fix NullReferenceException thrown sometimes when
  257. using sliding expiration and under high load. Patch by Eyal Alayuf from
  258. Mainsoft.
  259. 2005-04-20 Gonzalo Paniagua Javier <[email protected]>
  260. * CacheDependency.cs: remove warnings.
  261. 2005-04-01 Gonzalo Paniagua Javier <[email protected]>
  262. * CachedVaryBy.cs: fixed VaryByParam and wildcard (*). Patch by Ilya
  263. Kharmatsky (Mainsoft) that fixes bug #73981.
  264. 2005-04-01 Lluis Sanchez Gual <[email protected]>
  265. * CachedRawResponse.cs: Fix warning.
  266. 2004-11-08 Gonzalo Paniagua Javier <[email protected]>
  267. * CacheEntry.cs: convert the external DateTime to GMT, as everything
  268. else uses that timezone. Fixes bug #69194.
  269. 2004-10-03 Ben Maurer <[email protected]>
  270. * Cache.cs, CacheEntry.cs, CacheExpires.cs, ExpiresBuckets.cs:
  271. use UtcNow rather than Now.
  272. 2004-05-27 Patrik Torstensson <[email protected]>
  273. * ExpiresBucket.cs (FlushExpiredItems): fix csc and a typo bug
  274. 2004-05-27 Patrik Torstensson <[email protected]>
  275. * CacheEntry.cs,CacheExpires.cs,ExpiresBucket.cs,
  276. Cache.cs : Fixed deadlock issues, fixed
  277. items not correctly being flushed, fixed update
  278. of item when expiration has been updated more
  279. than 1 min (placed in wrong bucket),
  280. fixed deadlock during cache callback when item
  281. is removed due to expiriation.
  282. Rewrite of locking handling in Cache class, leading
  283. to better performance and less bugs.
  284. This rewrite is due to a number of bugs found
  285. in the output caching during load (leading to memory
  286. leaks and deadlocks)
  287. 2004-05-16 Patrik Torstensson <[email protected]>
  288. * ExpiresBucket.cs: Style changes plus;
  289. (Update): Fixed possible lock bug (bug 54531)
  290. (Expand): remove lock optimization due to it can cause newly
  291. added items to be lost.
  292. (Remove): fixed possible lock bug.
  293. 2004-04-16 Gonzalo Paniagua Javier <[email protected]>
  294. * Cache.cs: fix from Jan Jaros for NullRef (bug #56996).
  295. 2004-04-07 Lluis Sanchez Gual <[email protected]>
  296. * Cache.cs, CacheEntry.cs, ExpiresBuckets.cs: The value to use to
  297. specify infinite timeout in ReaderWriterLock is -1, not 0.
  298. 2004-03-19 Gonzalo Paniagua Javier <[email protected]>
  299. * Watcher.cs: Removed file. Jackson made it obsolete and already
  300. removed it from the .sources file.
  301. 2004-02-09 Jackson Harper <[email protected]>
  302. * ExpiresBucket.cs: Remove duplicate code. Fixes bug #54031.
  303. 2004-02-09 Jackson Harper <[email protected]>
  304. * Cache.cs: Close entries that are removed.
  305. * CacheDependency.cs: Use FileSystemWatcher instead of custom
  306. Watcher for file dependencies.
  307. * OutputCacheModule.cs: Make the varyby objects dependent on the
  308. cached page.
  309. 2004-02-05 Jackson Harper <[email protected]>
  310. * CacheDependency.cs: Handle cache keys that have not been added
  311. to the cache yet.
  312. 2004-02-02 Jackson Harper <[email protected]>
  313. * OutputCacheModule.cs: We can use file dependancies now.
  314. 2004-01-14 Jackson Harper <[email protected]>
  315. * Cache.cs: Return null when items are expired but have not been
  316. removed yet.
  317. * OutputCacheModule.cs: Handle sliding expirations. Remove hacks
  318. checking if the item is expired, the cache no longer returns
  319. expired items.
  320. 2004-01-14 Jackson Harper <[email protected]>
  321. * Cache.cs: When using sliding expiration update the cache objects
  322. expires time as well as the expires entry expire time because the
  323. objects expire time is checked when objects are pulled out. This
  324. fixex bug #52778.
  325. 2004-01-11 Jackson Harper <[email protected]>
  326. * OutputCacheModule.cs: Remove varyby objects when there are no
  327. more raw responses that belong to them.
  328. * CachedRawResponse.cs: Keep a reference to the VaryBy object that
  329. this response belongs to this is so the varyby can be cleaned up.
  330. * CachedVaryBy.cs: Keep a reference to the keys that belong to the
  331. varyby and a reference to the varyby's key.
  332. 2004-01-04 Jackson Harper <[email protected]>
  333. * OutputCacheModule.cs: Dont cache items when trace is enabled.
  334. 2004-01-04 Jackson Harper <[email protected]>
  335. * OutputCacheModule.cs: Update the date header value.
  336. * CachedRawResponse.cs: Expose a ref to the date header, so it can
  337. be easily set/updated. Remove unused methods and vars.
  338. 2004-01-04 Jackson Harper <[email protected]>
  339. * CacheDependency.cs: Copy all the entries into the entries array,
  340. set on removed callback for items that we are dependent on.
  341. * Cache.cs: Add method to get CacheEntry objects.
  342. * OutputCacheModule.cs: Make raw repsonse entries dependent on
  343. their varyby param entries.
  344. 2004-01-04 Jackson Harper <[email protected]>
  345. * OutputCacheModule.cs: VaryBy keys now need the HttpContext not just the request.
  346. * CachedVaryBy.cs: Handle vary by headers, and vary by custom.
  347. 2004-01-03 Gonzalo Paniagua Javier <[email protected]>
  348. * ExpiresBuckets.cs: set _intPos when expanding the array. Fixes bug
  349. 52541. Patch by Jan Jaros ([email protected]).
  350. 2003-11-21 Jackson Harper <[email protected]>
  351. * OutputCacheModule.cs: Only cache a page if it has a 200 status
  352. code. Fix tabbing.
  353. * CachedVaryBy.cs: Give raw response keys a name, use the
  354. httpmethod in the key, and delimit items with \n so it is easier
  355. to read when debugging.
  356. 2003-11-21 Jackson Harper <[email protected]>
  357. * OutputCacheModule.cs: Store a CachedVaryBy object for each
  358. cached page. Then store a CachedRawResponse for each combination
  359. of varried parameters for a page.
  360. * CachedRawResponse.cs: Do not need to store param values anymore
  361. those are stored in the CachedVaryBy now. Get the content length
  362. so we dont send back the entire buffer.
  363. * CachedVaryBy.cs: New file - holds the varyby data for a page,
  364. and a method to generate a key based on params. Right now this
  365. only works with VaryByParams. TODO: support VaryByHeaders and
  366. VaryByCustom.
  367. 2003-11-20 Jackson Harper <[email protected]>
  368. * Cache.cs: New method so non public cache items can be added.
  369. * CachedRawResponse.cs: New file - A snapshot of a response that
  370. is stored in the cache and can be used to create a new response.
  371. * OutputCacheModule.cs: Module for inserting and retrieving
  372. responses from the cache.
  373. 2003-04-09 Gonzalo Paniagua Javier <[email protected]>
  374. * CacheDependency.cs:
  375. * CacheEntry.cs:
  376. * Watcher.cs: added a FileSystemWatcher-like class for dependency checking.
  377. 2003-03-13 Gonzalo Paniagua Javier <[email protected]>
  378. * Cache.cs:
  379. * CacheDefinitions.cs:
  380. * CacheDependency.cs:
  381. * CacheEntry.cs:
  382. * CacheExpires.cs:
  383. * ExpiresBuckets.cs: reformatted, make class status page happier. Does
  384. not work yet (wait for the next patch).
  385. 2002-12-27 Daniel Cazzulino <[email protected]>
  386. * CacheEntry.cs: several changes. New constants, use of constants
  387. defined in Cache.cs, modified locks to optimize perf. Fixed property
  388. sets which weren't using the keyword value to set the new values
  389. (don't know how this worked before!).
  390. * Cache.cs: changed singleton implementation to only create the object
  391. when actually used. Changed Insert overloads to use constants
  392. defined instead of hard values.
  393. * ExpiresBuchets: major changes. All locking now uses ReaderWriterLock
  394. class. Bucket now efectively reuses free indexes from removed items
  395. to avoid unnecessary expansions. Expansion now uses Array.CopyTo to
  396. add elements to the new list. Added private Int32Collection to
  397. handle int indexes efficiently (thanks Shawn Van Ness). See comments
  398. there.
  399. 2002-10-08 Gonzalo Paniagua Javier <[email protected]>
  400. * Cache.cs: little fixes.
  401. 2002-07-28 Gonzalo Paniagua Javier <[email protected]>
  402. * CacheDefinitions.cs: fixed a couple of enums.
  403. * CacheDependency.cs: the class is sealed.
  404. 2002-06-11 Gonzalo Paniagua Javier <[email protected]>
  405. * CacheDependency.cs: fixed a couple of typos and don't throw
  406. NotImplementedException in constructors.
  407. 2001-12-21 Gaurav Vaish <[email protected]>
  408. * CacheDependency.cs: Some unimplemented methods to make build
  409. 2001-07-20 Patrik Torstensson ([email protected])
  410. * Cache.cs: Implemented. (90% ready)
  411. * CacheDefinitions.cs: Implemented.
  412. * CacheDependency.cs: Added. (20% ready)
  413. * CacheExpires: Implemented.
  414. * CacheEntry.cs: Implemented. (95% ready, going to be changed due to CacheDependecy support)
  415. * ExpiresBuckets.cs: Implemented.