dhis2-devs team mailing list archive
-
dhis2-devs team
-
Mailing list archive
-
Message #34254
[Branch ~dhis2-devs-core/dhis2/trunk] Rev 17585: Temp fix bug where transient fields read and followUp of MessageConversation where not set on fet...
------------------------------------------------------------
revno: 17585
committer: Halvdan Hoem Grelland <halvdanhg@xxxxxxxxx>
branch nick: dhis2
timestamp: Tue 2014-11-25 21:22:50 +0100
message:
Temp fix bug where transient fields read and followUp of MessageConversation where not set on fetch from DB.
modified:
dhis-2/dhis-api/src/main/java/org/hisp/dhis/message/MessageConversation.java
dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/message/DefaultMessageService.java
--
lp:dhis2
https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk
Your team DHIS 2 developers is subscribed to branch lp:dhis2.
To unsubscribe from this branch go to https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk/+edit-subscription
=== modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/message/MessageConversation.java'
--- dhis-2/dhis-api/src/main/java/org/hisp/dhis/message/MessageConversation.java 2014-08-19 11:16:02 +0000
+++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/message/MessageConversation.java 2014-11-25 20:22:50 +0000
@@ -163,6 +163,19 @@
return false;
}
+ public boolean isRead( User user )
+ {
+ for( UserMessage userMessage : userMessages )
+ {
+ if( userMessage.getUser() != null && userMessage.getUser().equals( user ) )
+ {
+ return userMessage.isRead();
+ }
+ }
+
+ return false;
+ }
+
public boolean markRead( User user )
{
for ( UserMessage userMessage : userMessages )
=== modified file 'dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/message/DefaultMessageService.java'
--- dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/message/DefaultMessageService.java 2014-11-18 12:55:20 +0000
+++ dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/message/DefaultMessageService.java 2014-11-25 20:22:50 +0000
@@ -307,6 +307,23 @@
@Override
public MessageConversation getMessageConversation( String uid )
{
+ /*
+ * TODO:
+ * This is a temporary workaround to ensure transient fields followUp and read
+ * are set correctly (and not just to false). Issue should be tackled in
+ * HibernateIdentifiableObjectStore and/or HibernateMessageConversationStore.
+ */
+
+ MessageConversation mc = messageConversationStore.getByUid( uid );
+
+ if( mc == null )
+ {
+ return null;
+ }
+
+ mc.setFollowUp( mc.isFollowUp( currentUserService.getCurrentUser() ) );
+ mc.setRead( mc.isRead( currentUserService.getCurrentUser() ) );
+
return messageConversationStore.getByUid( uid );
}