@@ -2,10 +2,12 @@ package main
2
2
3
3
import (
4
4
"fmt"
5
+ bridgeCore "github.com/axieinfinity/bridge-core"
6
+ bridgeCoreStore "github.com/axieinfinity/bridge-core/stores"
7
+ bridgeCoreUtils "github.com/axieinfinity/bridge-core/utils"
5
8
"github.com/axieinfinity/bridge-v2/cmd/utils"
6
9
"github.com/axieinfinity/bridge-v2/internal/stores"
7
- "github.com/axieinfinity/bridge-v2/internal/types"
8
- utils2 "github.com/axieinfinity/bridge-v2/internal/utils"
10
+ "github.com/axieinfinity/bridge-v2/internal/task"
9
11
"github.com/ethereum/go-ethereum/log"
10
12
"github.com/go-co-op/gocron"
11
13
"gopkg.in/urfave/cli.v1"
@@ -29,25 +31,32 @@ var (
29
31
}
30
32
)
31
33
34
+ type cleanerStore struct {
35
+ stores.BridgeStore
36
+ bridgeCoreStore.MainStore
37
+ }
38
+
32
39
type cleaner struct {}
33
40
34
41
func startCleaner (ctx * cli.Context ) error {
35
42
cfg := prepare (ctx )
36
43
return start (cfg )
37
44
}
38
45
39
- func start (cfg * types .Config ) error {
40
- db , err := stores .MustConnectDatabase (cfg )
46
+ func start (cfg * bridgeCore .Config ) error {
47
+ db , err := bridgeCoreStore .MustConnectDatabase (cfg . DB , false )
41
48
if err != nil {
42
49
return err
43
50
}
44
- mainStore := stores .NewMainStore (db )
45
- u := & utils2.Utils {}
51
+ listenHandlerStore := stores .NewBridgeStore (db )
52
+ bridgeStore := bridgeCoreStore .NewMainStore (db )
53
+ store := & cleanerStore {listenHandlerStore , bridgeStore }
54
+ u := bridgeCoreUtils .NewUtils ()
46
55
s := gocron .NewScheduler (time .UTC )
47
56
s .TagsUnique ()
48
57
// start read the configuration and create cleaning schedule
49
58
for name , cleanerCfg := range cfg .Cleaner {
50
- val , err := u .Invoke (& cleaner {}, fmt .Sprintf ("Exec%s" , name ), s , mainStore , cleanerCfg )
59
+ val , err := u .Invoke (& cleaner {}, fmt .Sprintf ("Exec%s" , name ), s , store , cleanerCfg )
51
60
if err != nil || ! val .IsNil () {
52
61
log .Error ("[startCleaner] error while executing a cleaner" , "err" , err , "returnedErr" , val .Interface (), "name" , name )
53
62
}
@@ -67,31 +76,31 @@ func start(cfg *types.Config) error {
67
76
return nil
68
77
}
69
78
70
- func (c * cleaner ) ExecClearSuccessTasks (scheduler * gocron.Scheduler , store types. IMainStore , cfg * types .CleanerConfig ) error {
79
+ func (c * cleaner ) ExecClearSuccessTasks (scheduler * gocron.Scheduler , store * cleanerStore , cfg * bridgeCore .CleanerConfig ) error {
71
80
_ , err := scheduler .Cron (cfg .Cron ).Do (func () {
72
81
if store .GetTaskStore ().Count () <= int64 (cfg .SkipIfLessThan ) {
73
82
return
74
83
}
75
- if err := store .GetTaskStore ().DeleteTasks ([]string {types .STATUS_DONE }, uint64 (time .Now ().Unix ())- cfg .RemoveAfter ); err != nil {
84
+ if err := store .GetTaskStore ().DeleteTasks ([]string {task .STATUS_DONE }, uint64 (time .Now ().Unix ())- cfg .RemoveAfter ); err != nil {
76
85
log .Error ("[ExecClearSuccessTask] error while deleting done tasks" , "err" , err )
77
86
}
78
87
})
79
88
return err
80
89
}
81
90
82
- func (c * cleaner ) ExecClearFailedTasks (scheduler * gocron.Scheduler , store types. IMainStore , cfg * types .CleanerConfig ) error {
91
+ func (c * cleaner ) ExecClearFailedTasks (scheduler * gocron.Scheduler , store * cleanerStore , cfg * bridgeCore .CleanerConfig ) error {
83
92
_ , err := scheduler .Cron (cfg .Cron ).Do (func () {
84
93
if store .GetTaskStore ().Count () <= int64 (cfg .SkipIfLessThan ) {
85
94
return
86
95
}
87
- if err := store .GetTaskStore ().DeleteTasks ([]string {types .STATUS_FAILED }, uint64 (time .Now ().Unix ())- cfg .RemoveAfter ); err != nil {
96
+ if err := store .GetTaskStore ().DeleteTasks ([]string {task .STATUS_FAILED }, uint64 (time .Now ().Unix ())- cfg .RemoveAfter ); err != nil {
88
97
log .Error ("[ExecClearFailedTask] error while deleting failed tasks" , "err" , err )
89
98
}
90
99
})
91
100
return err
92
101
}
93
102
94
- func (c * cleaner ) ExecClearEvents (scheduler * gocron.Scheduler , store types. IMainStore , cfg * types .CleanerConfig ) error {
103
+ func (c * cleaner ) ExecClearEvents (scheduler * gocron.Scheduler , store * cleanerStore , cfg * bridgeCore .CleanerConfig ) error {
95
104
_ , err := scheduler .Cron (cfg .Cron ).Do (func () {
96
105
if store .GetEventStore ().Count () <= int64 (cfg .SkipIfLessThan ) {
97
106
return
@@ -103,24 +112,24 @@ func (c *cleaner) ExecClearEvents(scheduler *gocron.Scheduler, store types.IMain
103
112
return err
104
113
}
105
114
106
- func (c * cleaner ) ExecClearSuccessJobs (scheduler * gocron.Scheduler , store types. IMainStore , cfg * types .CleanerConfig ) error {
115
+ func (c * cleaner ) ExecClearSuccessJobs (scheduler * gocron.Scheduler , store * cleanerStore , cfg * bridgeCore .CleanerConfig ) error {
107
116
_ , err := scheduler .Cron (cfg .Cron ).Do (func () {
108
117
if store .GetJobStore ().Count () <= int64 (cfg .SkipIfLessThan ) {
109
118
return
110
119
}
111
- if err := store .GetJobStore ().DeleteJobs ([]string {types .STATUS_DONE }, uint64 (time .Now ().Unix ())- cfg .RemoveAfter ); err != nil {
120
+ if err := store .GetJobStore ().DeleteJobs ([]string {task .STATUS_DONE }, uint64 (time .Now ().Unix ())- cfg .RemoveAfter ); err != nil {
112
121
log .Error ("[ExecClearSuccessTask] error while deleting done tasks" , "err" , err )
113
122
}
114
123
})
115
124
return err
116
125
}
117
126
118
- func (c * cleaner ) ExecClearFailedJobs (scheduler * gocron.Scheduler , store types. IMainStore , cfg * types .CleanerConfig ) error {
127
+ func (c * cleaner ) ExecClearFailedJobs (scheduler * gocron.Scheduler , store * cleanerStore , cfg * bridgeCore .CleanerConfig ) error {
119
128
_ , err := scheduler .Cron (cfg .Cron ).Do (func () {
120
129
if store .GetJobStore ().Count () <= int64 (cfg .SkipIfLessThan ) {
121
130
return
122
131
}
123
- if err := store .GetJobStore ().DeleteJobs ([]string {types .STATUS_FAILED }, uint64 (time .Now ().Unix ())- cfg .RemoveAfter ); err != nil {
132
+ if err := store .GetJobStore ().DeleteJobs ([]string {task .STATUS_FAILED }, uint64 (time .Now ().Unix ())- cfg .RemoveAfter ); err != nil {
124
133
log .Error ("[ExecClearFailedJobs] error while deleting ExecCleanFailedJobs tasks" , "err" , err )
125
134
}
126
135
})
0 commit comments