(data interface{}, oldHeaderName string, newHeaderName string)
| 624 | } |
| 625 | |
| 626 | func XMLEncoder(data interface{}, oldHeaderName string, newHeaderName string) (*string, error) { |
| 627 | // Encode the data to XML |
| 628 | var buf bytes.Buffer |
| 629 | enc := xml.NewEncoder(&buf) |
| 630 | enc.Indent("", " ") |
| 631 | if err := enc.Encode(data); err != nil { |
| 632 | fmt.Println("Error encoding XML:", err) |
| 633 | return nil, err |
| 634 | } |
| 635 | |
| 636 | // Remove the root element and replace with custom header |
| 637 | xmlContent := buf.Bytes() |
| 638 | |
| 639 | xmlContent = bytes.ReplaceAll(xmlContent, []byte("<"+oldHeaderName+">"), []byte("<"+newHeaderName+">")) |
| 640 | xmlContent = bytes.ReplaceAll(xmlContent, []byte("</"+oldHeaderName+">"), []byte("</"+newHeaderName+">")) |
| 641 | |
| 642 | // Add custom XML header |
| 643 | customHeader := []byte(`<?xml version="1.0" encoding="UTF-8"?>`) |
| 644 | xmlContent = append(customHeader, xmlContent...) |
| 645 | |
| 646 | result := string(xmlContent) |
| 647 | return &result, nil |
| 648 | } |
nothing calls this directly
no outgoing calls
no test coverage detected