-
Notifications
You must be signed in to change notification settings - Fork 47
FindById and job identifiers/human names #31
Comments
@utrack I'm not sure I understand. Can you elaborate on what you mean by "readable name"? |
@albrow well uh, term "job type identifiers" is a better term : ) Here's what i mean: welcomeEmailJobs, err := jobs.RegisterType("welcomeEmail", 3, func(user *User) error {
// here be dragons
})
// spam poor guy
job, err := welcomeEmailJobs.ScheduleRecurring(100, time.Now(),time.Second*60, &User{EmailAddress: "foo@example.com"})
if err != nil {
// Handle err
}
... somewhere else
tasks,err := jobs.FindById("welcomeEmail") // it doesn't work but nice to have
// -- tasks would contain job from previous snippet or at least unique string identifiers, which can be used to retrieve scheduled tasks by current FindById() The problem I experience is: there's recurring task that gets registered each time app is started; as they can't be cleaned up in every possible case (say, power failure for app's node) the scheduled tasks pile up. |
Okay I think I understand now. What you want to do is get all jobs of a particular What I would rather do is add a new method on tasks,err := welcomEmailJobs.FindAll()
for _, task := range tasks {
// Do what you want with each task.
} Does that cover your use case? |
Yup, that's even better :) |
Is there any update on this one? @albrow |
@umayr sorry for going dark on this one. I have many projects to maintain and moving forward I'm going to focus on bug fixes and maintenance. I will not be adding any new features to Jobs in the near future, but I would be happy to review PRs. I have also been speaking with a few developers to try and find additional maintainers. I will update the Development Status section of the README to reflect this. |
So jobs.FindById attempts to retrieve job by its unique ID, which is generated randomly - so it's not really possible to fetch a job by "some-identifier". Is there any way to list jobs by their readable name?
The text was updated successfully, but these errors were encountered: