Documentation ¶
Overview ¶
Package driver defines interfaces to be implemented by calendar drivers as used by package cal.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Attendee ¶
type Attendee interface { // Name of the attendee Name() string // Email of the attendee Email() string // Phone number of the attendee Phone() string }
Attendee of an Event
type Conn ¶
type Conn interface { // GetEvents returns events with a given time range. Further searching // should be done on the retrieved events. GetEvents(dt.TimeRange) ([]Event, error) // Close the connection. Close() error }
Conn is a connection to the external calendar service.
type Driver ¶
type Driver interface { // Open returns a new connection to the calendar server. The name is a // string in a driver-specific format. A database connection is passed // in to enable the driver to retrieve existing auth tokens. Open(db *sqlx.DB, name string) (Conn, error) }
Driver is the interface that must be implemented by a calendar driver.
type Event ¶
type Event interface { // Title of the event Title() string // Location of the event in a free-form string Location() string // StartTime of the event StartTime() *time.Time // DurationInMins of the event. This is used rather than an endtime to // keep client implementations simple and prevent mixing timezones // between start and end dates. DurationInMins() int // Recurring specifies if the event happens more than once. Recurring() bool // RecurringFreq specifies how often the event occurs. RecurringFreq() RecurringFreq // AllDay specifies whether the event is running all day. AllDay() bool // Attendees of the event Attendees() []*Attendee // Create the event on the remote server. Create() error // Update the event on the remote server. Update() error }
Event represents a single event in a calendar.
type RecurringFreq ¶
type RecurringFreq int
RecurringFreq specifies how often an event recurs.
const ( RecurringFreqOnce RecurringFreq = iota RecurringFreqDaily RecurringFreqWeekly RecurringFreqMonthly RecurringFreqYearly )
Define options for event recurring frequencies.
Click to show internal directories.
Click to hide internal directories.