package com.napa.pulse.service.impl; import com.napa.pulse.dao.interfaces.MessagesDAO; import com.napa.pulse.dto.ActionResult; import com.napa.pulse.dto.ImagesDTO; import com.napa.pulse.dto.Messages; import com.napa.pulse.entity.security.User; import com.napa.pulse.service.interfaces.MessagesService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import javax.servlet.http.HttpServletRequest; import java.util.List; import java.util.Map; /** * Business Service Implementation for the messages * * @author Diana Ivan * Created: Apr 02, 2015 */ @Service public class MessagesServiceImpl implements MessagesService { @Autowired private MessagesDAO messagesDAO; /* (non-Javadoc) * @see com.napa.pulse.service.interfaces.MessagesService#getMessagesTypes() */ @Override public List> getMessagesTypes() { return messagesDAO.getMessagesTypes(); } /* (non-Javadoc) * @see com.napa.pulse.service.interfaces.MessagesService#updateMessageFlags(java.lang.Integer, java.lang.Integer, java.lang.Boolean, java.lang.Boolean, java.lang.Boolean) */ @Override public ActionResult updateMessageFlags(Integer userId, Integer messageId, Boolean starred, Boolean deleted, Boolean read) { int updatedRows = messagesDAO.updateMessageFlags(userId, messageId, starred, deleted, read); if (updatedRows > 0) { return new ActionResult(true); } else { return new ActionResult(false); } } /* (non-Javadoc) * @see com.napa.pulse.service.interfaces.MessagesService#getMessageDetails(int) */ @Override public List getMessageDetails(User toUserId) { return messagesDAO.getMessageDetails(toUserId); } public ActionResult publishMessage(Messages messages) { if (messages.isBroadcast()) { List userList = messagesDAO.getAllUsers(); messages.setUserIdArray(userList.toArray(new Integer[0])); } return messagesDAO.publishMessage(messages); } @Override public ImagesDTO getImages(HttpServletRequest request) { return messagesDAO.getImages(request); } }