@Override
    public ObjectNode toNode() {
        return ObjectNode.objectNodeBuilder()
                .withMember(ID_TEXT, id)
                .withMember(VERSION_TEXT, version)
                .withMember(TYPE_TEXT, type)
                .withMember(TIMESTAMP_TEXT, timestamp)
                .withOptionalMember(TYPE_VERSION_TEXT, getTypeVersion().map(Node::from))
                .withOptionalMember(HOMEPAGE_TEXT, getHomepage().map(Node::from))
                .build();
    }
Converts the metadata contained in TraceMetadata's variables into an ObjectNode.

@return an ObjectNode with that contains StringNodes representing the trace file
metadata
smithy-codegen-core/src/main/java/software/amazon/smithy/codegen/core/trace/TraceMetadata.java