31 lines
860 B
Java
31 lines
860 B
Java
package eu.eudat.utilities.builders;
|
|
|
|
/**
|
|
* Created by ikalyvas on 12/15/2017.
|
|
*/
|
|
import eu.eudat.entities.DataEntity;
|
|
import eu.eudat.models.DataModel;
|
|
import java.util.List;
|
|
import java.util.LinkedList;
|
|
|
|
public class DomainModelConverter<T extends DataEntity,U extends DataModel<T>> {
|
|
|
|
public List<T> toDataModel(List<U> models){
|
|
List<T> entities = new LinkedList<>();
|
|
for(U model : models){
|
|
entities.add(model.toDataModel());
|
|
}
|
|
return entities;
|
|
}
|
|
|
|
public List<U> fromDataModel(List<T> entities,Class<U> clazz) throws IllegalAccessException, InstantiationException {
|
|
List<U> models = new LinkedList<>();
|
|
for(T entity:entities){
|
|
U model = clazz.newInstance();
|
|
model.fromDataModel(entity);
|
|
models.add(model);
|
|
}
|
|
return models;
|
|
}
|
|
}
|