2019-11-18 23:51:27 +01:00
|
|
|
package org.mercury_im.messenger.data.mapping;
|
2019-11-03 06:33:52 +01:00
|
|
|
|
2019-11-22 23:35:14 +01:00
|
|
|
import org.mercury_im.messenger.data.model.AccountModel;
|
2019-11-18 23:51:27 +01:00
|
|
|
import org.mercury_im.messenger.entity.Account;
|
|
|
|
import org.mercury_im.messenger.entity.PasswordAuthentication;
|
2019-11-03 06:33:52 +01:00
|
|
|
|
2019-12-01 19:56:13 +01:00
|
|
|
import javax.inject.Inject;
|
|
|
|
|
2019-11-23 21:16:03 +01:00
|
|
|
public class AccountMapping implements Mapping<Account, AccountModel> {
|
2019-11-03 06:33:52 +01:00
|
|
|
|
2019-12-01 19:56:13 +01:00
|
|
|
@Inject
|
|
|
|
public AccountMapping() {
|
|
|
|
|
|
|
|
}
|
|
|
|
|
2019-11-23 21:16:03 +01:00
|
|
|
@Override
|
2019-11-25 15:17:49 +01:00
|
|
|
public AccountModel entityToModel(Account entity, AccountModel model) {
|
2019-11-23 21:16:03 +01:00
|
|
|
if (entity == null) {
|
|
|
|
return null;
|
|
|
|
}
|
2019-12-01 19:56:13 +01:00
|
|
|
if (model == null) {
|
|
|
|
model = new AccountModel();
|
|
|
|
}
|
2019-11-23 21:16:03 +01:00
|
|
|
model.setPassword(entity.getAuthentication().getPassword());
|
|
|
|
model.setAddress(entity.getAddress());
|
|
|
|
model.setEnabled(entity.isEnabled());
|
|
|
|
|
|
|
|
return model;
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
2019-11-25 15:17:49 +01:00
|
|
|
public Account modelToEntity(AccountModel model, Account entity) {
|
2019-11-03 06:33:52 +01:00
|
|
|
if (model == null) {
|
|
|
|
return null;
|
|
|
|
}
|
|
|
|
|
|
|
|
entity.setId(model.getId());
|
2019-11-18 00:04:28 +01:00
|
|
|
entity.setAddress(model.getAddress());
|
2019-11-03 06:33:52 +01:00
|
|
|
entity.setEnabled(model.isEnabled());
|
2019-11-18 00:04:28 +01:00
|
|
|
entity.setAuthentication(new PasswordAuthentication(model.getPassword()));
|
2019-11-03 06:33:52 +01:00
|
|
|
|
|
|
|
return entity;
|
|
|
|
}
|
|
|
|
}
|