2022-10-31 10:49:21 +00:00
|
|
|
package handlers
|
|
|
|
|
|
|
|
import . "github.com/xeronith/diamante/contracts/network/http"
|
|
|
|
|
|
|
|
type httpHandlerFactory struct{}
|
|
|
|
|
|
|
|
func (factory *httpHandlerFactory) Handlers() []IHttpHandler {
|
|
|
|
return []IHttpHandler{
|
2023-05-29 10:37:31 +00:00
|
|
|
EchoHandler(), // │ P . /api/v1/echo
|
|
|
|
CheckUsernameAvailabilityHandler(), // │ P . /api/v1/check-username
|
|
|
|
SignupHandler(), // │ P . /api/v1/signup
|
|
|
|
VerifyHandler(), // │ P . /api/v1/verify
|
|
|
|
LoginHandler(), // │ P . /api/v1/login
|
|
|
|
GetProfileByUserHandler(), // │ G . /api/v1/profile
|
|
|
|
UpdateProfileByUserHandler(), // │ P . /api/v1/profile
|
|
|
|
LogoutHandler(), // │ P . /api/v1/logout
|
|
|
|
WebfingerHandler(), // │ G . /.well-known/webfinger
|
|
|
|
GetPackagesHandler(), // │ G . /.well-known/packages.txt
|
2023-07-17 13:41:21 +00:00
|
|
|
GetActorHandler(), // │ G . /users/:username
|
|
|
|
FollowActorHandler(), // │ G . /users/:username/follow
|
2023-05-29 10:37:31 +00:00
|
|
|
AuthorizeInteractionHandler(), // │ G . /authorize_interaction
|
2023-07-17 13:41:21 +00:00
|
|
|
GetFollowersHandler(), // │ G . /users/:username/followers
|
|
|
|
GetFollowingHandler(), // │ G . /users/:username/following
|
|
|
|
PostToOutboxHandler(), // │ P . /users/:username/outbox
|
|
|
|
GetOutboxHandler(), // │ G . /users/:username/outbox
|
|
|
|
PostToInboxHandler(), // │ P . /users/:username/inbox
|
|
|
|
GetInboxHandler(), // │ G . /users/:username/inbox
|
2022-10-31 10:49:21 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
func NewFactory() IHttpHandlerFactory {
|
|
|
|
return &httpHandlerFactory{}
|
|
|
|
}
|