private static async Task <RouteResponse> GetRouteResponse <T>(HttpListenerContext context, T data)
        {
            var response   = new RouteResponse(context.Request.ContentType);
            var serializer = ContentTypes.GetSerializer(context.Request.ContentType);

            response.Content = await serializer.SerializeAsync(data);

            return(response);
        }