Skip to content

Split TimeFieldsProcessor#106

Merged
rfc2822 merged 6 commits intomainfrom
split-timefields-processor
Oct 15, 2025
Merged

Split TimeFieldsProcessor#106
rfc2822 merged 6 commits intomainfrom
split-timefields-processor

Conversation

@rfc2822
Copy link
Member

@rfc2822 rfc2822 commented Oct 14, 2025

Splits TimeFieldProcessor into separate procssors for DTSTART, DTEND and DURATION.

  • Added AndroidTimeField class to handle DTSTART + time zone in the same way as DTEND + time zone; also DTSTART + time zone is used at more than one location.
  • The tzRegistry is now shared between all processors because it is expensive, and we want to use the same timezone objects for corresponding timezone IDs.
  • We never generate DURATION in the iCalendar for compatibility reasons. This has been made explicit and tests have been added.
  • AndroidTimeUtils class has been moved from ical4android to synctools package

@rfc2822 rfc2822 self-assigned this Oct 14, 2025
@rfc2822 rfc2822 added the refactoring Quality improvement of existing functions label Oct 14, 2025
@rfc2822 rfc2822 changed the title split-timefields-processor Split TimeFieldsProcessor Oct 15, 2025
@rfc2822 rfc2822 marked this pull request as ready for review October 15, 2025 11:55
@rfc2822 rfc2822 requested a review from a team as a code owner October 15, 2025 11:55
Copy link
Member

@sunkup sunkup left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I assume the missing net.fortuna.ical4j.model.X imports are on purpose?

Looks good :)

@rfc2822
Copy link
Member Author

rfc2822 commented Oct 15, 2025

I assume the missing net.fortuna.ical4j.model.X imports are on purpose?

Which ones do you mean?

Ah yes, there are two classes with name TimeZone, one from Java and one from ical4j. In the files where we need both of them we have to either use the full package name or use import … as, which I find more confusing.

@rfc2822 rfc2822 merged commit 10e8cd9 into main Oct 15, 2025
9 checks passed
@rfc2822 rfc2822 deleted the split-timefields-processor branch October 15, 2025 17:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

refactoring Quality improvement of existing functions

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants