CacheDependency.cs 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
  1. //
  2. // System.Web.Caching.CacheDependency
  3. //
  4. // Authors:
  5. // Patrik Torstensson ([email protected])
  6. // Gonzalo Paniagua Javier ([email protected])
  7. //
  8. // (C) Copyright Patrik Torstensson, 2001
  9. // (c) 2003 Ximian, Inc. (http://www.ximian.com)
  10. //
  11. using System;
  12. using System.Web;
  13. namespace System.Web.Caching
  14. {
  15. internal class CacheDependencyChangedArgs : EventArgs
  16. {
  17. string key;
  18. public CacheDependencyChangedArgs (string key)
  19. {
  20. this.key = key;
  21. }
  22. public string Key {
  23. get { return key; }
  24. }
  25. }
  26. internal delegate void CacheDependencyChangedHandler (object sender, CacheDependencyChangedArgs args);
  27. public sealed class CacheDependency : IDisposable
  28. {
  29. DateTime start;
  30. string [] filenames;
  31. public CacheDependency (string filename)
  32. : this (filename, DateTime.MaxValue)
  33. {
  34. }
  35. public CacheDependency (string filename, DateTime start)
  36. : this (new string [] {filename}, null, null, start)
  37. {
  38. }
  39. public CacheDependency (string [] filenames)
  40. : this (filenames, null, null, DateTime.MaxValue)
  41. {
  42. }
  43. public CacheDependency (string [] filenames, DateTime start)
  44. : this (filenames, null, null, start)
  45. {
  46. }
  47. public CacheDependency (string [] filenames, string [] cachekeys)
  48. : this (filenames, cachekeys, null, DateTime.MaxValue)
  49. {
  50. }
  51. public CacheDependency (string [] filenames, string [] cachekeys, DateTime start)
  52. : this (filenames, cachekeys, null, start)
  53. {
  54. }
  55. public CacheDependency (string [] filenames, string [] cachekeys, CacheDependency dependency)
  56. : this (filenames, cachekeys, dependency, DateTime.MaxValue)
  57. {
  58. }
  59. [MonoTODO]
  60. public CacheDependency (string [] filenames,
  61. string [] cachekeys,
  62. CacheDependency dependency,
  63. DateTime start)
  64. {
  65. this.start = start;
  66. }
  67. [MonoTODO]
  68. public void Dispose ()
  69. {
  70. throw new NotImplementedException ();
  71. }
  72. public bool HasChanged
  73. {
  74. get {
  75. return false;
  76. }
  77. }
  78. [MonoTODO]
  79. internal CacheEntry [] GetCacheEntries ()
  80. {
  81. return null;
  82. }
  83. internal event CacheDependencyChangedHandler Changed;
  84. }
  85. }