package api
import "github.com/keys-pub/keys"
type SigchainResponse struct {
KID keys.ID `json:"kid"`
Metadata map[string]Metadata `json:"md,omitempty"`
Statements []*keys.Statement `json:"statements"`
}
func (r SigchainResponse) MetadataFor(st *keys.Statement) Metadata {
md, ok := r.Metadata[st.URL()]
if !ok {
return Metadata{}
}
return md
}
func (r SigchainResponse) Sigchain() (*keys.Sigchain, error) {
sc := keys.NewSigchain(r.KID)
for _, st := range r.Statements {
if err := sc.Add(st); err != nil {
return nil, err
}
}
return sc, nil
}