MCPcopy Create free account
hub / github.com/apache/devlake / CollectApiMergeRequests

Function CollectApiMergeRequests

backend/plugins/gitlab/tasks/mr_collector.go:44–74  ·  view source on GitHub ↗
(taskCtx plugin.SubTaskContext)

Source from the content-addressed store, hash-verified

42}
43
44func CollectApiMergeRequests(taskCtx plugin.SubTaskContext) errors.Error {
45 rawDataSubTaskArgs, data := CreateRawDataSubTaskArgs(taskCtx, RAW_MERGE_REQUEST_TABLE)
46 apiCollector, err := helper.NewStatefulApiCollector(*rawDataSubTaskArgs)
47 if err != nil {
48 return err
49 }
50
51 err = apiCollector.InitCollector(helper.ApiCollectorArgs{
52 ApiClient: data.ApiClient,
53 PageSize: 100,
54 UrlTemplate: "projects/{{ .Params.ProjectId }}/merge_requests",
55 GetTotalPages: GetTotalPagesFromResponse,
56 ResponseParser: GetRawMessageFromResponse,
57 Query: func(reqData *helper.RequestData) (url.Values, errors.Error) {
58 query, err := GetQuery(reqData)
59 if err != nil {
60 return nil, err
61 }
62 if apiCollector.GetSince() != nil {
63 query.Set("updated_after", apiCollector.GetSince().Format(time.RFC3339))
64 }
65 return query, nil
66 },
67 })
68
69 if err != nil {
70 return err
71 }
72
73 return apiCollector.Execute()
74}

Callers

nothing calls this directly

Calls 6

InitCollectorMethod · 0.95
ExecuteMethod · 0.95
FormatMethod · 0.80
CreateRawDataSubTaskArgsFunction · 0.70
GetQueryFunction · 0.70
GetSinceMethod · 0.45

Tested by

no test coverage detected