Remove duplicated code
This commit is contained in:
parent
a8507d8120
commit
f9a064e9aa
@ -100,13 +100,7 @@ func DeriveSyncTree(ctx context.Context, deps CreateDeps) (t SyncTree, err error
|
|||||||
t = syncTree
|
t = syncTree
|
||||||
syncTree.Lock()
|
syncTree.Lock()
|
||||||
defer syncTree.Unlock()
|
defer syncTree.Unlock()
|
||||||
if syncTree.listener != nil {
|
syncTree.afterBuild()
|
||||||
syncTree.listener.Rebuild(syncTree)
|
|
||||||
}
|
|
||||||
syncTree.treeUsage.Add(1)
|
|
||||||
if syncTree.notifiable != nil {
|
|
||||||
syncTree.notifiable.UpdateHeads(objTree.ID(), objTree.Heads())
|
|
||||||
}
|
|
||||||
|
|
||||||
headUpdate := syncClient.CreateHeadUpdate(t, nil)
|
headUpdate := syncClient.CreateHeadUpdate(t, nil)
|
||||||
err = syncClient.BroadcastAsync(headUpdate)
|
err = syncClient.BroadcastAsync(headUpdate)
|
||||||
@ -136,13 +130,7 @@ func CreateSyncTree(ctx context.Context, deps CreateDeps) (t SyncTree, err error
|
|||||||
syncTree.Lock()
|
syncTree.Lock()
|
||||||
defer syncTree.Unlock()
|
defer syncTree.Unlock()
|
||||||
// TODO: refactor here because the code is duplicated, when we create a tree we should only create a storage and then build a tree
|
// TODO: refactor here because the code is duplicated, when we create a tree we should only create a storage and then build a tree
|
||||||
if syncTree.listener != nil {
|
syncTree.afterBuild()
|
||||||
syncTree.listener.Rebuild(syncTree)
|
|
||||||
}
|
|
||||||
syncTree.treeUsage.Add(1)
|
|
||||||
if syncTree.notifiable != nil {
|
|
||||||
syncTree.notifiable.UpdateHeads(objTree.ID(), objTree.Heads())
|
|
||||||
}
|
|
||||||
|
|
||||||
headUpdate := syncClient.CreateHeadUpdate(t, nil)
|
headUpdate := syncClient.CreateHeadUpdate(t, nil)
|
||||||
err = syncClient.BroadcastAsync(headUpdate)
|
err = syncClient.BroadcastAsync(headUpdate)
|
||||||
@ -240,10 +228,7 @@ func buildSyncTree(ctx context.Context, isFirstBuild bool, deps BuildDeps) (t Sy
|
|||||||
t = syncTree
|
t = syncTree
|
||||||
syncTree.Lock()
|
syncTree.Lock()
|
||||||
defer syncTree.Unlock()
|
defer syncTree.Unlock()
|
||||||
if syncTree.listener != nil {
|
syncTree.afterBuild()
|
||||||
syncTree.listener.Rebuild(syncTree)
|
|
||||||
}
|
|
||||||
syncTree.treeUsage.Add(1)
|
|
||||||
|
|
||||||
headUpdate := syncTree.syncClient.CreateHeadUpdate(t, nil)
|
headUpdate := syncTree.syncClient.CreateHeadUpdate(t, nil)
|
||||||
// here we will have different behaviour based on who is sending this update
|
// here we will have different behaviour based on who is sending this update
|
||||||
@ -353,3 +338,13 @@ func (s *syncTree) Ping() (err error) {
|
|||||||
headUpdate := s.syncClient.CreateHeadUpdate(s, nil)
|
headUpdate := s.syncClient.CreateHeadUpdate(s, nil)
|
||||||
return s.syncClient.BroadcastAsyncOrSendResponsible(headUpdate)
|
return s.syncClient.BroadcastAsyncOrSendResponsible(headUpdate)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (s *syncTree) afterBuild() {
|
||||||
|
if s.listener != nil {
|
||||||
|
s.listener.Rebuild(s)
|
||||||
|
}
|
||||||
|
s.treeUsage.Add(1)
|
||||||
|
if s.notifiable != nil {
|
||||||
|
s.notifiable.UpdateHeads(s.ID(), s.Heads())
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user