public TargetingRadar(Configuration.HostSection config, DetectorBase[] detectors) { Enabled = config.Targeting.Enabled; if (!config.Targeting.Enabled || config.Targeting.IsCleared) { Detectors = Enumerable.Empty <DetectorBase>(); return; } var removedDetectors = new HashSet <string>(config.Targeting.RemovedElements.Select(t => t.Name)); var sortableDetectors = detectors.Where(d => !removedDetectors.Contains(d.Name)).ToList(); sortableDetectors.Sort(); Detectors = sortableDetectors; }
public SecurityEnforcer(Persistence.IPersister persister, ISecurityManager security, ContentActivator activator, Web.IUrlParser urlParser, Web.IWebContext webContext, Configuration.HostSection config) { this.webContext = webContext; this.persister = persister; this.security = security; this.activator = activator; this.urlParser = urlParser; this.permissionDeniedHttpCode = config.Web.PermissionDeniedHttpCode; }
public MessageBroker(IChannel channel, IWorker worker, IReceiver[] receivers, Configuration.HostSection config) { this.channel = channel; this.worker = worker; this.receivers = receivers.ToLookup(r => r.MessageType); this.Name = config.Messaging.SenderName; this.Enabled = config.Messaging.Enabled; this.Async = config.Messaging.Async; this.OnlyFromMachineNamed = config.Messaging.Targets.OnlyFromMachineNamed; this.SharedSecret = config.Messaging.Targets.SharedSecret; this.Targets = config.Messaging.Targets.AllElements.Select(te => new MessageTarget { Name = te.Name, Address = te.Address, ExceptFromMachineNamed = te.ExceptFromMachineNamed }).ToArray(); }