@@ -62,8 +62,8 @@ func (m *Mongo) CreateTask(ctx context.Context, task *stepper.Task) error {
62
62
return err
63
63
}
64
64
65
- func (m * Mongo ) SetState (ctx context.Context , id string , state []byte ) error {
66
- query := bson.M {"id" : id }
65
+ func (m * Mongo ) SetState (ctx context.Context , task * stepper. Task , state []byte ) error {
66
+ query := bson.M {"id" : task . ID }
67
67
update := bson.M {"$set" : bson.M {"state" : state }}
68
68
69
69
if err := m .tasks .FindOneAndUpdate (ctx , query , update ).Err (); err != nil {
@@ -164,12 +164,12 @@ func (m *Mongo) GetUnreleasedJobChildren(ctx context.Context, jobId string) (*st
164
164
return task .ToModel (), nil
165
165
}
166
166
167
- func (m * Mongo ) GetUnreleasedTaskChildren (ctx context.Context , id string ) (* stepper.Task , error ) {
167
+ func (m * Mongo ) GetUnreleasedTaskChildren (ctx context.Context , forTask * stepper. Task ) (* stepper.Task , error ) {
168
168
var task Task
169
169
170
170
query := bson.M {
171
171
"status" : bson.M {"$in" : []string {"created" , "in_progress" }},
172
- "parent" : id ,
172
+ "parent" : forTask . ID ,
173
173
}
174
174
175
175
if err := m .tasks .FindOne (ctx , query ).Decode (& task ); err != nil {
@@ -183,8 +183,8 @@ func (m *Mongo) GetUnreleasedTaskChildren(ctx context.Context, id string) (*step
183
183
return task .ToModel (), nil
184
184
}
185
185
186
- func (m * Mongo ) GetRelatedTask (ctx context.Context , task string , id string ) (* stepper.Task , error ) {
187
- query := bson.M {"custom_id" : id , "name" : task , "status" : bson.M {"$ne" : "released" }}
186
+ func (m * Mongo ) GetRelatedTask (ctx context.Context , task * stepper. Task ) (* stepper.Task , error ) {
187
+ query := bson.M {"custom_id" : task . ID , "name" : task . Name , "status" : bson.M {"$ne" : "released" }}
188
188
189
189
var e Task
190
190
@@ -199,10 +199,10 @@ func (m *Mongo) GetRelatedTask(ctx context.Context, task string, id string) (*st
199
199
return e .ToModel (), nil
200
200
}
201
201
202
- func (m * Mongo ) Release (ctx context.Context , name string , nextTimeLaunch time.Time ) error {
202
+ func (m * Mongo ) Release (ctx context.Context , job * stepper. Job , nextTimeLaunch time.Time ) error {
203
203
return m .jobs .FindOneAndUpdate (
204
204
ctx ,
205
- bson.M {"name" : name },
205
+ bson.M {"name" : job . Name },
206
206
bson.M {"$set" : bson.M {
207
207
"lock_at" : nil ,
208
208
"status" : "released" ,
@@ -231,21 +231,21 @@ func (m *Mongo) FailTask(ctx context.Context, task *stepper.Task, handlerErr err
231
231
).Err ()
232
232
}
233
233
234
- func (m * Mongo ) ReleaseTask (ctx context.Context , id string ) error {
234
+ func (m * Mongo ) ReleaseTask (ctx context.Context , task * stepper. Task ) error {
235
235
return m .tasks .FindOneAndUpdate (
236
236
ctx ,
237
- bson.M {"id" : id },
237
+ bson.M {"id" : task . ID },
238
238
bson.M {"$set" : bson.M {
239
239
"lock_at" : nil ,
240
240
"status" : "released" ,
241
241
}},
242
242
).Err ()
243
243
}
244
244
245
- func (m * Mongo ) WaitForSubtasks (ctx context.Context , name string ) error {
245
+ func (m * Mongo ) WaitForSubtasks (ctx context.Context , job * stepper. Job ) error {
246
246
return m .jobs .FindOneAndUpdate (
247
247
ctx ,
248
- bson.M {"name" : name },
248
+ bson.M {"name" : job . Name },
249
249
bson.M {"$set" : bson.M {
250
250
"lock_at" : nil ,
251
251
"status" : "waiting" ,
@@ -254,14 +254,19 @@ func (m *Mongo) WaitForSubtasks(ctx context.Context, name string) error {
254
254
).Err ()
255
255
}
256
256
257
- func (m * Mongo ) WaitTaskForSubtasks (ctx context.Context , id string ) error {
257
+ func (m * Mongo ) WaitTaskForSubtasks (ctx context.Context , task * stepper. Task ) error {
258
258
return m .tasks .FindOneAndUpdate (
259
259
ctx ,
260
- bson.M {"id" : id },
260
+ bson.M {"id" : task . ID },
261
261
bson.M {"$set" : bson.M {
262
262
"lock_at" : nil ,
263
263
"status" : "waiting" ,
264
264
"launchAt" : time .Now ().Add (time .Second * 1 ),
265
265
}},
266
266
).Err ()
267
267
}
268
+
269
+ // TODO add indexes
270
+ func (m * Mongo ) Init (ctx context.Context ) error {
271
+ return nil
272
+ }
0 commit comments