2023-11-18 11:12:07 +01:00
|
|
|
package file
|
|
|
|
|
|
|
|
import (
|
|
|
|
"git.andreafazzi.eu/andrea/probo/models"
|
|
|
|
"git.andreafazzi.eu/andrea/probo/store"
|
|
|
|
)
|
|
|
|
|
2023-11-21 15:12:13 +01:00
|
|
|
type ParticipantFileStore = FileStore[*models.Participant, *store.ParticipantStore]
|
2023-11-18 11:12:07 +01:00
|
|
|
|
2023-11-21 15:12:13 +01:00
|
|
|
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],
|
|
|
|
},
|
|
|
|
)
|
2023-11-18 11:12:07 +01:00
|
|
|
}
|