MCPcopy Create free account
hub / github.com/compozy/agh / ParseTaskListQuery

Function ParseTaskListQuery

internal/api/core/parsers.go:253–281  ·  view source on GitHub ↗

ParseTaskListQuery parses the shared task-list query parameters.

(c *gin.Context)

Source from the content-addressed store, hash-verified

251
252// ParseTaskListQuery parses the shared task-list query parameters.
253func ParseTaskListQuery(c *gin.Context) (contract.TaskListQuery, error) {
254 limit, err := ParseOptionalInt(c.Query("limit"))
255 if err != nil {
256 return contract.TaskListQuery{}, NewTaskValidationError(err)
257 }
258 includeDrafts, err := ParseOptionalBool(c.Query("include_drafts"))
259 if err != nil {
260 return contract.TaskListQuery{}, NewTaskValidationError(err)
261 }
262
263 query := contract.TaskListQuery{
264 Scope: taskpkg.Scope(strings.TrimSpace(c.Query("scope"))).Normalize(),
265 Workspace: strings.TrimSpace(c.Query("workspace")),
266 Status: taskpkg.Status(strings.TrimSpace(c.Query("status"))).Normalize(),
267 Priority: taskpkg.Priority(strings.TrimSpace(c.Query("priority"))).Normalize(),
268 IncludeDrafts: includeDrafts,
269 ApprovalState: taskpkg.ApprovalState(strings.TrimSpace(c.Query("approval_state"))).Normalize(),
270 OwnerKind: taskpkg.OwnerKind(strings.TrimSpace(c.Query("owner_kind"))).Normalize(),
271 OwnerRef: strings.TrimSpace(c.Query("owner_ref")),
272 ParentTaskID: strings.TrimSpace(c.Query("parent_task_id")),
273 NetworkChannel: strings.TrimSpace(c.Query("network_channel")),
274 Query: strings.TrimSpace(c.Query("query")),
275 Limit: limit,
276 }
277 if err := validateParsedTaskListQuery(query); err != nil {
278 return contract.TaskListQuery{}, err
279 }
280 return query, nil
281}
282
283// ParseTaskRunListQuery parses the shared task-run list query parameters.
284func ParseTaskRunListQuery(c *gin.Context) (contract.TaskRunListQuery, error) {

Callers 3

parseTaskListQueryMethod · 0.85
ListTasksMethod · 0.85

Calls 9

ParseOptionalIntFunction · 0.85
NewTaskValidationErrorFunction · 0.85
ParseOptionalBoolFunction · 0.85
ScopeMethod · 0.80
QueryMethod · 0.65
StatusMethod · 0.65
PriorityMethod · 0.65
NormalizeMethod · 0.45