Add persistent storage for directory saving setting

Introduced `DirectoryForSaving` for managing directory paths persistently. Integrated the new setting into relevant modules, ensuring the selected directory is saved and loaded across sessions.
This commit is contained in:
2025-05-11 01:29:07 +05:00
parent 2a7d860cbf
commit 16b32e0167
4 changed files with 72 additions and 14 deletions

View File

@@ -0,0 +1,22 @@
package setting
type DirectoryForSavingContract interface {
GetDirectoryForSaving() (string, error)
SaveDirectoryForSaving(path string) (Setting, error)
}
type DirectoryForSaving struct {
settingRepository RepositoryContract
}
func NewSettingDirectoryForSaving(settingRepository RepositoryContract) *DirectoryForSaving {
return &DirectoryForSaving{settingRepository: settingRepository}
}
func (setting DirectoryForSaving) GetDirectoryForSaving() (string, error) {
return setting.settingRepository.GetValue("directoryForSaving")
}
func (setting DirectoryForSaving) SaveDirectoryForSaving(path string) (Setting, error) {
return setting.settingRepository.CreateOrUpdate("directoryForSaving", path)
}