Better caldav support (#73)
This commit is contained in:
29
vendor/github.com/samedi/caldav-go/handler.go
generated
vendored
Normal file
29
vendor/github.com/samedi/caldav-go/handler.go
generated
vendored
Normal file
@ -0,0 +1,29 @@
|
||||
package caldav
|
||||
|
||||
import (
|
||||
"net/http"
|
||||
|
||||
"github.com/samedi/caldav-go/data"
|
||||
"github.com/samedi/caldav-go/handlers"
|
||||
)
|
||||
|
||||
// RequestHandler handles the given CALDAV request and writes the reponse righ away. This function is to be
|
||||
// used by passing it directly as the handle func to the `http` lib. Example: http.HandleFunc("/", caldav.RequestHandler).
|
||||
func RequestHandler(writer http.ResponseWriter, request *http.Request) {
|
||||
response := HandleRequest(request)
|
||||
response.Write(writer)
|
||||
}
|
||||
|
||||
// HandleRequest handles the given CALDAV request and returns the response. Useful when the caller
|
||||
// wants to do something else with the response before writing it to the response stream.
|
||||
func HandleRequest(request *http.Request) *handlers.Response {
|
||||
handler := handlers.NewHandler(request)
|
||||
return handler.Handle()
|
||||
}
|
||||
|
||||
// HandleRequestWithStorage handles the request the same way as `HandleRequest` does, but before,
|
||||
// it sets the given storage that will be used throughout the request handling flow.
|
||||
func HandleRequestWithStorage(request *http.Request, stg data.Storage) *handlers.Response {
|
||||
SetupStorage(stg)
|
||||
return HandleRequest(request)
|
||||
}
|
Reference in New Issue
Block a user