Blame view

go/src/themaru/vendor/github.com/gin-gonic/gin/render/msgpack.go 1015 Bytes
476d2547e   김태훈   태마루 시스템 설정 / 업데이트...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
  // Copyright 2017 Manu Martinez-Almeida.  All rights reserved.
  // Use of this source code is governed by a MIT style
  // license that can be found in the LICENSE file.
  
  package render
  
  import (
  	"net/http"
  
  	"github.com/ugorji/go/codec"
  )
  
  // MsgPack contains the given interface object.
  type MsgPack struct {
  	Data interface{}
  }
  
  var msgpackContentType = []string{"application/msgpack; charset=utf-8"}
  
  // WriteContentType (MsgPack) writes MsgPack ContentType.
  func (r MsgPack) WriteContentType(w http.ResponseWriter) {
  	writeContentType(w, msgpackContentType)
  }
  
  // Render (MsgPack) encodes the given interface object and writes data with custom ContentType.
  func (r MsgPack) Render(w http.ResponseWriter) error {
  	return WriteMsgPack(w, r.Data)
  }
  
  // WriteMsgPack writes MsgPack ContentType and encodes the given interface object.
  func WriteMsgPack(w http.ResponseWriter, obj interface{}) error {
  	writeContentType(w, msgpackContentType)
  	var mh codec.MsgpackHandle
  	return codec.NewEncoder(w, &mh).Encode(obj)
  }