You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by ah...@apache.org on 2022/05/12 12:25:58 UTC

[isis] branch v1-lab updated: test fixes

This is an automated email from the ASF dual-hosted git repository.

ahuber pushed a commit to branch v1-lab
in repository https://gitbox.apache.org/repos/asf/isis.git


The following commit(s) were added to refs/heads/v1-lab by this push:
     new d7ebb7ba26 test fixes
d7ebb7ba26 is described below

commit d7ebb7ba26851dd10350dd2603d43d45bae851c1
Author: Andi Huber <ah...@apache.org>
AuthorDate: Thu May 12 14:25:52 2022 +0200

    test fixes
---
 .../apache/isis/schema/utils/CommonDtoUtils.java   |  7 +++-
 .../isis/schema/utils/jaxbadapters/_Gregorian.java | 43 ++++++++++++++++------
 2 files changed, 36 insertions(+), 14 deletions(-)

diff --git a/core/applib/src/main/java/org/apache/isis/schema/utils/CommonDtoUtils.java b/core/applib/src/main/java/org/apache/isis/schema/utils/CommonDtoUtils.java
index 81d552dd20..07efc3b801 100644
--- a/core/applib/src/main/java/org/apache/isis/schema/utils/CommonDtoUtils.java
+++ b/core/applib/src/main/java/org/apache/isis/schema/utils/CommonDtoUtils.java
@@ -109,7 +109,8 @@ public final class CommonDtoUtils {
         if (valueType != null) {
             return valueType;
         }
-        if (type.isEnum()) {
+        if (type!=null
+        		&& type.isEnum()) {
             return ValueType.ENUM;
         }
         // assume reference otherwise
@@ -255,7 +256,9 @@ public final class CommonDtoUtils {
         case REFERENCE: {
             final Bookmark bookmark = val instanceof Bookmark
                     ? (Bookmark) val
-                    : bookmarkService.bookmarkFor(val);
+                    : bookmarkService!=null
+	                    	? bookmarkService.bookmarkFor(val)
+	            			: null;
 
             if (bookmark != null) {
                 OidDto argValue = bookmark.toOidDto();
diff --git a/core/schema/src/main/java/org/apache/isis/schema/utils/jaxbadapters/_Gregorian.java b/core/schema/src/main/java/org/apache/isis/schema/utils/jaxbadapters/_Gregorian.java
index 00ad862642..c929b264da 100644
--- a/core/schema/src/main/java/org/apache/isis/schema/utils/jaxbadapters/_Gregorian.java
+++ b/core/schema/src/main/java/org/apache/isis/schema/utils/jaxbadapters/_Gregorian.java
@@ -1,17 +1,26 @@
 package org.apache.isis.schema.utils.jaxbadapters;
 
+import java.time.ZoneId;
+import java.time.ZoneOffset;
+import java.util.GregorianCalendar;
+
 import javax.xml.datatype.DatatypeConfigurationException;
 import javax.xml.datatype.DatatypeFactory;
 import javax.xml.datatype.XMLGregorianCalendar;
 
-//@UtilityClass
+import org.joda.time.LocalDate;
+
+import lombok.val;
+import lombok.experimental.UtilityClass;
+
+@UtilityClass
 class _Gregorian {
 
 	// this assumes DTF is thread-safe, which it most probably is..
     // http://bugs.java.com/bugdatabase/view_bug.do?bug_id=6466177
-    static DatatypeFactory datatypeFactory = null;
+    DatatypeFactory datatypeFactory = null;
 
-    public static DatatypeFactory getDatatypeFactory() {
+    public DatatypeFactory getDatatypeFactory() {
         if(datatypeFactory == null) {
             try {
                 datatypeFactory = DatatypeFactory.newInstance();
@@ -23,19 +32,29 @@ class _Gregorian {
         return datatypeFactory;
     }
 
-	public static XMLGregorianCalendar of(int year, int monthOfYear, int dayOfMonth, int hourOfDay, int minuteOfHour,
+	public XMLGregorianCalendar of(
+			int year, int monthOfYear, int dayOfMonth, int hourOfDay, int minuteOfHour,
 			int secondOfMinute, int millisOfSecond) {
-		// TODO Auto-generated method stub
-		return null;
+		return getDatatypeFactory().newXMLGregorianCalendar(
+				year, monthOfYear, dayOfMonth, 
+				hourOfDay, minuteOfHour, secondOfMinute, millisOfSecond, 
+				0);
 	}
 
-	public static XMLGregorianCalendar of(int year, int monthOfYear, int dayOfMonth) {
-		// TODO Auto-generated method stub
-		return null;
+	public XMLGregorianCalendar of(int year, int monthOfYear, int dayOfMonth) {
+		return getDatatypeFactory().newXMLGregorianCalendar(
+				year, monthOfYear, dayOfMonth, 
+				0, 0, 0, 0, 
+				0);
 	}
 
-	public static XMLGregorianCalendar of(int hourOfDay, int minuteOfHour, int secondOfMinute, int millisOfSecond) {
-		// TODO Auto-generated method stub
-		return null;
+	public XMLGregorianCalendar of(int hourOfDay, int minuteOfHour, int secondOfMinute, int millisOfSecond) {
+		
+		val today = LocalDate.now();
+		
+		return getDatatypeFactory().newXMLGregorianCalendar(
+				today.getYear(), today.getMonthOfYear(), today.getDayOfMonth(), 
+				hourOfDay, minuteOfHour, secondOfMinute, millisOfSecond, 
+				0);
 	}
 }