Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type CalendarFilter ¶
type CalendarFilter struct {
CompFilter *CompFilter `xml:"urn:ietf:params:xml:ns:caldav comp-filter"`
}
type CalendarMultigetRequest ¶
type CalendarMultigetRequest struct {
XMLName xml.Name `xml:"urn:ietf:params:xml:ns:caldav calendar-multiget"`
Prop *CalendarQueryProp `xml:"DAV: prop"`
Hrefs []string `xml:"DAV: href"`
}
CalendarMultigetRequest represents a calendar-multiget REPORT request
type CalendarQueryProp ¶
type CalendarQueryProp struct {
GetETag *struct{} `xml:"DAV: getetag"`
CalendarData *struct{} `xml:"urn:ietf:params:xml:ns:caldav calendar-data"`
}
type CalendarQueryRequest ¶
type CalendarQueryRequest struct {
XMLName xml.Name `xml:"urn:ietf:params:xml:ns:caldav calendar-query"`
Prop *CalendarQueryProp `xml:"DAV: prop"`
Filter *CalendarFilter `xml:"urn:ietf:params:xml:ns:caldav filter"`
}
CalendarQueryRequest represents a calendar-query REPORT request
type CompFilter ¶
type CompFilter struct {
Name string `xml:"name,attr"`
TimeRange *TimeRange `xml:"urn:ietf:params:xml:ns:caldav time-range"`
PropFilter []PropFilter `xml:"urn:ietf:params:xml:ns:caldav prop-filter"`
CompFilter *CompFilter `xml:"urn:ietf:params:xml:ns:caldav comp-filter"`
}
type FreeBusyQueryRequest ¶
type FreeBusyQueryRequest struct {
XMLName xml.Name `xml:"urn:ietf:params:xml:ns:caldav free-busy-query"`
TimeRange *TimeRange `xml:"urn:ietf:params:xml:ns:caldav time-range"`
}
FreeBusyQueryRequest represents a free-busy-query REPORT request
type Handler ¶
type Handler struct {
// contains filtered or unexported fields
}
Handler handles CalDAV-specific requests
func NewHandler ¶
func NewHandler(logger *zap.Logger, calendarService domain.CalendarService, eventService domain.EventService, userService *service.UserService) *Handler
NewHandler creates a new CalDAV handler
func (*Handler) ServeHTTP ¶
func (h *Handler) ServeHTTP(w http.ResponseWriter, r *http.Request)
ServeHTTP implements http.Handler interface
func (*Handler) SetTaskService ¶
func (h *Handler) SetTaskService(taskService domain.TaskService)
SetTaskService sets the task service for VTODO support
type MkCalProp ¶
type MkCalProp struct {
DisplayName string `xml:"DAV: displayname"`
CalendarDescription string `xml:"urn:ietf:params:xml:ns:caldav calendar-description"`
CalendarTimezone string `xml:"urn:ietf:params:xml:ns:caldav calendar-timezone"`
CalendarColor string `xml:"http://apple.com/ns/ical/ calendar-color"`
SupportedCalendarCompSet *SupportedCalendarComponentSet
}
type MkCalendarRequest ¶
type MkCalendarRequest struct {
XMLName xml.Name `xml:"urn:ietf:params:xml:ns:caldav mkcalendar"`
Set *MkCalSet `xml:"DAV: set"`
Prop *MkCalProp `xml:"urn:ietf:params:xml:ns:caldav prop"` // Alternative structure
}
MkCalendarRequest represents a MKCALENDAR request body (RFC 4791)
type PropFilter ¶
Click to show internal directories.
Click to hide internal directories.