package file import ( "git.andreafazzi.eu/andrea/probo/lib/models" "git.andreafazzi.eu/andrea/probo/lib/store" ) type ParticipantFileStore = FileStore[*models.Participant, *store.ParticipantStore] func NewParticipantFileStore(config *FileStoreConfig[*models.Participant, *store.ParticipantStore]) (*ParticipantFileStore, error) { return NewFileStore[*models.Participant, *store.ParticipantStore](config, store.NewParticipantStore()) } func NewParticipantDefaultFileStore() (*ParticipantFileStore, error) { return NewParticipantFileStore( &FileStoreConfig[*models.Participant, *store.ParticipantStore]{ FilePathConfig: FilePathConfig{GetDefaultParticipantsDir(), "participant", ".json"}, IndexDirFunc: DefaultIndexDirFunc[*models.Participant, *store.ParticipantStore], CreateEntityFunc: func() *models.Participant { return &models.Participant{ Attributes: make(map[string]string), } }, }, ) }