func()

in pkg/client/sonar/permission_template.go [111:130]


func (sc *Client) GetPermissionTemplate(ctx context.Context, name string) (*PermissionTemplate, error) {
	tpls, err := sc.searchPermissionTemplates(ctx, name)
	if err != nil {
		return nil, fmt.Errorf("failed to search for permission templates: %w", err)
	}

	for _, t := range tpls.PermissionTemplates {
		if t.Name == name {
			for _, dt := range tpls.DefaultTemplates {
				if dt.TemplateId == t.ID {
					t.IsDefault = true
					break
				}
			}
			return &t, nil
		}
	}

	return nil, NewHTTPError(http.StatusNotFound, fmt.Sprintf("permission template %s not found", name))
}