|
|
|
@ -599,6 +599,9 @@ public class DataManagementPlanManager {
|
|
|
|
|
datasets.add(dataset);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
UUID dmpId = result.getId();
|
|
|
|
|
result.setUsers(new HashSet<>(apiContext.getOperationsContext().getDatabaseRepository().getUserDmpDao().asQueryable().where((builder, root) -> builder.equal(root.get("dmp").get("id"), dmpId)).toList()));
|
|
|
|
|
|
|
|
|
|
this.updateIndex(result);
|
|
|
|
|
|
|
|
|
|
return result;
|
|
|
|
@ -710,6 +713,8 @@ public class DataManagementPlanManager {
|
|
|
|
|
DatasetCriteria criteria1 = new DatasetCriteria();
|
|
|
|
|
criteria1.setDmpIds(Collections.singletonList(newDmp.getId()));
|
|
|
|
|
newDmp.setDataset(new HashSet<>(databaseRepository.getDatasetDao().getWithCriteria(criteria1).toList()));
|
|
|
|
|
UUID dmpId = newDmp.getId();
|
|
|
|
|
newDmp.setUsers(new HashSet<>(apiContext.getOperationsContext().getDatabaseRepository().getUserDmpDao().asQueryable().where((builder, root) -> builder.equal(root.get("dmp").get("id"), dmpId)).toList()));
|
|
|
|
|
|
|
|
|
|
this.updateIndex(newDmp);
|
|
|
|
|
metricsManager.increaseValue(MetricNames.DMP, 1, MetricNames.DRAFT);
|
|
|
|
@ -740,12 +745,16 @@ public class DataManagementPlanManager {
|
|
|
|
|
}
|
|
|
|
|
oldDmp.setStatus(DMP.DMPStatus.DELETED.getValue());
|
|
|
|
|
apiContext.getOperationsContext().getDatabaseRepository().getDmpDao().createOrUpdate(oldDmp);
|
|
|
|
|
UUID dmpId = oldDmp.getId();
|
|
|
|
|
oldDmp.setUsers(new HashSet<>(apiContext.getOperationsContext().getDatabaseRepository().getUserDmpDao().asQueryable().where((builder, root) -> builder.equal(root.get("dmp").get("id"), dmpId)).toList()));
|
|
|
|
|
this.updateIndex(oldDmp);
|
|
|
|
|
DataManagementPlanCriteria criteria1 = new DataManagementPlanCriteria();
|
|
|
|
|
criteria1.setAllVersions(true);
|
|
|
|
|
criteria1.setGroupIds(Collections.singletonList(oldDmp.getGroupId()));
|
|
|
|
|
apiContext.getOperationsContext().getDatabaseRepository().getDmpDao().getWithCriteria(criteria1).toList().forEach(dmp -> {
|
|
|
|
|
try {
|
|
|
|
|
UUID tdmpId = dmp.getId();
|
|
|
|
|
dmp.setUsers(new HashSet<>(apiContext.getOperationsContext().getDatabaseRepository().getUserDmpDao().asQueryable().where((builder, root) -> builder.equal(root.get("dmp").get("id"), tdmpId)).toList()));
|
|
|
|
|
this.updateIndex(dmp);
|
|
|
|
|
} catch (IOException e) {
|
|
|
|
|
logger.error(e.getMessage(), e);
|
|
|
|
@ -757,6 +766,7 @@ public class DataManagementPlanManager {
|
|
|
|
|
if (elastic != null) {
|
|
|
|
|
tags = elastic.getTags();
|
|
|
|
|
}
|
|
|
|
|
dataset.setDmp(dmp);
|
|
|
|
|
this.datasetManager.updateTags(dataset, tags);
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
logger.error(e.getMessage(), e);
|
|
|
|
@ -891,7 +901,8 @@ public class DataManagementPlanManager {
|
|
|
|
|
if (elastic != null) {
|
|
|
|
|
tags = elastic.getTags();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
UUID dmpId = tempDataset.getDmp().getId();
|
|
|
|
|
tempDataset.getDmp().setUsers(new HashSet<>(apiContext.getOperationsContext().getDatabaseRepository().getUserDmpDao().asQueryable().where((builder, root) -> builder.equal(root.get("dmp").get("id"), dmpId)).toList()));
|
|
|
|
|
this.datasetManager.updateTags(tempDataset, tags);
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
logger.error(e.getMessage(), e);
|
|
|
|
@ -1008,6 +1019,8 @@ public class DataManagementPlanManager {
|
|
|
|
|
throw new Exception("DMP is not finalized");
|
|
|
|
|
dmp.setPublic(true);
|
|
|
|
|
apiContext.getOperationsContext().getDatabaseRepository().getDmpDao().createOrUpdate(dmp);
|
|
|
|
|
UUID dmpId = dmp.getId();
|
|
|
|
|
dmp.setUsers(new HashSet<>(apiContext.getOperationsContext().getDatabaseRepository().getUserDmpDao().asQueryable().where((builder, root) -> builder.equal(root.get("dmp").get("id"), dmpId)).toList()));
|
|
|
|
|
this.updateIndex(dmp);
|
|
|
|
|
metricsManager.increaseValue(MetricNames.DMP, 1, MetricNames.PUBLISHED);
|
|
|
|
|
DataManagementPlanCriteria criteria = new DataManagementPlanCriteria();
|
|
|
|
@ -1021,6 +1034,8 @@ public class DataManagementPlanManager {
|
|
|
|
|
if (elastic != null) {
|
|
|
|
|
tags = elastic.getTags();
|
|
|
|
|
}
|
|
|
|
|
UUID tmdmpId = dataset.getDmp().getId();
|
|
|
|
|
dataset.getDmp().setUsers(new HashSet<>(apiContext.getOperationsContext().getDatabaseRepository().getUserDmpDao().asQueryable().where((builder, root) -> builder.equal(root.get("dmp").get("id"), tmdmpId)).toList()));
|
|
|
|
|
this.datasetManager.updateTags(dataset, tags);
|
|
|
|
|
metricsManager.increaseValue(MetricNames.DATASET, 1, MetricNames.PUBLISHED);
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
@ -1106,6 +1121,8 @@ public class DataManagementPlanManager {
|
|
|
|
|
}
|
|
|
|
|
dmp.setStatus(DMP.DMPStatus.FINALISED.getValue());
|
|
|
|
|
apiContext.getOperationsContext().getDatabaseRepository().getDmpDao().createOrUpdate(dmp);
|
|
|
|
|
UUID dmpId = dmp.getId();
|
|
|
|
|
dmp.setUsers(new HashSet<>(apiContext.getOperationsContext().getDatabaseRepository().getUserDmpDao().asQueryable().where((builder, root) -> builder.equal(root.get("dmp").get("id"), dmpId)).toList()));
|
|
|
|
|
this.updateIndex(dmp);
|
|
|
|
|
UserInfo user = apiContext.getOperationsContext().getDatabaseRepository().getUserInfoDao().find(principal.getId());
|
|
|
|
|
sendNotification(dmp, user, NotificationType.DMP_FINALISED);
|
|
|
|
@ -1124,6 +1141,8 @@ public class DataManagementPlanManager {
|
|
|
|
|
throw new Exception("DMP is already Active");
|
|
|
|
|
dmp.setStatus(DMP.DMPStatus.ACTIVE.getValue());
|
|
|
|
|
apiContext.getOperationsContext().getDatabaseRepository().getDmpDao().createOrUpdate(dmp);
|
|
|
|
|
UUID dmpId = dmp.getId();
|
|
|
|
|
dmp.setUsers(new HashSet<>(apiContext.getOperationsContext().getDatabaseRepository().getUserDmpDao().asQueryable().where((builder, root) -> builder.equal(root.get("dmp").get("id"), dmpId)).toList()));
|
|
|
|
|
this.updateIndex(dmp);
|
|
|
|
|
metricsManager.decreaseValue(MetricNames.DMP, 1, MetricNames.FINALIZED);
|
|
|
|
|
metricsManager.increaseValue(MetricNames.DMP, 1, MetricNames.DRAFT);
|
|
|
|
@ -1733,6 +1752,8 @@ public class DataManagementPlanManager {
|
|
|
|
|
databaseRepository.getDmpDao().createOrUpdate(dmp);
|
|
|
|
|
assignUser(dmp, me);
|
|
|
|
|
if (this.apiContext.getOperationsContext().getElasticRepository().getDmpRepository().getClient() != null) {
|
|
|
|
|
UUID dmpId = dmp.getId();
|
|
|
|
|
dmp.setUsers(new HashSet<>(apiContext.getOperationsContext().getDatabaseRepository().getUserDmpDao().asQueryable().where((builder, root) -> builder.equal(root.get("dmp").get("id"), dmpId)).toList()));
|
|
|
|
|
this.updateIndex(dmp);
|
|
|
|
|
}
|
|
|
|
|
dmp.getDataset().forEach(dataset -> {
|
|
|
|
@ -1755,13 +1776,13 @@ public class DataManagementPlanManager {
|
|
|
|
|
try {
|
|
|
|
|
List<Tag> tags = new ArrayList<>();
|
|
|
|
|
eu.eudat.elastic.entities.Dataset elastic = apiContext.getOperationsContext().getElasticRepository().getDatasetRepository().findDocument(dataset.getId().toString());
|
|
|
|
|
DatasetWizardModel datasetWizardModel = new DatasetWizardModel().fromDataModel(dataset);
|
|
|
|
|
if (elastic != null) {
|
|
|
|
|
tags = elastic.getTags();
|
|
|
|
|
DatasetWizardModel datasetWizardModel = new DatasetWizardModel().fromDataModel(dataset);
|
|
|
|
|
datasetWizardModel.setTags(tags);
|
|
|
|
|
datasetManager.getTagsFromProfile(datasetWizardModel, dataset);
|
|
|
|
|
datasetManager.updateTags(dataset, datasetWizardModel.getTags());
|
|
|
|
|
}
|
|
|
|
|
datasetManager.getTagsFromProfile(datasetWizardModel, dataset);
|
|
|
|
|
datasetManager.updateTags(dataset, datasetWizardModel.getTags());
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
logger.error(e.getMessage(), e);
|
|
|
|
|
}
|
|
|
|
@ -1824,6 +1845,9 @@ public class DataManagementPlanManager {
|
|
|
|
|
try {
|
|
|
|
|
if (dmp.getUsers() != null) {
|
|
|
|
|
logger.info(dmp.getUsers().toString());
|
|
|
|
|
} else {
|
|
|
|
|
UUID dmpId = dmp.getId();
|
|
|
|
|
dmp.setUsers(new HashSet<>(apiContext.getOperationsContext().getDatabaseRepository().getUserDmpDao().asQueryable().where((builder, root) -> builder.equal(root.get("dmp").get("id"), dmpId)).toList()));
|
|
|
|
|
}
|
|
|
|
|
this.updateIndex(dmp);
|
|
|
|
|
} catch (IOException e) {
|
|
|
|
@ -1841,6 +1865,8 @@ public class DataManagementPlanManager {
|
|
|
|
|
if (elastic != null) {
|
|
|
|
|
tags = elastic.getTags();
|
|
|
|
|
}
|
|
|
|
|
UUID dmpId = dataset.getDmp().getId();
|
|
|
|
|
dataset.getDmp().setUsers(new HashSet<>(apiContext.getOperationsContext().getDatabaseRepository().getUserDmpDao().asQueryable().where((builder, root) -> builder.equal(root.get("dmp").get("id"), dmpId)).toList()));
|
|
|
|
|
this.datasetManager.updateTags(dataset, tags);
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
logger.error(e.getMessage(), e);
|
|
|
|
@ -1861,6 +1887,8 @@ public class DataManagementPlanManager {
|
|
|
|
|
List<DMP> dmps = apiContext.getOperationsContext().getDatabaseRepository().getDmpDao().asQueryable().toList();
|
|
|
|
|
dmps.forEach(dmp -> {
|
|
|
|
|
try {
|
|
|
|
|
UUID dmpId = dmp.getId();
|
|
|
|
|
dmp.setUsers(new HashSet<>(apiContext.getOperationsContext().getDatabaseRepository().getUserDmpDao().asQueryable().where((builder, root) -> builder.equal(root.get("dmp").get("id"), dmpId)).toList()));
|
|
|
|
|
this.updateIndex(dmp);
|
|
|
|
|
} catch (IOException e) {
|
|
|
|
|
logger.error(e.getMessage(), e);
|
|
|
|
|