xref: /aosp_15_r20/external/spdx-tools/tvsaver/saver2v2/save_annotation.go (revision ba677afa8f67bb56cbc794f4d0e378e0da058e16)
1*ba677afaSXin Li// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
2*ba677afaSXin Li
3*ba677afaSXin Lipackage saver2v2
4*ba677afaSXin Li
5*ba677afaSXin Liimport (
6*ba677afaSXin Li	"fmt"
7*ba677afaSXin Li	"io"
8*ba677afaSXin Li
9*ba677afaSXin Li	"github.com/spdx/tools-golang/spdx/common"
10*ba677afaSXin Li	"github.com/spdx/tools-golang/spdx/v2_2"
11*ba677afaSXin Li)
12*ba677afaSXin Li
13*ba677afaSXin Lifunc renderAnnotation2_2(ann *v2_2.Annotation, w io.Writer) error {
14*ba677afaSXin Li	if ann.Annotator.Annotator != "" && ann.Annotator.AnnotatorType != "" {
15*ba677afaSXin Li		fmt.Fprintf(w, "Annotator: %s: %s\n", ann.Annotator.AnnotatorType, ann.Annotator.Annotator)
16*ba677afaSXin Li	}
17*ba677afaSXin Li	if ann.AnnotationDate != "" {
18*ba677afaSXin Li		fmt.Fprintf(w, "AnnotationDate: %s\n", ann.AnnotationDate)
19*ba677afaSXin Li	}
20*ba677afaSXin Li	if ann.AnnotationType != "" {
21*ba677afaSXin Li		fmt.Fprintf(w, "AnnotationType: %s\n", ann.AnnotationType)
22*ba677afaSXin Li	}
23*ba677afaSXin Li	annIDStr := common.RenderDocElementID(ann.AnnotationSPDXIdentifier)
24*ba677afaSXin Li	if annIDStr != "SPDXRef-" {
25*ba677afaSXin Li		fmt.Fprintf(w, "SPDXREF: %s\n", annIDStr)
26*ba677afaSXin Li	}
27*ba677afaSXin Li	if ann.AnnotationComment != "" {
28*ba677afaSXin Li		fmt.Fprintf(w, "AnnotationComment: %s\n", textify(ann.AnnotationComment))
29*ba677afaSXin Li	}
30*ba677afaSXin Li
31*ba677afaSXin Li	return nil
32*ba677afaSXin Li}
33