Skip to content

Refactor remaining field processing into dedicated processors#81

Merged
rfc2822 merged 7 commits intomainfrom
all-processors
Sep 23, 2025
Merged

Refactor remaining field processing into dedicated processors#81
rfc2822 merged 7 commits intomainfrom
all-processors

Conversation

@rfc2822
Copy link
Member

@rfc2822 rfc2822 commented Sep 22, 2025

  • Moves remaining processors into dedicated classes.
  • Logic is only minimally touched.
  • Defines remaining tests.

@rfc2822 rfc2822 self-assigned this Sep 22, 2025
@rfc2822 rfc2822 added the refactoring Quality improvement of existing functions label Sep 22, 2025
@rfc2822 rfc2822 requested a review from Copilot September 22, 2025 14:23
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This pull request refactors calendar event processing by extracting inline field processing logic into dedicated processor classes, improving code organization and maintainability. The main changes involve moving time field handling, recurrence field processing, and other event field processing logic into specialized processor classes.

  • Extracts time field processing (DTSTART, DTEND, DURATION) into TimeFieldsProcessor
  • Creates dedicated processors for recurrence fields and original instance time handling
  • Refactors the main LegacyAndroidEventProcessor to use the new processor architecture

Reviewed Changes

Copilot reviewed 12 out of 12 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
TimeFieldsProcessor.kt New processor handling DTSTART, DTEND, DURATION, and ALL_DAY field processing
OriginalInstanceTimeProcessor.kt New processor for handling ORIGINAL_INSTANCE_TIME field processing
RecurrenceFieldsProcessor.kt New processor for handling RRULE, RDATE, EXRULE, EXDATE fields
LegacyAndroidEventProcessor.kt Refactored to use new processor architecture, removing inline field processing
RemindersProcessor.kt Updated to use event title from entity instead of to.summary
AndroidEventFieldProcessor.kt Added exception documentation
TimeFieldsBuilder.kt Updated exception type from local to remote resource
AndroidEntityBuilder.kt Added exception documentation
Various test files New test files for the extracted processors and updated existing tests

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

@rfc2822 rfc2822 marked this pull request as ready for review September 22, 2025 14:25
@rfc2822 rfc2822 linked an issue Sep 22, 2025 that may be closed by this pull request
@rfc2822 rfc2822 requested a review from sunkup September 22, 2025 14:31
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.

It already looks so much cleaner now: 👍

@rfc2822 rfc2822 merged commit c740cb1 into main Sep 23, 2025
11 checks passed
@rfc2822 rfc2822 deleted the all-processors branch September 23, 2025 08:03
@github-project-automation github-project-automation bot moved this from Todo to Done in DAVx⁵ Releases Sep 23, 2025
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

Archived in project

Development

Successfully merging this pull request may close these issues.

Refactor LegacyAndroidEventProcessor

2 participants