//private void AddIcons(Platinum.MediaConnect server)
        //{
        //    AddIcon(server, "MediaBrowser.Plugins.Dlna.Images.logo-120.jpeg", "image/jpeg", 120, 120, 24, "images/logo-120.jpeg");
        //    AddIcon(server, "MediaBrowser.Plugins.Dlna.Images.logo-48.jpeg", "image/jpeg", 48, 48, 24, "images/logo-48.jpeg");
        //    AddIcon(server, "MediaBrowser.Plugins.Dlna.Images.logo-120.jpeg", "image/png", 120, 120, 24, "images/logo-120.png");
        //    AddIcon(server, "MediaBrowser.Plugins.Dlna.Images.logo-48.jpeg", "image/png", 48, 48, 24, "images/logo-48.png");
        //}
        //private void AddIcon(Platinum.MediaConnect server, string resourceName, string mimeType, int width, int height, int depth,string urlPath)
        //{
        //    byte[] icon;
        //    using (var source = GetType().Assembly.GetManifestResourceStream(resourceName))
        //    {
        //        var length = (int)source.Length;
        //        icon = new byte[length];
        //        source.Read(icon, 0, length-1);
        //        source.Close();
        //    }
        //    server.AddIcon(new Platinum.DeviceIcon(mimeType, width, height, depth, urlPath), icon);
        //}

        internal void CleanupUPnPServer()
        {
            Logger.Info("UPnP Server Stopping");
            if (_Upnp != null && _Upnp.Running)
            {
                _Upnp.Stop();
            }

            if (_PlatinumServer != null)
            {
                _PlatinumServer.BrowseMetadata       -= server_BrowseMetadata;
                _PlatinumServer.BrowseDirectChildren -= server_BrowseDirectChildren;
                _PlatinumServer.ProcessFileRequest   -= server_ProcessFileRequest;
                _PlatinumServer.SearchContainer      -= server_SearchContainer;

                _PlatinumServer.Dispose();
                _PlatinumServer = null;
            }

            if (_Upnp != null)
            {
                _Upnp.Dispose();
                _Upnp = null;
            }
            if (_ItemMap != null)
            {
                _ItemMap.Clear();
                _ItemMap = null;
            }
            Logger.Info("UPnP Server Stopped");
        }