NewsFeed.cs CampusAppWP8::Feed::News::NewsFeed CampusAppWP8::Feed::News //----------------------------------------------------------------------------- //<copyrightfile="NewsFeed.cs"company="BTU/IIT"> //Companycopyrighttag. //</copyright> //<author>fiedlchr</author> //<sience>24.06.2013</sience> //----------------------------------------------------------------------------- namespaceCampusAppWP8.Feed.News { usingSystem; usingSystem.IO; usingCampusAppWP8.Model; usingCampusAppWP8.Resources; usingCampusAppWP8.Utility; usingCampusAppWPortalLib8.Model.RSS; publicclassNewsFeed:XmlModel<RSSViewModel> { #regionConstructor publicNewsFeed(boolautoLoad=true) :base(ModelType.FileAndFeed,Constants.FileNews_Name,CampusAppWPortalLib8.Resources.Constants.UrlNews_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) { 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 } }