github.com/xhghs/rclone@v1.51.1-0.20200430155106-e186a28cced8/cmd/serve/dlna/data/data.go (about) 1 //go:generate go run assets_generate.go 2 // The "go:generate" directive compiles static assets by running assets_generate.go 3 4 package data 5 6 import ( 7 "io/ioutil" 8 "text/template" 9 10 "github.com/pkg/errors" 11 "github.com/rclone/rclone/fs" 12 ) 13 14 // GetTemplate returns the rootDesc XML template 15 func GetTemplate() (tpl *template.Template, err error) { 16 templateFile, err := Assets.Open("rootDesc.xml.tmpl") 17 if err != nil { 18 return nil, errors.Wrap(err, "get template open") 19 } 20 21 defer fs.CheckClose(templateFile, &err) 22 23 templateBytes, err := ioutil.ReadAll(templateFile) 24 if err != nil { 25 return nil, errors.Wrap(err, "get template read") 26 } 27 28 var templateString = string(templateBytes) 29 30 tpl, err = template.New("rootDesc").Parse(templateString) 31 if err != nil { 32 return nil, errors.Wrap(err, "get template parse") 33 } 34 35 return 36 }