introduce FI Factory

This commit is contained in:
Michael Jerger 2024-01-13 16:08:12 +01:00
parent dabd773f6b
commit ca5eaa8c6b
2 changed files with 16 additions and 9 deletions

View file

@ -21,6 +21,18 @@ type FederationInfo struct {
Updated timeutil.TimeStamp `xorm:"updated"`
}
// Factory function for PersonID. Created struct is asserted to be valid
func NewFederationInfo(nodeInfo NodeInfo, hostFqdn string) (FederationInfo, error) {
result := FederationInfo{
HostFqdn: hostFqdn,
NodeInfo: nodeInfo,
}
if valid, err := validation.IsValid(result); !valid {
return FederationInfo{}, err
}
return result, nil
}
// Validate collects error strings in a slice and returns this
func (info FederationInfo) Validate() []string {
var result []string