package eu.eudat.managers; import java.util.List; import java.util.UUID; import eu.eudat.dao.entities.DMPDao; import eu.eudat.entities.DMP; import eu.eudat.models.dmp.DataManagementPlanTableRequest; import eu.eudat.models.helpers.DataTableData; import eu.eudat.queryable.QueryableList; import eu.eudat.utilities.builders.DomainModelConverter; public class DataManagementPlanManager { public DataTableData getPaged(DMPDao dmpsRepository, DataManagementPlanTableRequest dataManagementPlanTableRequest) throws IllegalAccessException, InstantiationException{ QueryableList items = dmpsRepository.getWithCriteria(dataManagementPlanTableRequest.getCriteria()); QueryableList pagedItems = PaginationManager.applyPaging(items,dataManagementPlanTableRequest); List datamanagementPlans = new DomainModelConverter().fromDataModel( pagedItems.toList(), eu.eudat.models.dmp.DataManagementPlan.class); DataTableData dataTable = new DataTableData(); dataTable.setData(datamanagementPlans); dataTable.setTotalCount(dmpsRepository.count()); return dataTable; } public eu.eudat.models.dmp.DataManagementPlan getSingle(DMPDao dmpsRepository, String id) throws InstantiationException, IllegalAccessException{ eu.eudat.models.dmp.DataManagementPlan datamanagementPlan = new eu.eudat.models.dmp.DataManagementPlan(); datamanagementPlan.fromDataModel(dmpsRepository.find(UUID.fromString(id))); return datamanagementPlan; } }