Mercury-IM/data/src/main/java/org/mercury_im/messenger/data/mapping/DirectChatMapping.java

36 lines
1.0 KiB
Java
Raw Normal View History

2019-11-23 21:16:03 +01:00
package org.mercury_im.messenger.data.mapping;
import org.mercury_im.messenger.data.model.DirectChatModel;
import org.mercury_im.messenger.entity.chat.DirectChat;
import org.mercury_im.messenger.entity.chat.IDirectChat;
import org.mercury_im.messenger.entity.contact.Peer;
import javax.inject.Inject;
public class DirectChatMapping implements Mapping<DirectChat, DirectChatModel> {
@Inject
AccountMapping accountMapping;
@Inject
PeerMapping peerMapping;
@Override
public DirectChatModel entityToData(DirectChat entity) {
DirectChatModel model = new DirectChatModel();
model.setPeer(peerMapping.entityToData(entity.getPeer()));
//TODO: set iD
return model;
}
@Override
public DirectChat dataToEntity(DirectChatModel data) {
IDirectChat entity = new IDirectChat();
entity.setId(data.getId());
Peer peer = peerMapping.dataToEntity(data.getPeer());
entity.setPeer(peer);
entity.setAccount(peer.getAccount());
return entity;
}
}