EventFeed.cs CampusAppWP8::Feed::Events::EventFeed CampusAppWP8::Feed::Events //----------------------------------------------------------------------- //<copyrightfile="EventFeed.cs"company="BTU/IIT"> //Companycopyrighttag. //</copyright> //<author>fiedlchr</author> //<sience>24.06.2013</sience> //---------------------------------------------------------------------- namespaceCampusAppWP8.Feed.Events { usingSystem; usingSystem.IO; usingCampusAppWP8.Model; usingCampusAppWP8.Model.RSS; usingCampusAppWP8.Resources; usingCampusAppWP8.Utility; publicclassEventFeed:XmlModel<RSSViewModel> { #regionConstructor publicEventFeed(boolautoLoad=true) :base(ModelType.FileAndFeed,Constants.FileEvents_Name,Constants.UrlEvents_Addr) { this.IsFileUpToDateOnLoad+=newIsFileUpToDate(this.CheckIsFileUpToDateOnLoad); this.IsFileUpToDateOnSave+=newIsFileUpToDate(this.CheckIsFileUpToDateOnSave); this.IsModelUpToDateOnLoad+=newIsModelUpToDate(this.CheckIsModelUpToDate); if(autoLoad==true) { this.LoadData(); } } #endregion #regionMethod privateboolCheckIsModelUpToDate(RSSViewModelmodel) { boolretValue=true; if(model==null) { retValue=false; } else { retValue=this.CheckIsUpToDate(model.CreateTime); } returnretValue; } privateboolCheckIsFileUpToDateOnLoad(RSSViewModelmodel,FileInfoinfo) { boolretValue=true; if(model==null) { //atloading if(info.Exists==true) { retValue=this.CheckIsUpToDate(info.LastWriteTime); } } returnretValue; } privateboolCheckIsFileUpToDateOnSave(RSSViewModelmodel,FileInfoinfo) { boolretValue=true; if((info.Exists==false) ||(info.Length==0)) { retValue=false; } if(model!=null) { retValue=this.CheckIsUpToDate(info.LastWriteTime); } returnretValue; } privateboolCheckIsUpToDate(DateTimelastModified) { returnUtilities.DayDifference(Utilities.DifferenceType.Less,lastModified,1.0); } #endregion } }