diff --git a/csaf/models.go b/csaf/models.go index 683c4bd..d9197d5 100644 --- a/csaf/models.go +++ b/csaf/models.go @@ -318,6 +318,24 @@ func (a *Aggregator) Validate() error { return nil } +// UnmarshalText implements the encoding.TextUnmarshaller interface. +func (mdv *MetadataVersion) UnmarshalText(data []byte) error { + s, err := metadataVersionPattern(data) + if err == nil { + *mdv = MetadataVersion(s) + } + return err +} + +// UnmarshalText implements the encoding.TextUnmarshaller interface. +func (mdr *MetadataRole) UnmarshalText(data []byte) error { + s, err := metadataRolePattern(data) + if err == nil { + *mdr = MetadataRole(s) + } + return err +} + // UnmarshalText implements the encoding.TextUnmarshaller interface. func (ac *AggregatorCategory) UnmarshalText(data []byte) error { s, err := aggregatorCategoryPattern(data)