aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/dirstore.go15
1 files changed, 13 insertions, 2 deletions
diff --git a/lib/dirstore.go b/lib/dirstore.go
index 862e97a..bb58a9d 100644
--- a/lib/dirstore.go
+++ b/lib/dirstore.go
@@ -1,11 +1,13 @@
package lib
type DirStore struct {
- dirs []string
+ dirs []string
+ msgStores map[string]*MessageStore
}
func NewDirStore() *DirStore {
- return &DirStore{}
+ msgStores := make(map[string]*MessageStore)
+ return &DirStore{msgStores: msgStores}
}
func (store *DirStore) Update(dirs []string) {
@@ -16,3 +18,12 @@ func (store *DirStore) Update(dirs []string) {
func (store *DirStore) List() []string {
return store.dirs
}
+
+func (store *DirStore) MessageStore(dirname string) (*MessageStore, bool) {
+ msgStore, ok := store.msgStores[dirname]
+ return msgStore, ok
+}
+
+func (store *DirStore) SetMessageStore(name string, msgStore *MessageStore) {
+ store.msgStores[name] = msgStore
+}