org.olat.commons.calendar
Interface CalendarManager

All Superinterfaces:
UserDataDeletable
All Known Implementing Classes:
ICalFileCalendarManager

public interface CalendarManager
extends UserDataDeletable


Field Summary
static int MAX_SUBJECT_DISPLAY_LENGTH
           
static java.lang.String TYPE_COURSE
           
static java.lang.String TYPE_GROUP
           
static java.lang.String TYPE_USER
           
 
Method Summary
 boolean addEventTo(Kalendar cal, KalendarEvent kalendarEvent)
          Add an event to given calendar and save calendar.
 Kalendar buildKalendarFrom(java.lang.String calendarContent, java.lang.String calType, java.lang.String calId)
          Build a Calendar object from String object.
 boolean calendarExists(java.lang.String calendarType, java.lang.String calendarID)
          Check if a calendar already exists for the given id.
 Kalendar createCalendar(java.lang.String calendarType, java.lang.String calendarID)
          Create a new calendar with the given id.
 boolean deleteCalendar(java.lang.String calendarType, java.lang.String calendarID)
          Delete a calendar.
 void deleteCourseCalendar(ICourse course)
          Delete the calendar of the given course.
 void deleteGroupCalendar(BusinessGroup businessGroup)
          Delete the calendar of the given business group.
 void deletePersonalCalendar(Identity identity)
          Delete the personal calendar of an identity.
 KalendarConfig findKalendarConfigForIdentity(Kalendar calendar, UserRequest ureq)
          Get the individual calendar configuration for a specific calendar for a specific identity.
 Kalendar getCalendar(java.lang.String type, java.lang.String calendarID)
          Get a calendar by type and id.
 java.io.File getCalendarFile(java.lang.String type, java.lang.String calendarID)
          get the calendar file name from type and id
 java.io.File getCalendarICalFile(java.lang.String calendarType, java.lang.String calendarID)
          Get a calendar as iCalendar file.
 KalendarRenderWrapper getCourseCalendar(ICourse course)
          Get calendar for course.
 KalendarRenderWrapper getGroupCalendar(BusinessGroup businessGroup)
          Get a group's calendar.
 KalendarRenderWrapper getImportedCalendar(Identity identity, java.lang.String calendarName)
          Get an identity's personal calendar.
 OLATResourceable getOresHelperFor(Kalendar cal)
          Create Ores Helper object.
 KalendarRenderWrapper getPersonalCalendar(Identity identity)
          Get an identity's personal calendar.
 java.util.List<KalendarRecurEvent> getRecurringDatesInPeriod(java.util.Date periodStart, java.util.Date periodEnd, KalendarEvent kEvent)
          Get all recurrings of an event within the given period
 KalendarEvent getRecurringInPeriod(java.util.Date periodStart, java.util.Date periodEnd, KalendarEvent kEvent)
          Get the recurring event
 boolean isRecurringInPeriod(java.util.Date periodStart, java.util.Date periodEnd, KalendarEvent kEvent)
          Check if the event recurs within the given period
 boolean persistCalendar(Kalendar calendar)
          Save a calendar.
 net.fortuna.ical4j.model.Calendar readCalendar(java.lang.String type, java.lang.String calendarID)
          Read the calendar file (.ics) from the olatdata section.
 boolean removeEventFrom(Kalendar cal, KalendarEvent kalendarEvent)
          Remove an event from given calendar and save calendar.
 void saveKalendarConfigForIdentity(KalendarConfig kalendarConfig, Kalendar calendar, UserRequest ureq)
          Save the calendar configuration for a specific calendar for a specific identity.
 boolean updateEventAlreadyInSync(Kalendar cal, KalendarEvent kalendarEvent)
          Update an event of given calendar and save calendar.
 boolean updateEventFrom(Kalendar cal, KalendarEvent kalendarEvent)
          Update an event of given calendar and save calendar.
 
Methods inherited from interface org.olat.user.UserDataDeletable
deleteUserData
 

Field Detail

TYPE_USER

static final java.lang.String TYPE_USER
See Also:
Constant Field Values

TYPE_GROUP

static final java.lang.String TYPE_GROUP
See Also:
Constant Field Values

TYPE_COURSE

static final java.lang.String TYPE_COURSE
See Also:
Constant Field Values

MAX_SUBJECT_DISPLAY_LENGTH

static final int MAX_SUBJECT_DISPLAY_LENGTH
See Also:
Constant Field Values
Method Detail

createCalendar

Kalendar createCalendar(java.lang.String calendarType,
                        java.lang.String calendarID)
Create a new calendar with the given id.

Parameters:
calendarID -
type -
Returns:

calendarExists

boolean calendarExists(java.lang.String calendarType,
                       java.lang.String calendarID)
Check if a calendar already exists for the given id.

Parameters:
calendarID -
type -
Returns:

persistCalendar

boolean persistCalendar(Kalendar calendar)
Save a calendar.

Parameters:
calendar -

deleteCalendar

boolean deleteCalendar(java.lang.String calendarType,
                       java.lang.String calendarID)
Delete a calendar.

Parameters:
calendarType -
calendarID -
Returns:

getCalendarICalFile

java.io.File getCalendarICalFile(java.lang.String calendarType,
                                 java.lang.String calendarID)
Get a calendar as iCalendar file.

Parameters:
calendarType -
calendarID -
Returns:

getPersonalCalendar

KalendarRenderWrapper getPersonalCalendar(Identity identity)
Get an identity's personal calendar. If the calendar does not exist yet, a new calendar will be created. The calendar will be configured with defaults for calendar config.

Parameters:
identity -
Returns:

getImportedCalendar

KalendarRenderWrapper getImportedCalendar(Identity identity,
                                          java.lang.String calendarName)
Get an identity's personal calendar. If the calendar does not exist yet, a new calendar will be created. The calendar will be configured with defaults for calendar config.

Parameters:
identity -
Returns:

deletePersonalCalendar

void deletePersonalCalendar(Identity identity)
Delete the personal calendar of an identity.

Parameters:
identity -

getGroupCalendar

KalendarRenderWrapper getGroupCalendar(BusinessGroup businessGroup)
Get a group's calendar. If the calendar does not yet exist, a new calendar will be created. The calendar will be configured with defaults for calendar config.

Parameters:
businessGroup -
Returns:

deleteGroupCalendar

void deleteGroupCalendar(BusinessGroup businessGroup)
Delete the calendar of the given business group.

Parameters:
businessGroup -

getCourseCalendar

KalendarRenderWrapper getCourseCalendar(ICourse course)
Get calendar for course. If the calendar does not yet exist, a new calendar will be created. The calendar will be configured with defaults for calendar config.

Parameters:
course -
Returns:

getCalendarFile

java.io.File getCalendarFile(java.lang.String type,
                             java.lang.String calendarID)
get the calendar file name from type and id

Parameters:
type -
calendarID -
Returns:

readCalendar

net.fortuna.ical4j.model.Calendar readCalendar(java.lang.String type,
                                               java.lang.String calendarID)
Read the calendar file (.ics) from the olatdata section.

Parameters:
type -
calendarID -
Returns:

deleteCourseCalendar

void deleteCourseCalendar(ICourse course)
Delete the calendar of the given course.

Parameters:
course -

findKalendarConfigForIdentity

KalendarConfig findKalendarConfigForIdentity(Kalendar calendar,
                                             UserRequest ureq)
Get the individual calendar configuration for a specific calendar for a specific identity. If no individual calendar config exists, null is returned.

Parameters:
calendar -
ureq -
Returns:

saveKalendarConfigForIdentity

void saveKalendarConfigForIdentity(KalendarConfig kalendarConfig,
                                   Kalendar calendar,
                                   UserRequest ureq)
Save the calendar configuration for a specific calendar for a specific identity.

Parameters:
kalendarConfig -
calendar -
ureq -

addEventTo

boolean addEventTo(Kalendar cal,
                   KalendarEvent kalendarEvent)
Add an event to given calendar and save calendar.

Parameters:
cal -
kalendarEvent -
Returns:
true if success

removeEventFrom

boolean removeEventFrom(Kalendar cal,
                        KalendarEvent kalendarEvent)
Remove an event from given calendar and save calendar.

Parameters:
cal -
kalendarEvent -
Returns:
true if success

updateEventFrom

boolean updateEventFrom(Kalendar cal,
                        KalendarEvent kalendarEvent)
Update an event of given calendar and save calendar.

Parameters:
cal -
kalendarEvent -
Returns:
true if success

updateEventAlreadyInSync

boolean updateEventAlreadyInSync(Kalendar cal,
                                 KalendarEvent kalendarEvent)
Update an event of given calendar and save calendar. Use this method if the Kalendar is already in a doInSync.

Parameters:
cal -
kalendarEvent -
Returns:
true if success

getCalendar

Kalendar getCalendar(java.lang.String type,
                     java.lang.String calendarID)
Get a calendar by type and id.

Parameters:
type -
calendarID -
Returns:

getRecurringInPeriod

KalendarEvent getRecurringInPeriod(java.util.Date periodStart,
                                   java.util.Date periodEnd,
                                   KalendarEvent kEvent)
Get the recurring event

Parameters:
today -
kEvent -
Returns:
affected KalendarEvent or null if not recurring in period

isRecurringInPeriod

boolean isRecurringInPeriod(java.util.Date periodStart,
                            java.util.Date periodEnd,
                            KalendarEvent kEvent)
Check if the event recurs within the given period

Parameters:
periodStart -
periodEnd -
kEvent -
Returns:
true if event recurs in the given period, otherwise false

getRecurringDatesInPeriod

java.util.List<KalendarRecurEvent> getRecurringDatesInPeriod(java.util.Date periodStart,
                                                             java.util.Date periodEnd,
                                                             KalendarEvent kEvent)
Get all recurrings of an event within the given period

Parameters:
periodStart -
periodEnd -
kEvent -
Returns:
list with KalendarRecurEvent

buildKalendarFrom

Kalendar buildKalendarFrom(java.lang.String calendarContent,
                           java.lang.String calType,
                           java.lang.String calId)
Build a Calendar object from String object.

Parameters:
calendarContent -
Returns:

getOresHelperFor

OLATResourceable getOresHelperFor(Kalendar cal)
Create Ores Helper object.

Parameters:
cal -
Returns:
OLATResourceable for given Kalendar