mirror of
https://github.com/anyproto/any-sync.git
synced 2025-06-12 10:40:44 +09:00
Merge pull request #52 from anytypeio/derived-id-space
This commit is contained in:
commit
feba2c67d4
2 changed files with 14 additions and 2 deletions
|
@ -172,7 +172,7 @@ func (app *App) Start(ctx context.Context) (err error) {
|
||||||
for i, s := range app.components {
|
for i, s := range app.components {
|
||||||
if err = s.Init(app); err != nil {
|
if err = s.Init(app); err != nil {
|
||||||
closeServices(i)
|
closeServices(i)
|
||||||
return fmt.Errorf("can't init service '%s': %v", s.Name(), err)
|
return fmt.Errorf("can't init service '%s': %w", s.Name(), err)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -181,7 +181,7 @@ func (app *App) Start(ctx context.Context) (err error) {
|
||||||
start := time.Now()
|
start := time.Now()
|
||||||
if err = serviceRun.Run(ctx); err != nil {
|
if err = serviceRun.Run(ctx); err != nil {
|
||||||
closeServices(i)
|
closeServices(i)
|
||||||
return fmt.Errorf("can't run service '%s': %v", serviceRun.Name(), err)
|
return fmt.Errorf("can't run service '%s': %w", serviceRun.Name(), err)
|
||||||
}
|
}
|
||||||
spent := time.Since(start).Milliseconds()
|
spent := time.Since(start).Milliseconds()
|
||||||
app.startStat.SpentMsTotal += spent
|
app.startStat.SpentMsTotal += spent
|
||||||
|
|
|
@ -17,6 +17,7 @@ import (
|
||||||
"github.com/anytypeio/any-sync/commonspace/syncstatus"
|
"github.com/anytypeio/any-sync/commonspace/syncstatus"
|
||||||
"github.com/anytypeio/any-sync/net/peer"
|
"github.com/anytypeio/any-sync/net/peer"
|
||||||
"github.com/anytypeio/any-sync/net/pool"
|
"github.com/anytypeio/any-sync/net/pool"
|
||||||
|
"github.com/anytypeio/any-sync/net/rpc/rpcerr"
|
||||||
"github.com/anytypeio/any-sync/nodeconf"
|
"github.com/anytypeio/any-sync/nodeconf"
|
||||||
"sync/atomic"
|
"sync/atomic"
|
||||||
)
|
)
|
||||||
|
@ -35,6 +36,7 @@ const AddSpaceCtxKey ctxKey = 0
|
||||||
|
|
||||||
type SpaceService interface {
|
type SpaceService interface {
|
||||||
DeriveSpace(ctx context.Context, payload SpaceDerivePayload) (string, error)
|
DeriveSpace(ctx context.Context, payload SpaceDerivePayload) (string, error)
|
||||||
|
DeriveId(ctx context.Context, payload SpaceDerivePayload) (string, error)
|
||||||
CreateSpace(ctx context.Context, payload SpaceCreatePayload) (string, error)
|
CreateSpace(ctx context.Context, payload SpaceCreatePayload) (string, error)
|
||||||
NewSpace(ctx context.Context, id string) (sp Space, err error)
|
NewSpace(ctx context.Context, id string) (sp Space, err error)
|
||||||
app.Component
|
app.Component
|
||||||
|
@ -88,6 +90,15 @@ func (s *spaceService) CreateSpace(ctx context.Context, payload SpaceCreatePaylo
|
||||||
return store.Id(), nil
|
return store.Id(), nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (s *spaceService) DeriveId(ctx context.Context, payload SpaceDerivePayload) (id string, err error) {
|
||||||
|
storageCreate, err := storagePayloadForSpaceDerive(payload)
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
id = storageCreate.SpaceHeaderWithId.Id
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
func (s *spaceService) DeriveSpace(ctx context.Context, payload SpaceDerivePayload) (id string, err error) {
|
func (s *spaceService) DeriveSpace(ctx context.Context, payload SpaceDerivePayload) (id string, err error) {
|
||||||
storageCreate, err := storagePayloadForSpaceDerive(payload)
|
storageCreate, err := storagePayloadForSpaceDerive(payload)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -206,6 +217,7 @@ func (s *spaceService) getSpaceStorageFromRemote(ctx context.Context, id string)
|
||||||
cl := spacesyncproto.NewDRPCSpaceSyncClient(p)
|
cl := spacesyncproto.NewDRPCSpaceSyncClient(p)
|
||||||
res, err := cl.SpacePull(ctx, &spacesyncproto.SpacePullRequest{Id: id})
|
res, err := cl.SpacePull(ctx, &spacesyncproto.SpacePullRequest{Id: id})
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
err = rpcerr.Unwrap(err)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue