bitfireAT/ical4android

Better separation of AndroidEvent <-> (iCalendar) Event

Closed this issue · 5 comments

ical4j comes with a time zone database that is used for its calculations and for instance to generate VTIMEZONEs which are then exported.

However, Java/Android has its own database (which is used by the calendar provider and the ZoneId, java.util.TimeZone classes). We always need to know which times with time zone are in the "ical4j namespace" and which ones are in "Android namespace".

There should be a proper separation and it should be documented and enforced.

ical4j 4.x comes with major changes. This issue should be done when we have ical4j 4.x (if at all). Depends on #106

Additional note: There are time zone IDs that are known to Android but not to ical4j (should also be handled)

Maybe it would be useful to:

  • create annotations for the "timezone name spaces" (@Ical4jTz, @AndroidTz)
  • define which tz registry is used for what (reading from Android provider, parsing iCals etc)

Idea: maybe

  • dtStart in Event (has iCalendar timezone) →
  • dtAndroidStart in AndroidEvent (converted from Event.dtStart, has Android timezone)

This PR/issue depends on:

Has to be specified in detail when it's time for that.