textualize/storage/Storage.go
Yehoshua Sandler 7dd6de064f
Refactor Context Groups & Area Detection (#4)
* feat: make new connections

* refact: context groups | feat: area detection

and a bunch of small things. hate yourself for this massive commit
2023-09-02 10:58:38 -05:00

34 lines
1.2 KiB
Go

package storage
import (
"textualize/entities"
local "textualize/storage/Local"
)
type Driver interface {
WriteUserData(entities.User) bool
ReadUserData() entities.User
WriteProjectData(entities.Project) bool
ReadProjectDataByName(string) entities.Project
ReadAllProjects() []entities.Project
WriteDocumentCollection(entities.DocumentCollection, string) bool
ReadDocumentCollection(string) entities.DocumentCollection
WriteGroupCollection(entities.GroupCollection, string) bool
ReadGroupCollection(string) entities.GroupCollection
WriteProcessedTextCollection(entities.ProcessedTextCollection, string) bool
ReadProcessedTextCollection(string) entities.ProcessedTextCollection
WriteProcessedUserMarkdownCollection(entities.ProcessedUserMarkdownCollection, string) bool
ReadProcessedUserMarkdownCollection(string) entities.ProcessedUserMarkdownCollection
WriteContextGroupCollection([]entities.SerializedLinkedProcessedArea, string) bool
ReadContextGroupCollection(string) []entities.SerializedLinkedProcessedArea
}
var driverInstance Driver
func GetDriver() Driver {
if driverInstance == nil {
driverInstance = local.LocalDriver{}
}
return driverInstance
}