public MainDownLoader(IContentSaver contentSaver, IEnumerable <IConstraint> constraints, int maxDeepLevel = 0)
        {
            _contentSaver    = contentSaver;
            _urlConstraints  = constraints.Where(c => (c.ConstraintType & ConstraintType.UrlConstraint) != 0).ToList();
            _fileConstraints = constraints.Where(c => (c.ConstraintType & ConstraintType.FileConstraint) != 0).ToList();

            MaxDeepLevel = maxDeepLevel;
        }
Beispiel #2
0
 public ContentManager(ILog log, IBuildOptions buildOptions, IContentSaver contentSaver, IBuildSource buildSource)
 {
     Log               = log;
     _buildOptions     = buildOptions;
     _processorContext = new ContentProcessorContext();
     _processorContext.ContentManager = this;
     _contentSaver           = contentSaver;
     _materialFactoryManager = new MaterialFactoryManager();
     _buildSource            = buildSource;
 }
Beispiel #3
0
 public Crawler(IContentSaver contentSaver, int maxDeepLevel, IDomainConstraint domainConstraint, ILogger logger)
 {
     if (maxDeepLevel < 0)
     {
         throw new ArgumentException($"{nameof(maxDeepLevel)} can't be less than 0");
     }
     this.contentSaver     = contentSaver;
     this.logger           = logger;
     this.domainConstraint = domainConstraint;
     MaxDeepLevel          = maxDeepLevel;
 }
Beispiel #4
0
        public Downloader(IContentSaver contentSaver, IEnumerable <IConstraint> constraints, int maxDeepLevel = 0)
        {
            if (maxDeepLevel < 0)
            {
                throw new ArgumentException($"{nameof(maxDeepLevel)} cannot be less than zero");
            }

            _contentSaver    = contentSaver;
            _urlConstraints  = constraints.Where(c => (c.ConstraintType & ConstraintType.UrlConstraint) != 0).ToList();
            _fileConstraints = constraints.Where(c => (c.ConstraintType & ConstraintType.FileConstraint) != 0).ToList();

            MaxDeepLevel = maxDeepLevel;
        }
 public SiteContentDownloader(IContentSaver contentSaver, ILogger logger, int maxDeepLevel = 0,
                              bool onlyBaseDomain = false)
 {
     if (maxDeepLevel < 0)
     {
         new ArgumentException("Bad argument. Deep kevel can not be less zero");
     }
     _maxDeepLevel   = maxDeepLevel;
     _contentSaver   = contentSaver;
     _logger         = logger;
     _onlyBaseDomain = onlyBaseDomain;
     FileExetention  = new List <string>();
 }
Beispiel #6
0
        public Downloader(ILogger logger, IContentSaver contentSaver, IEnumerable <IRestriction> restrictions, int maxDeepLevel = 0)
        {
            if (maxDeepLevel < 0)
            {
                throw new ArgumentException($"{nameof(maxDeepLevel)} cannot be less than zero");
            }

            this.logger           = logger;
            this.contentSaver     = contentSaver;
            this.urlRestrictions  = restrictions.Where(c => (c.RestrictionType & RestrictionType.UrlRestriction) != 0).ToList();
            this.fileRestrictions = restrictions.Where(c => (c.RestrictionType & RestrictionType.FileRestriction) != 0).ToList();

            MaxDeepLevel = maxDeepLevel;
        }
Beispiel #7
0
 public SaveCommand(IContentSaver contentSaver, string content)
 {
     this.contentSaver = contentSaver;
     this.content      = content;
 }