adjust for JDK7 compatibility
Project: http://git-wip-us.apache.org/repos/asf/groovy/repo Commit: http://git-wip-us.apache.org/repos/asf/groovy/commit/55865ea9 Tree: http://git-wip-us.apache.org/repos/asf/groovy/tree/55865ea9 Diff: http://git-wip-us.apache.org/repos/asf/groovy/diff/55865ea9 Branch: refs/heads/GROOVY_2_6_X Commit: 55865ea96fa52b30988a9cca33afd08250ed0186 Parents: 718a820 Author: paulk <[email protected]> Authored: Thu Mar 22 00:45:57 2018 +1000 Committer: paulk <[email protected]> Committed: Thu Mar 22 02:01:41 2018 +1000 ---------------------------------------------------------------------- settings.gradle | 9 ++++++--- .../groovy/runtime/DefaultGroovyStaticMethods.java | 8 ++++---- subprojects/groovy-datetime/build.gradle | 5 +++++ .../groovy/datetime/extensions/DateTimeExtensions.java | 12 ++++++------ 4 files changed, 21 insertions(+), 13 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/groovy/blob/55865ea9/settings.gradle ---------------------------------------------------------------------- diff --git a/settings.gradle b/settings.gradle index 180ce83..9ad6235 100644 --- a/settings.gradle +++ b/settings.gradle @@ -19,7 +19,6 @@ def subprojects = ['groovy-ant', 'groovy-bsf', 'groovy-console', - 'groovy-datetime', 'groovy-dateutil', 'groovy-docgenerator', 'groovy-groovydoc', @@ -37,10 +36,14 @@ def subprojects = ['groovy-ant', 'tests-vm8', 'groovy-testng', 'groovy-xml', - 'groovy-macro', - 'performance' + 'groovy-macro' ] +if (JavaVersion.current().isJava8Compatible()) { + subprojects << 'groovy-datetime' + subprojects << 'performance' +} + if (hasProperty('stressTests')) { subprojects << 'stress' } http://git-wip-us.apache.org/repos/asf/groovy/blob/55865ea9/src/main/java/org/codehaus/groovy/runtime/DefaultGroovyStaticMethods.java ---------------------------------------------------------------------- diff --git a/src/main/java/org/codehaus/groovy/runtime/DefaultGroovyStaticMethods.java b/src/main/java/org/codehaus/groovy/runtime/DefaultGroovyStaticMethods.java index 421649f..04421af 100644 --- a/src/main/java/org/codehaus/groovy/runtime/DefaultGroovyStaticMethods.java +++ b/src/main/java/org/codehaus/groovy/runtime/DefaultGroovyStaticMethods.java @@ -26,11 +26,11 @@ import java.io.File; import java.io.IOException; import java.text.ParseException; import java.text.SimpleDateFormat; -import java.time.*; -import java.time.format.DateTimeFormatter; -import java.util.*; +import java.util.Date; +import java.util.Locale; +import java.util.ResourceBundle; +import java.util.TimeZone; import java.util.regex.Matcher; -import java.util.stream.Collectors; /** * This class defines all the new static groovy methods which appear on normal http://git-wip-us.apache.org/repos/asf/groovy/blob/55865ea9/subprojects/groovy-datetime/build.gradle ---------------------------------------------------------------------- diff --git a/subprojects/groovy-datetime/build.gradle b/subprojects/groovy-datetime/build.gradle index 92326c7..52bdf47 100644 --- a/subprojects/groovy-datetime/build.gradle +++ b/subprojects/groovy-datetime/build.gradle @@ -22,6 +22,11 @@ dependencies { testCompile project(':groovy-dateutil') } +tasks.withType(JavaCompile) { + sourceCompatibility = 1.8 + targetCompatibility = 1.8 +} + task moduleDescriptor(type: org.codehaus.groovy.gradle.WriteExtensionDescriptorTask) { extensionClasses = 'org.apache.groovy.datetime.extensions.DateTimeExtensions' staticExtensionClasses = 'org.apache.groovy.datetime.extensions.DateTimeStaticExtensions' http://git-wip-us.apache.org/repos/asf/groovy/blob/55865ea9/subprojects/groovy-datetime/src/main/java/org/apache/groovy/datetime/extensions/DateTimeExtensions.java ---------------------------------------------------------------------- diff --git a/subprojects/groovy-datetime/src/main/java/org/apache/groovy/datetime/extensions/DateTimeExtensions.java b/subprojects/groovy-datetime/src/main/java/org/apache/groovy/datetime/extensions/DateTimeExtensions.java index 9ba6014..28ec8e1 100644 --- a/subprojects/groovy-datetime/src/main/java/org/apache/groovy/datetime/extensions/DateTimeExtensions.java +++ b/subprojects/groovy-datetime/src/main/java/org/apache/groovy/datetime/extensions/DateTimeExtensions.java @@ -93,12 +93,12 @@ public class DateTimeExtensions { * what the unit should be for this number. */ private static TemporalUnit defaultUnitFor(Temporal temporal) { - return DEFAULT_UNITS.entrySet() - .stream() - .filter(e -> e.getKey().isAssignableFrom(temporal.getClass())) - .findFirst() - .map(Map.Entry::getValue) - .orElse(ChronoUnit.SECONDS); + for (Map.Entry<Class<? extends Temporal>, TemporalUnit> next : DEFAULT_UNITS.entrySet()) { + if (next.getKey().isAssignableFrom(temporal.getClass())) { + return next.getValue(); + } + } + return ChronoUnit.SECONDS; } /**
