mirror of
https://github.com/eosswedenorg/antelope-api-healthcheck
synced 2026-07-02 11:43:42 +02:00
src/parse_request.go: in ParseRequest() change switch case into a map with factory functions.
This commit is contained in:
parent
b41fb21f6a
commit
15ff583035
1 changed files with 9 additions and 9 deletions
|
|
@ -35,6 +35,13 @@ func ParseArguments(args []string) api.ApiArguments {
|
||||||
|
|
||||||
func ParseRequest(request string) (api.ApiInterface, error) {
|
func ParseRequest(request string) (api.ApiInterface, error) {
|
||||||
|
|
||||||
|
factories := map[string]api.Factory{
|
||||||
|
"v1": api.EosioV1Factory,
|
||||||
|
"v2": api.EosioV2Factory,
|
||||||
|
"contract": api.EosioContractFactory,
|
||||||
|
"debug": api.DebugApiFactory,
|
||||||
|
}
|
||||||
|
|
||||||
// Parse arguments.
|
// Parse arguments.
|
||||||
// -------------------
|
// -------------------
|
||||||
p := strings.Split(strings.TrimSpace(request), "|")
|
p := strings.Split(strings.TrimSpace(request), "|")
|
||||||
|
|
@ -45,15 +52,8 @@ func ParseRequest(request string) (api.ApiInterface, error) {
|
||||||
|
|
||||||
a := ParseArguments(p[1:])
|
a := ParseArguments(p[1:])
|
||||||
|
|
||||||
switch p[0] {
|
if factory, ok := factories[p[0]]; ok {
|
||||||
case "v1":
|
return factory(a), nil
|
||||||
return api.NewEosioV1(a.Url, a.Host, float64(a.NumBlocks / 2)), nil
|
|
||||||
case "v2":
|
|
||||||
return api.NewEosioV2(a.Url, a.Host, int64(a.NumBlocks)), nil
|
|
||||||
case "contract":
|
|
||||||
return api.NewEosioContract(a.Url, float64(a.NumBlocks / 2)), nil
|
|
||||||
case "debug":
|
|
||||||
return api.NewDebugApi(a.Url), nil
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil, fmt.Errorf("invalid API '%s'", p[0])
|
return nil, fmt.Errorf("invalid API '%s'", p[0])
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue