package model import "time" type AccountMetadata struct { PersonalLedgerProvisioning *LedgerProvisioningMetadata `bson:"personalLedgerProvisioning,omitempty" json:"-"` } type LedgerProvisioningMetadata struct { Source string `bson:"source,omitempty" json:"-"` InvitationRef string `bson:"invitationRef,omitempty" json:"-"` TargetCurrencies []string `bson:"targetCurrencies,omitempty" json:"-"` Created []string `bson:"created,omitempty" json:"-"` AlreadyExisting []string `bson:"alreadyExisting,omitempty" json:"-"` Failed []LedgerProvisioningFailure `bson:"failed,omitempty" json:"-"` Outcome string `bson:"outcome,omitempty" json:"-"` LastErrorClass string `bson:"lastErrorClass,omitempty" json:"-"` LastAttemptAt time.Time `bson:"lastAttemptAt,omitempty" json:"-"` } type LedgerProvisioningFailure struct { Currency string `bson:"currency,omitempty" json:"-"` ErrorClass string `bson:"errorClass,omitempty" json:"-"` } func (m *AccountMetadata) Copy() *AccountMetadata { if m == nil { return nil } copied := *m copied.PersonalLedgerProvisioning = m.PersonalLedgerProvisioning.Copy() return &copied } func (m *LedgerProvisioningMetadata) Copy() *LedgerProvisioningMetadata { if m == nil { return nil } copied := *m copied.TargetCurrencies = append([]string(nil), m.TargetCurrencies...) copied.Created = append([]string(nil), m.Created...) copied.AlreadyExisting = append([]string(nil), m.AlreadyExisting...) copied.Failed = append([]LedgerProvisioningFailure(nil), m.Failed...) return &copied }