gin/render/xml.go

29 lines
730 B
Go
Raw Permalink Normal View History

// Copyright 2014 Manu Martinez-Almeida. All rights reserved.
2015-05-22 20:21:23 +03:00
// Use of this source code is governed by a MIT style
// license that can be found in the LICENSE file.
package render
import (
"encoding/xml"
"net/http"
)
// XML contains the given interface object.
2015-05-18 16:45:24 +03:00
type XML struct {
2022-03-21 04:43:17 +03:00
Data any
}
var xmlContentType = []string{"application/xml; charset=utf-8"}
2015-05-22 05:44:29 +03:00
// Render (XML) encodes the given interface object and writes data with custom ContentType.
2015-06-04 06:25:21 +03:00
func (r XML) Render(w http.ResponseWriter) error {
r.WriteContentType(w)
2015-05-18 16:45:24 +03:00
return xml.NewEncoder(w).Encode(r.Data)
}
// WriteContentType (XML) writes XML ContentType for response.
func (r XML) WriteContentType(w http.ResponseWriter) {
writeContentType(w, xmlContentType)
}