MCPcopy Create free account
hub / github.com/daodst/chat / GetPushRulesByKind

Function GetPushRulesByKind

clientapi/routing/pushrules.go:59–76  ·  view source on GitHub ↗
(ctx context.Context, scope, kind string, device *userapi.Device, userAPI userapi.ClientUserAPI)

Source from the content-addressed store, hash-verified

57}
58
59func GetPushRulesByKind(ctx context.Context, scope, kind string, device *userapi.Device, userAPI userapi.ClientUserAPI) util.JSONResponse {
60 ruleSets, err := queryPushRules(ctx, device.UserID, userAPI)
61 if err != nil {
62 return errorResponse(ctx, err, "queryPushRules failed")
63 }
64 ruleSet := pushRuleSetByScope(ruleSets, pushrules.Scope(scope))
65 if ruleSet == nil {
66 return errorResponse(ctx, jsonerror.InvalidArgumentValue("invalid push rule set"), "pushRuleSetByScope failed")
67 }
68 rulesPtr := pushRuleSetKindPointer(ruleSet, pushrules.Kind(kind))
69 if rulesPtr == nil {
70 return errorResponse(ctx, jsonerror.InvalidArgumentValue("invalid push rules kind"), "pushRuleSetKindPointer failed")
71 }
72 return util.JSONResponse{
73 Code: http.StatusOK,
74 JSON: *rulesPtr,
75 }
76}
77
78func GetPushRuleByRuleID(ctx context.Context, scope, kind, ruleID string, device *userapi.Device, userAPI userapi.ClientUserAPI) util.JSONResponse {
79 ruleSets, err := queryPushRules(ctx, device.UserID, userAPI)

Callers 1

SetupFunction · 0.85

Calls 4

queryPushRulesFunction · 0.85
errorResponseFunction · 0.85
pushRuleSetByScopeFunction · 0.85
pushRuleSetKindPointerFunction · 0.85

Tested by

no test coverage detected