Fix more bugs

This commit is contained in:
mcrakhman 2022-11-25 11:40:36 +01:00
parent ff81bf1fac
commit 558cecea76
No known key found for this signature in database
GPG Key ID: DED12CFEF5B8396B
5 changed files with 22 additions and 5 deletions

View File

@ -99,7 +99,13 @@ func (c *treeCache) GetDocument(ctx context.Context, spaceId, id string) (doc te
}
func (c *treeCache) GetTree(ctx context.Context, spaceId, id string) (tr tree.ObjectTree, err error) {
return c.GetDocument(ctx, spaceId, id)
doc, err := c.GetDocument(ctx, spaceId, id)
if err != nil {
return
}
// we have to do this trick, otherwise the compiler won't understand that TextDocument conforms to SyncHandler interface
tr = doc.InnerTree()
return
}
func (c *treeCache) DeleteTree(ctx context.Context, spaceId, treeId string) (err error) {

View File

@ -12,6 +12,7 @@ import (
type TextDocument interface {
tree.ObjectTree
InnerTree() tree.ObjectTree
AddText(text string) error
Text() (string, error)
TreeDump() string
@ -55,6 +56,10 @@ func NewTextDocument(ctx context.Context, space commonspace.Space, id string, li
}, nil
}
func (t *textDocument) InnerTree() tree.ObjectTree {
return t.ObjectTree
}
func (t *textDocument) AddText(text string) (err error) {
content := &testchanges.TextContent_TextAppend{
TextAppend: &testchanges.TextAppend{Text: text},

View File

@ -89,7 +89,7 @@ func (s *service) DeriveSpace(ctx context.Context, payload SpaceDerivePayload) (
func (s *service) NewSpace(ctx context.Context, id string) (Space, error) {
st, err := s.storageProvider.SpaceStorage(id)
if err != nil {
if err != spacesyncproto.ErrSpaceMissing {
if err != storage.ErrSpaceStorageMissing {
return nil, err
}
@ -101,7 +101,6 @@ func (s *service) NewSpace(ctx context.Context, id string) (Space, error) {
} else {
st, err = s.getSpaceStorageFromRemote(ctx, id)
if err != nil {
err = storage.ErrSpaceStorageMissing
return nil, err
}
}
@ -130,6 +129,10 @@ func (s *service) addSpaceStorage(ctx context.Context, spaceDescription SpaceDes
Id: spaceDescription.AclId,
},
SpaceHeaderWithId: spaceDescription.SpaceHeader,
SpaceSettingsWithId: &treechangeproto.RawTreeChangeWithId{
RawChange: spaceDescription.SpaceSettingsPayload,
Id: spaceDescription.SpaceSettingsId,
},
}
st, err = s.storageProvider.CreateSpaceStorage(payload)
if err != nil {

View File

@ -30,5 +30,6 @@ func (d *deleter) delete() {
if err != nil {
log.With(zap.String("id", id), zap.Error(err)).Error("failed to mark object as deleted")
}
log.With(zap.String("id", id), zap.Error(err)).Debug("object successfully deleted")
}
}

View File

@ -7,6 +7,7 @@ import (
"github.com/anytypeio/go-anytype-infrastructure-experiments/common/commonspace/settingsdocument/deletionstate"
"github.com/anytypeio/go-anytype-infrastructure-experiments/common/commonspace/spacesyncproto"
spacestorage "github.com/anytypeio/go-anytype-infrastructure-experiments/common/commonspace/storage"
"github.com/anytypeio/go-anytype-infrastructure-experiments/common/commonspace/synctree"
"github.com/anytypeio/go-anytype-infrastructure-experiments/common/commonspace/synctree/updatelistener"
"github.com/anytypeio/go-anytype-infrastructure-experiments/common/commonspace/treegetter"
"github.com/anytypeio/go-anytype-infrastructure-experiments/common/pkg/acl/tree"
@ -34,7 +35,7 @@ type Deps struct {
}
type settingsDocument struct {
tree.ObjectTree
*synctree.SyncTree
account account.Service
spaceId string
treeGetter treegetter.TreeGetter
@ -98,10 +99,11 @@ func (s *settingsDocument) Rebuild(tr tree.ObjectTree) {
}
func (s *settingsDocument) Init(ctx context.Context) (err error) {
s.ObjectTree, err = s.buildFunc(ctx, s.store.SpaceSettingsId(), s)
syncTree, err := s.buildFunc(ctx, s.store.SpaceSettingsId(), s)
if err != nil {
return
}
s.SyncTree = syncTree.(*synctree.SyncTree)
s.loop.Run()
return
}