Kotlin implementation for conveniently handling and modifying iCalendar (RFC 5545) recurrence rules.
Add the following to your build.gradle file:
allprojects {
repositories {
maven { url 'https://jitpack.io' }
}
}
dependencies {
implementation 'com.github.PhilJay:RRule:1.0.3'
}Or add the following to your pom.xml:
<repositories> <repository> <id>jitpack.io</id> <url>https://jitpack.io</url> </repository> </repositories> <dependency> <groupId>com.github.PhilJay</groupId> <artifactId>RRule</artifactId> <version>1.0.3</version> </dependency>
Transform iCalendar RFC 5545 String to RRule object:
val rrule = RRule("RRULE:FREQ=MONTHLY;INTERVAL=2;COUNT=10;BYDAY=1SU,-1SU") // convenient property access rrule.freq rrule.until rrule.count rrule.interval rrule.byDay // ...
Transform RRule object to iCalendar RFC 5545 String:
val rfc5545String = rrule.toRFC5545String()