From af9214a4f95c63d3658c45e431706e8e98e8364d Mon Sep 17 00:00:00 2001 From: Janos Dobronszki Date: Tue, 7 Apr 2020 16:43:43 +0200 Subject: [PATCH] =?UTF-8?q?Setting=20up=20file=20store=20in=20constructor?= =?UTF-8?q?=20and=20not=20in=20init=20which=20is=20o=E2=80=A6=20(#1499)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- file.go | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/file.go b/file.go index cf061fd..26df09e 100644 --- a/file.go +++ b/file.go @@ -32,9 +32,7 @@ func NewStore(opts ...store.Option) store.Store { s := &fileStore{ options: store.Options{}, } - for _, o := range opts { - o(&s.options) - } + s.init(opts...) return s } @@ -46,6 +44,10 @@ type fileStore struct { } func (m *fileStore) Init(opts ...store.Option) error { + return m.init(opts...) +} + +func (m *fileStore) init(opts ...store.Option) error { for _, o := range opts { o(&m.options) } @@ -58,6 +60,9 @@ func (m *fileStore) Init(opts ...store.Option) error { } dir := filepath.Join(DefaultDir, "micro") fname := m.options.Database + ".db" + // Ignoring this as the folder might exist. + // Reads/Writes updates will return with sensible error messages + // about the dir not existing in case this cannot create the path anyway _ = os.Mkdir(dir, 0700) m.dir = dir m.fileName = fname