public Save Reset(string id) { using (var client = new LLCContext()) { var link = client.Links.FirstOrDefault(x => x.Id == id); if (link != null) { link.ReportNotBeforeDate = DateTime.Today; link.Valid = true; client.Links.Update(link); Console.WriteLine("Updated link"); var report = client.Reports.FirstOrDefault(x => x.Link == id); if (report != null) { client.Reports.Remove(report); Console.WriteLine("Removed report"); } } client.SaveChanges(); return(new Save { Status = true }); } }
public Save AddPackage(Packages package) { var now = DateTime.Now; using (var client = new LLCContext()) { Console.WriteLine("Adding package"); client.Packages.Add(package); try { client.SaveChanges(); return(new Save { Status = true }); } catch (Exception e) { Console.WriteLine(e.Message); return(new Save { Status = false }); } } }
public List <ReportsExt> WarningLinks() { using (var client = new LLCContext()) { var results = (from reports in client.Reports join link in client.Links on reports.Link equals link.Id join source in client.Sources on link.Source equals source.Id where reports.ReportType == "Warning" select new ReportsExt { AttemptCount = link.AttemptCount, ContentSize = reports.ContentSize, DateLastChecked = link.DateLastChecked, DateLastFound = link.DateLastFound, Id = reports.Id, Link = link.Id, Mean = reports.Mean, ReportType = reports.ReportType, SdMaximum = reports.SdMaximum, Source = source.Name, StandardDeviation = reports.StandardDeviation, Stat = reports.Stat, Url = link.Url }) .ToList(); return(results); } }
public Save DeletePackage(string key) { using (var client = new LLCContext()) { var package = PackageFromKey(key); client.Packages.Remove(package); var files = client.PackageFiles.Where(x => x.PackageId == package.Id); client.PackageFiles.RemoveRange(files); Console.WriteLine("Removing package and files"); try { client.SaveChanges(); return(new Save { Status = true }); } catch (Exception e) { Console.WriteLine(e.Message); return(new Save { Status = false }); } } }
public List <SourcesExt> Sources() { using (var client = new LLCContext()) { var sources = client.Sources.Select(x => new SourcesExt { AllowLinkChecking = x.AllowLinkChecking, AllowLinkExtractions = x.AllowLinkExtractions, DateCreated = x.DateCreated, Description = x.Description, Id = x.Id, Name = x.Name, S3bucketId = x.S3bucketId }) .ToList(); foreach (var m in sources) { // Skip the internal sources if (m.S3bucketId != null) { var bucket = client.Buckets.FirstOrDefault(x => x.Id == m.S3bucketId); m.S3bucketName = bucket.Name; m.S3bucketSearchPrefix = bucket.SearchPrefix; } } sources = sources.OrderBy(x => x.Id).ToList(); return(sources); } }
public List <LinksExt> LinkChecker(string source, int offset, int maximum) { using (var client = new LLCContext()) { var result = client.Links.Where(x => x.Source == source) .Skip(offset) .Take(maximum) .Select(x => new LinksExt { AllTimeMaxDownloadTime = x.AllTimeMaxDownloadTime, AllTimeMinDownloadTime = x.AllTimeMinDownloadTime, AllTimeStdDevDownloadTime = x.AllTimeStdDevDownloadTime, AttemptCount = x.AttemptCount, DateFirstFound = x.DateFirstFound, DateLastChecked = x.DateLastChecked, DateLastFound = x.DateLastFound, DateUpdated = x.DateUpdated, DisabledDate = x.DisabledDate, DisabledUser = x.DisabledUser, Id = x.Id, PastWeekMaxDownloadTime = x.PastWeekMaxDownloadTime, PastWeekMinDownloadTime = x.PastWeekMinDownloadTime, PastWeekStdDevDownloadTime = x.PastWeekStdDevDownloadTime, ReportNotBeforeDate = x.ReportNotBeforeDate, Source = x.Source, Url = x.Url, Valid = x.Valid }) .ToList(); return(result); } }
public Save DeleteSetting(SettingsExt setting) { using (var client = new LLCContext()) { Console.WriteLine(JsonConvert.SerializeObject(setting)); client.Settings.Remove(new Settings { Id = setting.Id }); try { client.SaveChanges(); return(new Save { Status = true }); } catch (Exception e) { Console.WriteLine(e.Message); return(new Save { Status = false }); } } }
public Save DeleteSource(SourcesExt source) { using (var client = new LLCContext()) { Console.WriteLine(JsonConvert.SerializeObject(source)); var obj = Source(source.Id, SearchType.Id); client.Buckets.Remove(new Buckets { Id = obj.S3bucketId }); client.Sources.Remove(new Sources { Id = source.Id, S3bucketId = obj.S3bucketId }); try { client.SaveChanges(); return(new Save { Status = true }); } catch (Exception e) { Console.WriteLine(e.Message); return(new Save { Status = false }); } } }
public List <ObjectsExt> LinkExtractor(string bucket, int offset, int maximum) { using (var client = new LLCContext()) { var result = client.Objects.Where( x => x.Bucket == bucket && x.DisabledDate == null && x.Key.Contains(".htm") && (x.DateLinksLastExtracted == null || x.DateLinksLastExtracted < x.ContentLastModified) && x.IsFolder == false) .Skip(offset) .Take(maximum) .Select(x => new ObjectsExt { Bucket = x.Bucket, ContentLastModified = x.ContentLastModified, DateFirstFound = x.DateFirstFound, DateLastFound = x.DateLastFound, DateLinksLastExtracted = x.DateLinksLastExtracted, DisabledDate = x.DisabledDate, DisabledUser = x.DisabledUser, Etag = x.Etag, Id = x.Id, IsFolder = x.IsFolder, ItemName = x.ItemName, Key = x.Key }) .ToList(); return(result); } }
public List <PackagesExt> Packages() { using (var client = new LLCContext()) { var packages = client.Packages .Select(x => new PackagesExt { DateUploaded = x.DateUploaded, Delete = false, Description = x.Description, FileName = x.FileName, Id = x.Id, ImsDescription = x.ImsDescription, ImsSchema = x.ImsSchema, ImsSchemaVersion = x.ImsSchemaVersion, ImsTitle = x.ImsTitle, Key = x.Key, Name = x.Name, PackageProcessed = x.PackageProcessed, UploadedBy = x.UploadedBy }) .ToList(); return(packages); } }
public List <BucketLocationsModel> BucketLocations(BucketLocationsRequest m) { using (var client = new LLCContext()) { var buckets = Buckets(); var response = new List <BucketLocationsModel>(); var links = client.ObjectLinks.Where(x => x.Link == m.id); var dist = new List <string>(); if (links != null) { foreach (var link in links) { var obj = client.Objects.FirstOrDefault(x => x.Id == link.Object); var url = string.Format("https://{0}.s3.amazonaws.com/{1}", buckets.FirstOrDefault(x => x.Id == obj.Bucket).Name, obj.Key); if (!dist.Contains(url)) { dist.Add(url); } } foreach (var d in dist) { response.Add(new BucketLocationsModel { data = d }); } } return(response); } }
public Links LinkFromUrl(string url) { using (var client = new LLCContext()) { var obj = client.Links.FirstOrDefault(x => x.Url == url); return(obj); } }
public Links Link(string id) { using (var client = new LLCContext()) { var obj = client.Links.FirstOrDefault(x => x.Id == id); return(obj); } }
public int LinksCount(string source) { using (var client = new LLCContext()) { var count = client.Links.Where(x => x.Source == source).Count(); return(count); } }
public Reports Report(string id) { using (var client = new LLCContext()) { var obj = client.Reports.FirstOrDefault(x => x.Link == id); return(obj); } }
public List <Buckets> Buckets() { using (var client = new LLCContext()) { var buckets = client.Buckets.ToList(); return(buckets); } }
public Objects Object(string id) { using (var client = new LLCContext()) { var obj = client.Objects.FirstOrDefault(x => x.Id == id); return(obj); } }
public void RemoveReport(Reports report) { using (var client = new LLCContext()) { client.Reports.Remove(report); client.SaveChanges(); } }
public Packages PackageFromKey(string key) { using (var client = new LLCContext()) { var package = client.Packages.FirstOrDefault(x => x.Key == key); return(package); } }
public Objects ObjectFromKey(string key) { using (var client = new LLCContext()) { var obj = client.Objects.FirstOrDefault(x => x.Key == key); return(obj); } }
public Objects AddObject(Objects obj) { using (var client = new LLCContext()) { var update = client.Objects.Add(obj); client.SaveChanges(); return(obj); } }
public Links AddLink(Links link) { using (var client = new LLCContext()) { var update = client.Links.Add(link); client.SaveChanges(); return(link); } }
public Stats AddStat(Stats stat) { using (var client = new LLCContext()) { var update = client.Stats.Add(stat); client.SaveChanges(); return(stat); } }
public Reports SetReport(Reports report) { using (var client = new LLCContext()) { var update = client.Reports.Update(report); client.SaveChanges(); return(report); } }
public Save SaveSetting(SettingsExt setting, User user) { Console.WriteLine($"ID is {setting.Id}"); Console.WriteLine($"ID is null ? {string.IsNullOrEmpty(setting.Id)}"); var now = DateTime.Now; using (var client = new LLCContext()) { if (string.IsNullOrEmpty(setting.Id)) { Console.WriteLine("Adding setting"); var id = Guid.NewGuid().ToString(); client.Settings.Add(new Settings { DateCreated = now, DateModified = now, Description = setting.Description, Id = id, ModifiedUser = user.Email, Name = setting.Name, Value = setting.Value }); } else { Console.WriteLine("Update setting"); client.Settings.Update(new Settings { DateModified = now, Description = setting.Description, Id = setting.Id, ModifiedUser = user.Email, Name = setting.Name, Value = setting.Value }); } try { client.SaveChanges(); return(new Save { Status = true }); } catch (Exception e) { Console.WriteLine(e.Message); return(new Save { Status = false }); } } }
public void RemoveReport(string link) { using (var client = new LLCContext()) { var report = client.Reports.FirstOrDefault(x => x.Link == link); if (report != null) { client.Reports.Remove(report); client.SaveChanges(); } } }
public List <Stats> LinkStats(LinksExt link) { using (var client = new LLCContext()) { var stats = (from stat in client.Stats join l in client.Links on stat.Link equals l.Id where l.Id == link.Id && (l.ReportNotBeforeDate == null || stat.DateChecked >= l.ReportNotBeforeDate) select stat) .ToList(); return(stats); } }
public int ObjectsCount(string bucket) { using (var client = new LLCContext()) { var count = client.Objects.Where( x => x.Bucket == bucket && x.DisabledDate == null && x.Key.Contains(".htm") && (x.DateLinksLastExtracted == null || x.DateLinksLastExtracted < x.ContentLastModified) && x.IsFolder == false).Count(); return(count); } }
public List <SettingsExt> Settings() { using (var client = new LLCContext()) { var settings = client.Settings .Select(x => new SettingsExt { DateCreated = x.DateCreated, DateModified = x.DateModified, Description = x.Description, Id = x.Id, ModifiedUser = x.ModifiedUser, Name = x.Name, Value = x.Value }) .ToList(); settings = settings.OrderBy(x => x.Name).ToList(); return(settings); } }
public List <PackageFilesExt> PackageFiles(string package) { using (var client = new LLCContext()) { var files = (from p in client.PackageFiles join l in client.Links on p.Link equals l.Id where p.PackageId == package select new PackageFilesExt { CourseLocation = p.CourseLocation, Id = p.Id, LinkName = p.LinkName, ParentFolder = p.ParentFolder, Protocol = p.Protocol, Link = l.Url }) .ToList(); return(files); } }