I changed the signature of the createItemSessionElement() method to pass in the whole Assessment object instead of passing to the method all the different pieces of information it needed. So there is a bit more refactoring here than usual, hopefully for the better. Let me know if questions or clarification needed.
I'd use a better variable name than "feed" - it shouldn't reflect where the method is called from, but what the method does (e.g. include the calendar event URL). This applies to all the methods with the "feed" variable. Maybe "includeInfoLinkUrl"?
This 'feed'( i will change the name) variable is not used B'coz, that whole idea of method overloaded approach is we want to keep the UI call separate from the Entity broker feed call for Dashboad UI performance slow down . I don't see a purpose of using this variable any further. Since the new method call from here go to dao.getCurrentNewsLinks(sakaiId,siteId) and if i made a change suggested as 'dao.getCurrentNewsLinks(sakaiId,siteId,false)' then i need to make changes in DashboardDao, DashboardDaoImpl, DashboardDaoMock. If i even made that change the call from Dao class is an sql query and 'feed' variable won't be used their too. We are not getting the 'directUrl' from the database since it is not stored directly in the database. I don't see the purpose of using the variable.