EN · DE · RU · FR · ES

#1094: ICalDateUtils.kt

projectforge-business/src/main/kotlin/org/projectforge/business/teamcal/ical/ICalDateUtils.kt Класс Kotlin, projectforge-business/src/main/kotlin/org/projectforge/business/teamcal/ical/ICalDateUtils.kt 44 строки · 18 кода · 22 комментария · 4 пустых
Назначение: Исходный файл: business/teamcal/ical/ICalDateUtils.kt. ICalDateUtils.kt является частью приложения для управления проектами с открытым исходным кодом ProjectForge.

Исходный код (первые 100 строк)

/////////////////////////////////////////////////////////////////////////////
//
// Project ProjectForge Community Edition
//         www.projectforge.org
//
// Copyright (C) 2001-2026 Micromata GmbH, Germany (www.micromata.com)
//
// ProjectForge dual-лицензирован.
//
// Эта версия для сообщества является бесплатным программным обеспечением; вы можете распространять и/или
// изменять его в соответствии с условиями Стандартной общественной лицензии GNU (GNU General Public License) в том виде,
// в котором она опубликована Фондом свободного программного обеспечения; версия 3 Лицензии.
//
// Эта версия для сообщества распространяется в надежде, что она будет полезной,
// но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ; даже без подразумеваемой гарантии
// КОММЕРЧЕСКОЙ ЦЕННОСТИ или ПРИГОДНОСТИ ДЛЯ ОПРЕДЕЛЕННОЙ ЦЕЛИ. См. GNU General
// Public License для получения более подробной информации.
//
// Вы должны были получить копию Стандартной общественной лицензии GNU вместе
// с этой программой; если нет, см. http://www.gnu.org/licenses/.
//
/////////////////////////////////////////////////////////////////////////////

package org.projectforge.business.teamcal.ical

import java.time.LocalDate
import java.time.LocalDateTime
import java.time.ZonedDateTime
import java.time.temporal.Temporal

object ICalDateUtils {
    fun extractLocalDate(date: Temporal): LocalDate {
        return when (date) {
            is ZonedDateTime -> date.toLocalDate()
            is LocalDateTime -> date.toLocalDate()
            is LocalDate -> date
            else -> throw IllegalArgumentException("Неподдерживаемый тип Temporal: ${date::class}")
        }
    }

    fun isSameDay(date1: Temporal, date2: Temporal): Boolean {
        return extractLocalDate(date1) == extractLocalDate(date2)
    }
}

История Git

868d6abb7 2025 -> 2026
63081666f Заголовки исходных файлов: 2024-> 2025.
c193e8288 Ical4j: миграционные материалы... (все тесты пройдены)

868d6abb7

2025 -> 2026
868d6abb75cd191a892911ac8e45058932cf9074
diff --git a/projectforge-business/src/main/kotlin/org/projectforge/business/teamcal/ical/ICalDateUtils.kt b/projectforge-business/src/main/kotlin/org/projectforge/business/teamcal/ical/ICalDateUtils.kt
index 34b87655d..d0b70edcc 100644
--- a/projectforge-business/src/main/kotlin/org/projectforge/business/teamcal/ical/ICalDateUtils.kt
+++ b/projectforge-business/src/main/kotlin/org/projectforge/business/teamcal/ical/ICalDateUtils.kt
@@ -3,7 +3,7 @@
 // Project ProjectForge Community Edition
 //         www.projectforge.org
 //
-// Copyright (C) 2001-2025 Micromata GmbH, Germany (www.micromata.com)
+// Copyright (C) 2001-2026 Micromata GmbH, Germany (www.micromata.com)
 //
 // ProjectForge is dual-licensed.
 //

63081666f

Заголовки исходных файлов: 2024-> 2025.
63081666f620fb87315f01b817e560e0b2f6a33a
diff --git a/projectforge-business/src/main/kotlin/org/projectforge/business/teamcal/ical/ICalDateUtils.kt b/projectforge-business/src/main/kotlin/org/projectforge/business/teamcal/ical/ICalDateUtils.kt
index ba2807658..34b87655d 100644
--- a/projectforge-business/src/main/kotlin/org/projectforge/business/teamcal/ical/ICalDateUtils.kt
+++ b/projectforge-business/src/main/kotlin/org/projectforge/business/teamcal/ical/ICalDateUtils.kt
@@ -3,7 +3,7 @@
 // Project ProjectForge Community Edition
 //         www.projectforge.org
 //
-// Copyright (C) 2001-2024 Micromata GmbH, Germany (www.micromata.com)
+// Copyright (C) 2001-2025 Micromata GmbH, Germany (www.micromata.com)
 //
 // ProjectForge is dual-licensed.
 //

c193e8288

Ical4j: миграционные материалы... (все тесты пройдены)
c193e8288c03be35a08171e2319957a6080381b9
diff --git a/projectforge-business/src/main/kotlin/org/projectforge/business/teamcal/ical/ICalDateUtils.kt b/projectforge-business/src/main/kotlin/org/projectforge/business/teamcal/ical/ICalDateUtils.kt
new file mode 100644
index 000000000..ba2807658
--- /dev/null
+++ b/projectforge-business/src/main/kotlin/org/projectforge/business/teamcal/ical/ICalDateUtils.kt
@@ -0,0 +1,44 @@
+/////////////////////////////////////////////////////////////////////////////
+//
+// Project ProjectForge Community Edition
+//         www.projectforge.org
+//
+// Copyright (C) 2001-2024 Micromata GmbH, Germany (www.micromata.com)
+//
+// ProjectForge dual-лицензирован.
+//
+// Эта версия для сообщества является бесплатным программным обеспечением; вы можете распространять и/или
+// изменять его в соответствии с условиями Стандартной общественной лицензии GNU (GNU General Public License) в том виде,
+// в котором она опубликована Фондом свободного программного обеспечения; версия 3 Лицензии.
+//
+// Эта версия для сообщества распространяется в надежде, что она будет полезной,
+// но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ; даже без подразумеваемой гарантии
+// КОММЕРЧЕСКОЙ ЦЕННОСТИ или ПРИГОДНОСТИ ДЛЯ ОПРЕДЕЛЕННОЙ ЦЕЛИ. См. GNU General
+// Public License для получения более подробной информации.
+//
+// Вы должны были получить копию Стандартной общественной лицензии GNU вместе
+// с этой программой; если нет, см. http://www.gnu.org/licenses/.
+//
+/////////////////////////////////////////////////////////////////////////////
+
+package org.projectforge.business.teamcal.ical
+
+import java.time.LocalDate
+import java.time.LocalDateTime
+import java.time.ZonedDateTime
+import java.time.temporal.Temporal
+
+object ICalDateUtils {
+    fun extractLocalDate(date: Temporal): LocalDate {
+        return when (date) {
+            is ZonedDateTime -> date.toLocalDate()
+            is LocalDateTime -> date.toLocalDate()
+            is LocalDate -> date
+            else -> throw IllegalArgumentException("Неподдерживаемый тип Temporal: ${date::class}")
+        }
+    }
+
+    fun isSameDay(date1: Temporal, date2: Temporal): Boolean {
+        return extractLocalDate(date1) == extractLocalDate(date2)
+    }
+}