...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package signappx
18
19 import (
20 "encoding/xml"
21 "fmt"
22 )
23
24 const xmlHdr = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"%s\"?>\r\n"
25
26 func marshalXML(v interface{}, standalone bool) ([]byte, error) {
27 x, err := xml.Marshal(v)
28 if err != nil {
29 return nil, err
30 }
31 sstr := "no"
32 if standalone {
33 sstr = "yes"
34 }
35 hdr := []byte(fmt.Sprintf(xmlHdr, sstr))
36 ret := make([]byte, len(hdr), len(hdr)+len(x))
37 copy(ret, hdr)
38 ret = append(ret, x...)
39 return ret, nil
40 }
41
View as plain text