(req toolspkg.CallRequest)
| 409 | } |
| 410 | |
| 411 | func decodeResourceInfoInput(req toolspkg.CallRequest) (resources.ResourceKind, string, error) { |
| 412 | var input resourceInfoInput |
| 413 | if err := decodeNativeInput(req, &input); err != nil { |
| 414 | return "", "", err |
| 415 | } |
| 416 | kindRaw, err := requiredNativeString(req.ToolID, "kind", input.Kind) |
| 417 | if err != nil { |
| 418 | return "", "", err |
| 419 | } |
| 420 | id, err := requiredNativeString(req.ToolID, "id", input.ID) |
| 421 | if err != nil { |
| 422 | return "", "", err |
| 423 | } |
| 424 | kind := resources.ResourceKind(kindRaw) |
| 425 | if err := kind.Validate("kind"); err != nil { |
| 426 | return "", "", nativeResourceToolError(req.ToolID, err) |
| 427 | } |
| 428 | return kind, id, nil |
| 429 | } |
| 430 | |
| 431 | func resourceScopeFromInput(rawKind string, rawID string, path string) (resources.ResourceScope, bool, error) { |
| 432 | if strings.TrimSpace(rawKind) == "" && strings.TrimSpace(rawID) == "" { |
no test coverage detected