{"record":{"id":"f9ec9e76daa7f61f","repo":"goharbor/harbor","slug":"empty-name","errorCode":null,"errorMessage":"empty name","messagePattern":"empty name","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"src/pkg/scheduler/callback.go","lineNumber":43,"sourceCode":")\n\nvar (\n\tregistry = make(map[string]CallbackFunc)\n)\n\n// CallbackFunc defines the function that the scheduler calls when triggered\ntype CallbackFunc func(ctx context.Context, param string) error\n\nfunc init() {\n\tif err := task.RegisterCheckInProcessor(JobNameScheduler, triggerCallback); err != nil {\n\t\tlog.Errorf(\"failed to register check in processor for scheduler: %v\", err)\n\t}\n}\n\n// RegisterCallbackFunc registers the callback function which will be called when the scheduler is triggered\nfunc RegisterCallbackFunc(name string, callbackFunc CallbackFunc) error {\n\tif len(name) == 0 {\n\t\treturn errors.New(\"empty name\")\n\t}\n\tif callbackFunc == nil {\n\t\treturn errors.New(\"callback function is nil\")\n\t}\n\n\t_, exist := registry[name]\n\tif exist {\n\t\treturn fmt.Errorf(\"callback function %s already exists\", name)\n\t}\n\tregistry[name] = callbackFunc\n\n\treturn nil\n}\n\nfunc getCallbackFunc(name string) (CallbackFunc, error) {\n\tf, exist := registry[name]\n\tif !exist {\n\t\treturn nil, fmt.Errorf(\"callback function %s not found\", name)","sourceCodeStart":25,"sourceCodeEnd":61,"githubUrl":"https://github.com/goharbor/harbor/blob/7b2fd08cc568955cca339afeefab27372840d936/src/pkg/scheduler/callback.go#L25-L61","documentation":"Error \"empty name\" thrown in goharbor/harbor.","triggerScenarios":"Thrown at src/pkg/scheduler/callback.go:43 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"7b2fd08cc568955cca339afeefab27372840d936","analyzedAt":"2026-08-16T00:00:10.961Z","schemaVersion":2},"datasetVersion":"2026-08-16T03:17:38.424Z"}