private static void ValidateOptions(DetectionOptions options) { if (options.Responsive.Disable && options.Responsive.IncludeWebApi) { throw new InvalidOperationException("IncludeWebApi is not needed if already Disable"); } }
internal static ResponsiveService ResponsiveService(string agent, DetectionOptions options = null !) { var accessor = CreateHttpContextAccessor(agent); var device = DeviceService(agent); return(ResponsiveService(accessor, device, options)); }
public static ResponsiveService Responsive(string agent, DetectionOptions options = null) { var accessor = HttpContextAccessor(agent); var device = Device(agent); return(Responsive(accessor, device, options)); }
public MultiStreamBatchedProcessorPipeline([DisallowNull] ILogger <MultiStreamBatchedProcessorPipeline> logger, IOptions <VideoStreamsOptions> options, IOptions <DetectionOptions> detectionOptions, HeartbeatHealthCheck <MultiStreamBatchedProcessorPipeline> healthCheck, IBatchedDnnDetector detector, IEnumerable <IAsyncSingleResultProcessor> resultProcessors) : base(logger, options) { if (resultProcessors is null) { throw new ArgumentNullException(nameof(resultProcessors)); } if (detector is null) { throw new ArgumentNullException(nameof(detector)); } if (healthCheck is null) { throw new ArgumentNullException(nameof(healthCheck)); } _detector = detector; _resultProcessors = new List <IAsyncSingleResultProcessor>(resultProcessors); _healthCheck = healthCheck; _streamsConfig = Options; _detectionOptions = GetValidatedOptions(detectionOptions); Logger.LogInformation("Loaded configuration for {numberOfStreams} streams:{streamIds}", _streamsConfig.Count, String.Join(",", _streamsConfig.Select(s => s.Id))); }
public CrawlerService(IUserAgentService useragent, DetectionOptions options) { var agent = useragent.UserAgent; Name = GetCrawler(agent, options.Crawler.Others); IsCrawler = Name != Crawler.Unknown; Version = GetVersion(agent); }
public void OptionCrawlerForOthers() { var agent = "starnic"; var options = new DetectionOptions(); options.Crawler.Others.Add("starnic"); var resolver = MockService.CrawlerService(agent, options); Assert.True(resolver.IsCrawler); Assert.Equal(Crawler.Others, resolver.Name); }
public void DefaultMobile() { var options = new DetectionOptions(); options.Responsive.DefaultDesktop = Device.Mobile; options.Responsive.DefaultTablet = Device.Mobile; options.Responsive.DefaultMobile = Device.Mobile; Assert.Equal(Device.Mobile, MockService.Responsive("mobile", options).View); Assert.Equal(Device.Mobile, MockService.Responsive("tablet", options).View); Assert.Equal(Device.Mobile, MockService.Responsive("desktop", options).View); }
public CrawlerService(IUserAgentService useragent, DetectionOptions options) { _useragent = useragent; _options = options; }
public ResponsiveService(IHttpContextAccessor accessor, IDeviceService deviceService, DetectionOptions options) { if (accessor is null) { throw new ArgumentNullException(nameof(accessor)); } if (deviceService is null) { throw new ArgumentNullException(nameof(deviceService)); } options = options ?? new DetectionOptions(); _context = accessor.HttpContext; _defaultView = DefaultView(deviceService.Type, options.Responsive); }
private static void ValidateOptions(DetectionOptions options) { }
internal static CrawlerService CrawlerService(string agent, DetectionOptions options) => new CrawlerService(UserAgentService(agent), options);
internal static ResponsiveService ResponsiveService(IHttpContextAccessor accessor, IDeviceService device, DetectionOptions options = null !) => new ResponsiveService(accessor, device, options);
public static CrawlerService Crawler(string agent, DetectionOptions options) => new CrawlerService(UserAgent(agent), options);