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

ahuber pushed a commit to branch ISIS-1976-rethink-object-adapters
in repository https://gitbox.apache.org/repos/asf/isis.git

commit a99c1cc5b921fe872a36faba32c386d647f659cb
Author: Andi Huber <ahu...@apache.org>
AuthorDate: Thu Sep 6 06:51:59 2018 +0200

    ISIS-1976: restore check consistency to also check adapter's object
    equality
    
    Task-Url: https://issues.apache.org/jira/browse/ISIS-1976
---
 .../ObjectAdapterContext_Consistency.java           | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git 
a/core/runtime/src/main/java/org/apache/isis/core/runtime/system/persistence/adaptermanager/ObjectAdapterContext_Consistency.java
 
b/core/runtime/src/main/java/org/apache/isis/core/runtime/system/persistence/adaptermanager/ObjectAdapterContext_Consistency.java
index 2d15fb0..30746a1 100644
--- 
a/core/runtime/src/main/java/org/apache/isis/core/runtime/system/persistence/adaptermanager/ObjectAdapterContext_Consistency.java
+++ 
b/core/runtime/src/main/java/org/apache/isis/core/runtime/system/persistence/adaptermanager/ObjectAdapterContext_Consistency.java
@@ -118,5 +118,26 @@ class ObjectAdapterContext_Consistency {
                         + mapName
                         + ": provided adapter's OID: " + adapterOid + ", \n"
                         + "but map's adapter's OID was: " + 
adapterAccordingToMap.getOid());
+        
+        ensureThatArg(
+                adapter.getObject(), 
equalTo(adapterAccordingToMap.getObject()),
+                ()->String.format("mismatch in %s (oid='%s')"
+                        + ": provided adapter's hash: %s (pojo='%s'), \n"
+                        + "but map's adapter's hash was: %s (pojo='%s')",
+                        mapName, adapterOid,
+                        Integer.toHexString(adapter.hashCode()), 
""+adapter.getObject(),
+                        Integer.toHexString(adapterAccordingToMap.hashCode()), 
""+adapterAccordingToMap.getObject()
+                        ));
+
+//      TODO[ISIS-1976] too strict, remove        
+//        ensureThatArg(
+//                adapter, equalTo(adapterAccordingToMap),
+//                ()->String.format("mismatch in %s (oid='%s')"
+//                        + ": provided adapter's hash: %s (pojo='%s'), \n"
+//                        + "but map's adapter's hash was: %s (pojo='%s')",
+//                        mapName, adapterOid,
+//                        Integer.toHexString(adapter.hashCode()), 
""+adapter.getObject(),
+//                        
Integer.toHexString(adapterAccordingToMap.hashCode()), 
""+adapterAccordingToMap.getObject()
+//                        ));
     }
 }
\ No newline at end of file

Reply via email to