public override void Handle(HttpListenerRequest request, HttpListenerResponse response)
        {
            var pluginKey = ParsePluginKey(request);

            if (!string.IsNullOrEmpty(pluginKey))
            {
                var plugin = PluginManager.Instance.GetPlugin(pluginKey);

                if (plugin != null)
                {
                    Console.WriteLine("Execute: " + plugin.Name);

                    var pluginResponse = plugin.Instance.GetList(new PluginContext(pluginKey, request, new NameValueCollection(request.QueryString)));

                    if (pluginResponse != null)
                    {
                        WriteResponse(response, ResponseSerializer.ToXml(pluginResponse));
                    }
                    else
                    {
                        WriteResponse(response, HttpStatusCode.NotFound, $"Plugin Playlist is null. Plugin: {pluginKey}");
                    }
                }
                else
                {
                    Console.WriteLine("Plugin Not Found. Plugin:" + pluginKey);

                    WriteResponse(response, HttpStatusCode.NotFound, $"Plugin Not Found. Plugin: {pluginKey}");
                }
            }
            else
            {
                Console.WriteLine("Plugin is not defined in request. Plugin: " + pluginKey);

                WriteResponse(response, HttpStatusCode.NotFound, $"Plugin is not defined in request. Plugin: {pluginKey}");
            }
        }