59 lines
1.1 KiB
Go
59 lines
1.1 KiB
Go
// Copyright (C) 2023 Marius Schellenberger
|
|
|
|
package server
|
|
|
|
import (
|
|
"git.giftfish.de/ston1th/keyctl/pkg/api/types"
|
|
"git.giftfish.de/ston1th/keyctl/pkg/api/v1/schema"
|
|
"git.giftfish.de/ston1th/keyctl/pkg/core"
|
|
)
|
|
|
|
const (
|
|
healthz = "/healthz"
|
|
keyID = schema.KeyPath + core.IDRoute
|
|
keyReqID = schema.KeyPath + core.IDRoute + core.AIDRoute
|
|
reqID = schema.ReqPath + core.IDRoute
|
|
)
|
|
|
|
var Routes = []types.Route{
|
|
{
|
|
Path: healthz,
|
|
Handler: healthzHandler,
|
|
Methods: []string{"GET"},
|
|
},
|
|
{
|
|
Path: schema.KeyPath,
|
|
Handler: local(keyListHandler),
|
|
Methods: []string{"GET"},
|
|
},
|
|
{
|
|
Path: schema.KeyPath,
|
|
Handler: local(newHandler),
|
|
Methods: []string{"POST"},
|
|
},
|
|
{
|
|
Path: keyID,
|
|
Handler: keyHandler,
|
|
Methods: []string{"GET"},
|
|
},
|
|
{
|
|
Path: keyReqID,
|
|
Handler: keyHandler,
|
|
Methods: []string{"GET"},
|
|
},
|
|
{
|
|
Path: keyID,
|
|
Handler: local(keyHandler),
|
|
Methods: []string{"DELETE"},
|
|
},
|
|
{
|
|
Path: schema.ReqPath,
|
|
Handler: local(reqListHandler),
|
|
Methods: []string{"GET"},
|
|
},
|
|
{
|
|
Path: reqID,
|
|
Handler: local(reqHandler),
|
|
Methods: []string{"PUT", "DELETE"},
|
|
},
|
|
}
|