public void Build(DynamicConfigOptions options) { IPrefixBuilder prefixBuilder = options.IgnorePrefixes ? (IPrefixBuilder) new EmptyPrefixBuilder() : new PrefixBuilder(options.Prefixes); IComparer <Version> versionComparer = options.VersionComparer ?? VersionComparer.Default; ISegmentChecker segmentChecker = options.SegmentChecker ?? SegmentChecker.DefaultOnly; var configReader = new ConfigReader(_configs, prefixBuilder, options.AppVersion, versionComparer, segmentChecker); _config = configReader.ParseConfig(); }
public ConfigReader(List <Dictionary <object, object> > configs, IPrefixBuilder prefixBuilder, Version appVersion, IComparer <Version> versionComparer, ISegmentChecker segmentChecker) { _configs = configs; _appVersion = appVersion; _versionComparer = versionComparer; _segmentChecker = segmentChecker; _keyBuilder = new ConfigKeyBuilder(prefixBuilder); }
public RotatedListener( IPrefixBuilder builder ) { //_prefixBuilder = (builder == null) ? new DefaultPrefixBuilder() : builder; _prefixBuilder = builder; string o = ConfigurationSettings.AppSettings["RotatedListener.LogLocation"]; if (o != null && o.Length != 0) _logLocation = o; if (!Path.IsPathRooted(_logLocation)) _logLocation = Path.Combine( Path.GetDirectoryName(AppDomain.CurrentDomain.SetupInformation.ConfigurationFile), _logLocation); o = ConfigurationSettings.AppSettings["RotatedListener.LogPrefix"]; if (o != null && o.Length != 0) _logPrefix = o; o = ConfigurationSettings.AppSettings["RotatedListener.LogSpan"]; if (o != null && o.Length != 0) _logSpan = TimeSpan.FromMinutes(Convert.ToInt32(o)); _logTime = DateTime.Now; }
/// <summary> /// Метод добавляет нового клиента /// </summary> void AddClient(TcpClient client, IPrefixBuilder pb) { IClientWorker scw = null; switch (_servertype) { case ClientWorkerTypes.Simple: { scw = new SimpleClientWorker(); break; } case ClientWorkerTypes.AsyncRead: { scw = new AsyncReadClientWorker(); break; } default: { scw = new SimpleClientWorker(); break; } } if (scw == null) { ConsoleLogger.LogMessage("No clientworker used!"); return; } scw.Init(client, pb); scw.OnLoopFinish += new EventHandler(worker_OnLoopFinish); lock (clientlist) { if (clientlist.Count == 0) { TUAllClients.MarkInterval(); TSAllClients.Reset(); } clientlist.Add(scw); } ConsoleLogger.LogMessage(String.Format("Added client: {0:S} {1:S}", scw.ToString(),client.Client.RemoteEndPoint.ToString())); scw.StartLoop(); }
public SimplePrefixServer(int port, IPrefixBuilder pb, ClientWorkerTypes servertype) { state = ServerState.Inited; _port = port; _pb = pb; _servertype = servertype; state = ServerState.Inited; clientacceptor = new Thread(new ThreadStart(StartClientLoop)); }
public ConfigKeyBuilder(IPrefixBuilder prefixBuilder) { _prefixBuilder = prefixBuilder; }
public bool Init(TcpClient inclient, IPrefixBuilder pb) { if (pb == null) throw new ArgumentException("Not valid params", "pb"); if (inclient == null) throw new ArgumentException("Not valid params", "inclient"); _pb = pb; tcpclient = inclient; State = ClientState.Inited; return true; }
public PrefixListener(TextWriter writer, string name, IPrefixBuilder prefix) : this(writer, name) { _prefixBuilder = prefix; }
public PrefixListener(string fileName, string name, IPrefixBuilder prefix) : this(fileName, name) { _prefixBuilder = prefix; }
public PrefixListener(Stream stream, string name, IPrefixBuilder prefix) : this(stream, name) { _prefixBuilder = prefix; }
public PrefixListener(TextWriter writer, IPrefixBuilder prefix) : this(writer) { _prefixBuilder = prefix; }
public PrefixListener(Stream stream, IPrefixBuilder prefix) : this(stream) { _prefixBuilder = prefix; }
protected void Init() { _prefixBuilder = new DefaultPrefixBuilder(); }