public IBlog GetBlog(string blogUrl, string path, string filenameTemplate) { blogUrl = _urlValidator.AddHttpsProtocol(blogUrl); if (_urlValidator.IsValidTumblrUrl(blogUrl)) { return(TumblrBlog.Create(blogUrl, path, filenameTemplate)); } if (_urlValidator.IsTumbexUrl(blogUrl)) { return(TumblrBlog.Create(CreateTumblrUrlFromTumbex(blogUrl), path, filenameTemplate)); } if (_urlValidator.IsValidTumblrHiddenUrl(blogUrl)) { return(TumblrHiddenBlog.Create(blogUrl, path, filenameTemplate)); } if (_urlValidator.IsValidTumblrLikedByUrl(blogUrl)) { return(TumblrLikedByBlog.Create(blogUrl, path, filenameTemplate)); } if (_urlValidator.IsValidTumblrSearchUrl(blogUrl)) { return(TumblrSearchBlog.Create(blogUrl, path, filenameTemplate)); } if (_urlValidator.IsValidTumblrTagSearchUrl(blogUrl)) { return(TumblrTagSearchBlog.Create(blogUrl, path, filenameTemplate)); } throw new ArgumentException("Website is not supported!", nameof(blogUrl)); }
public static Blog Create(string url, string location) { var blog = new TumblrTagSearchBlog() { Url = ExtractUrl(url), Name = ExtractName(url), BlogType = BlogTypes.tumblrtagsearch, Location = location, Online = true, Version = "3", DateAdded = DateTime.Now, links = new List <string>() }; Directory.CreateDirectory(location); Directory.CreateDirectory(Path.Combine(Directory.GetParent(location).FullName, blog.Name)); blog.ChildId = Path.Combine(location, blog.Name + "_files." + blog.BlogType); if (!File.Exists(blog.ChildId)) { IFiles files = new TumblrTagSearchBlogFiles(blog.Name, blog.Location); files.Save(); files = null; } return(blog); }
public IBlog GetBlog(string blogUrl, string path) { if (Validator.IsValidTumblrUrl(blogUrl)) { return(Blog.Create(blogUrl, path, BlogTypes.tumblr)); } if (Validator.IsValidTumblrLikedByUrl(blogUrl)) { return(TumblrLikeByBlog.Create(blogUrl, path, BlogTypes.tlb)); } if (Validator.IsValidTumblrSearchUrl(blogUrl)) { return(TumblrSearchBlog.Create(blogUrl, path, BlogTypes.tumblrsearch)); } if (Validator.IsValidTumblrTagSearchUrl(blogUrl)) { return(TumblrTagSearchBlog.Create(blogUrl, path, BlogTypes.tumblrtagsearch)); } throw new ArgumentException("Website is not supported!", nameof(blogUrl)); }