| 20 | ) |
| 21 | |
| 22 | func (s *DB) DropFolder(folder string) error { |
| 23 | s.folderDBsMut.Lock() |
| 24 | defer s.folderDBsMut.Unlock() |
| 25 | s.updateLock.Lock() |
| 26 | defer s.updateLock.Unlock() |
| 27 | _, err := s.stmt(` |
| 28 | DELETE FROM folders |
| 29 | WHERE folder_id = ? |
| 30 | `).Exec(folder) |
| 31 | if fdb, ok := s.folderDBs[folder]; ok { |
| 32 | fdb.Close() |
| 33 | _ = os.Remove(fdb.path) |
| 34 | _ = os.Remove(fdb.path + "-wal") |
| 35 | _ = os.Remove(fdb.path + "-shm") |
| 36 | delete(s.folderDBs, folder) |
| 37 | } |
| 38 | return wrap(err) |
| 39 | } |
| 40 | |
| 41 | func (s *DB) ListFolders() ([]string, error) { |
| 42 | var res []string |