github.com/grantbow/fit@v0.7.1-0.20220916164603-1f7c88ac81e6/issues/Formats.go (about)

     1  package issues
     2  
     3  import (
     4  	"encoding/json"
     5  )
     6  
     7  // ToJSONString encodes an issue. A string and an error are returned.
     8  func (i Issue) ToJSONString() (string, error) {
     9  	iJSONStruct := struct {
    10  		Identifier  string `json:",omitempty"`
    11  		Title       string
    12  		Description string
    13  		Status      string   `json:",omitempty"`
    14  		Priority    string   `json:",omitempty"`
    15  		Milestone   string   `json:",omitempty"`
    16  		Tags        []string `json:",omitempty"`
    17  	}{
    18  		Identifier:  i.Identifier(),
    19  		Title:       i.Title(""),
    20  		Description: i.Description(),
    21  		Status:      i.Status(),
    22  		Priority:    i.Priority(),
    23  		Milestone:   i.Milestone(),
    24  		Tags:        i.StringTags(),
    25  	}
    26  
    27  	iJSON, err := json.Marshal(iJSONStruct)
    28  	if err != nil {
    29  		return "", err
    30  	}
    31  	return string(iJSON), nil
    32  }