Exemple #1
0
        public MJpegServer(ILog log, MJpegServerSettings settings)
        {
            _log = log;
            _settings = settings;
            if (settings.SourceSettings.GetFormat() != ImageFormat.Jpeg)
            {
                throw new InvalidDataException("Expected input image format is jpeg!");
            }
            _serverSource = ServerSourceFactory.Create(_log, settings.SourceSettings);

            var sourcei = _serverSource.GetSource();
            try
            {
                _cache = sourcei.PrepareSourceServerCache();
                _serverSource.SetCache(_cache);
            }
            finally
            {
                _serverSource.DisposeClient(sourcei);
            }

            _server = new WebServer(log, _settings.Uri);
            _server.IncomingRequest += HandleRequest;
            _server.Start();
        }
Exemple #2
0
 void IDisposable.Dispose()
 {
     if (_server != null)
     {
         ((IDisposable)_server).Dispose();
         _server = null;
     }
     if (_serverSource != null)
     {
         _serverSource.DisposeServer();
         _serverSource = null;
     }
     if (_cache != null)
     {
         _cache.Dispose();
         _cache = null;
     }
 }
Exemple #3
0
 /// <summary>
 /// Sets cache.
 /// </summary>
 /// <param name="cache">Cache</param>
 public virtual void SetSourceServerCache(ISourceServerCache cache)
 {
     // Don't need it.
 }
 public void SetCache(ISourceServerCache cache)
 {
     _serverCache = cache;
 }
Exemple #5
0
 public override void SetSourceServerCache(ISourceServerCache cache)
 {
     base.SetSourceServerCache(cache);
     _cache = (FolderServerCache)cache;
 }