in sdk/resourcemanager/alertsmanagement/armalertsmanagement/fake/alerts_server.go [156:310]
func (a *AlertsServerTransport) dispatchNewGetAllPager(req *http.Request) (*http.Response, error) {
if a.srv.NewGetAllPager == nil {
return nil, &nonRetriableError{errors.New("fake for method NewGetAllPager not implemented")}
}
newGetAllPager := a.newGetAllPager.get(req)
if newGetAllPager == nil {
const regexStr = `/subscriptions/(?P<subscriptionId>[!#&$-;=?-\[\]_a-zA-Z0-9~%@]+)/providers/Microsoft\.AlertsManagement/alerts`
regex := regexp.MustCompile(regexStr)
matches := regex.FindStringSubmatch(req.URL.EscapedPath())
if matches == nil || len(matches) < 1 {
return nil, fmt.Errorf("failed to parse path %s", req.URL.Path)
}
qp := req.URL.Query()
targetResourceUnescaped, err := url.QueryUnescape(qp.Get("targetResource"))
if err != nil {
return nil, err
}
targetResourceParam := getOptional(targetResourceUnescaped)
targetResourceTypeUnescaped, err := url.QueryUnescape(qp.Get("targetResourceType"))
if err != nil {
return nil, err
}
targetResourceTypeParam := getOptional(targetResourceTypeUnescaped)
targetResourceGroupUnescaped, err := url.QueryUnescape(qp.Get("targetResourceGroup"))
if err != nil {
return nil, err
}
targetResourceGroupParam := getOptional(targetResourceGroupUnescaped)
monitorServiceUnescaped, err := url.QueryUnescape(qp.Get("monitorService"))
if err != nil {
return nil, err
}
monitorServiceParam := getOptional(armalertsmanagement.MonitorService(monitorServiceUnescaped))
monitorConditionUnescaped, err := url.QueryUnescape(qp.Get("monitorCondition"))
if err != nil {
return nil, err
}
monitorConditionParam := getOptional(armalertsmanagement.MonitorCondition(monitorConditionUnescaped))
severityUnescaped, err := url.QueryUnescape(qp.Get("severity"))
if err != nil {
return nil, err
}
severityParam := getOptional(armalertsmanagement.Severity(severityUnescaped))
alertStateUnescaped, err := url.QueryUnescape(qp.Get("alertState"))
if err != nil {
return nil, err
}
alertStateParam := getOptional(armalertsmanagement.AlertState(alertStateUnescaped))
alertRuleUnescaped, err := url.QueryUnescape(qp.Get("alertRule"))
if err != nil {
return nil, err
}
alertRuleParam := getOptional(alertRuleUnescaped)
smartGroupIDUnescaped, err := url.QueryUnescape(qp.Get("smartGroupId"))
if err != nil {
return nil, err
}
smartGroupIDParam := getOptional(smartGroupIDUnescaped)
includeContextUnescaped, err := url.QueryUnescape(qp.Get("includeContext"))
if err != nil {
return nil, err
}
includeContextParam, err := parseOptional(includeContextUnescaped, strconv.ParseBool)
if err != nil {
return nil, err
}
includeEgressConfigUnescaped, err := url.QueryUnescape(qp.Get("includeEgressConfig"))
if err != nil {
return nil, err
}
includeEgressConfigParam, err := parseOptional(includeEgressConfigUnescaped, strconv.ParseBool)
if err != nil {
return nil, err
}
pageCountUnescaped, err := url.QueryUnescape(qp.Get("pageCount"))
if err != nil {
return nil, err
}
pageCountParam, err := parseOptional(pageCountUnescaped, func(v string) (int64, error) {
p, parseErr := strconv.ParseInt(v, 10, 64)
if parseErr != nil {
return 0, parseErr
}
return p, nil
})
if err != nil {
return nil, err
}
sortByUnescaped, err := url.QueryUnescape(qp.Get("sortBy"))
if err != nil {
return nil, err
}
sortByParam := getOptional(armalertsmanagement.AlertsSortByFields(sortByUnescaped))
sortOrderUnescaped, err := url.QueryUnescape(qp.Get("sortOrder"))
if err != nil {
return nil, err
}
sortOrderParam := getOptional(armalertsmanagement.SortOrder(sortOrderUnescaped))
selectUnescaped, err := url.QueryUnescape(qp.Get("select"))
if err != nil {
return nil, err
}
selectParam := getOptional(selectUnescaped)
timeRangeUnescaped, err := url.QueryUnescape(qp.Get("timeRange"))
if err != nil {
return nil, err
}
timeRangeParam := getOptional(armalertsmanagement.TimeRange(timeRangeUnescaped))
customTimeRangeUnescaped, err := url.QueryUnescape(qp.Get("customTimeRange"))
if err != nil {
return nil, err
}
customTimeRangeParam := getOptional(customTimeRangeUnescaped)
var options *armalertsmanagement.AlertsClientGetAllOptions
if targetResourceParam != nil || targetResourceTypeParam != nil || targetResourceGroupParam != nil || monitorServiceParam != nil || monitorConditionParam != nil || severityParam != nil || alertStateParam != nil || alertRuleParam != nil || smartGroupIDParam != nil || includeContextParam != nil || includeEgressConfigParam != nil || pageCountParam != nil || sortByParam != nil || sortOrderParam != nil || selectParam != nil || timeRangeParam != nil || customTimeRangeParam != nil {
options = &armalertsmanagement.AlertsClientGetAllOptions{
TargetResource: targetResourceParam,
TargetResourceType: targetResourceTypeParam,
TargetResourceGroup: targetResourceGroupParam,
MonitorService: monitorServiceParam,
MonitorCondition: monitorConditionParam,
Severity: severityParam,
AlertState: alertStateParam,
AlertRule: alertRuleParam,
SmartGroupID: smartGroupIDParam,
IncludeContext: includeContextParam,
IncludeEgressConfig: includeEgressConfigParam,
PageCount: pageCountParam,
SortBy: sortByParam,
SortOrder: sortOrderParam,
Select: selectParam,
TimeRange: timeRangeParam,
CustomTimeRange: customTimeRangeParam,
}
}
resp := a.srv.NewGetAllPager(options)
newGetAllPager = &resp
a.newGetAllPager.add(req, newGetAllPager)
server.PagerResponderInjectNextLinks(newGetAllPager, req, func(page *armalertsmanagement.AlertsClientGetAllResponse, createLink func() string) {
page.NextLink = to.Ptr(createLink())
})
}
resp, err := server.PagerResponderNext(newGetAllPager, req)
if err != nil {
return nil, err
}
if !contains([]int{http.StatusOK}, resp.StatusCode) {
a.newGetAllPager.remove(req)
return nil, &nonRetriableError{fmt.Errorf("unexpected status code %d. acceptable values are http.StatusOK", resp.StatusCode)}
}
if !server.PagerResponderMore(newGetAllPager) {
a.newGetAllPager.remove(req)
}
return resp, nil
}