diff --git a/dmp-backend/roadmap/src/main/java/eu/eudat/migration/DMPRoadmapMigration.java b/dmp-backend/roadmap/src/main/java/eu/eudat/migration/DMPRoadmapMigration.java index b93043b8a..cbe7da659 100644 --- a/dmp-backend/roadmap/src/main/java/eu/eudat/migration/DMPRoadmapMigration.java +++ b/dmp-backend/roadmap/src/main/java/eu/eudat/migration/DMPRoadmapMigration.java @@ -31,7 +31,5 @@ public class DMPRoadmapMigration implements CommandLineRunner { public void run(String... args) throws Exception { this.service.migrateUsers(); this.service.migrate(); - /*Thread.sleep(20000); - this.service.clear();*/ } } diff --git a/dmp-backend/roadmap/src/main/java/eu/eudat/migration/services/ArgosService.java b/dmp-backend/roadmap/src/main/java/eu/eudat/migration/services/ArgosService.java index 90cada972..7a85fd9c9 100644 --- a/dmp-backend/roadmap/src/main/java/eu/eudat/migration/services/ArgosService.java +++ b/dmp-backend/roadmap/src/main/java/eu/eudat/migration/services/ArgosService.java @@ -70,20 +70,10 @@ public class ArgosService { } } - @Transactional public Principal login(UserInfo userInfo) { - QueryableList query = context.getOperationsContext().getDatabaseRepository().getUserTokenDao().asQueryable(); - query.where((builder, root) -> builder.equal(root.get("user").get("id"), userInfo.getId())); - query.where((builder, root) -> builder.greaterThan(root.get("expiresAt"), new Date())); - UserToken userToken = query.getSingleOrDefault(); - if(userToken == null) { - userToken = this.context.getOperationsContext().getBuilderFactory().getBuilder(UserTokenBuilder.class) - .issuedAt(new Date()).user(userInfo) - .token(UUID.randomUUID()).expiresAt(Timestamp.valueOf(LocalDateTime.now().plusDays(10))) - .build(); - userToken = context.getOperationsContext().getDatabaseRepository().getUserTokenDao().createOrUpdate(userToken); - } - return authenticationService.Touch(userToken); + Principal principal = new Principal(); + principal.setId(userInfo.getId()); + return principal; } @Transactional diff --git a/dmp-backend/roadmap/src/main/java/eu/eudat/migration/services/DMPRoadmapService.java b/dmp-backend/roadmap/src/main/java/eu/eudat/migration/services/DMPRoadmapService.java index 551f2f333..0e612f61f 100644 --- a/dmp-backend/roadmap/src/main/java/eu/eudat/migration/services/DMPRoadmapService.java +++ b/dmp-backend/roadmap/src/main/java/eu/eudat/migration/services/DMPRoadmapService.java @@ -23,6 +23,7 @@ import org.springframework.stereotype.Service; import java.util.*; import java.util.stream.Collectors; +import java.util.stream.Stream; @Service @ConditionalOnProperty(prefix = "roadmap", name = "database.url") @@ -78,16 +79,29 @@ public class DMPRoadmapService { this.argosService.assignRole(userInfo, Authorities.DATASET_PROFILE_MANAGER); this.principal = this.argosService.login(userInfo); DatasetProfile datasetProfile = template.buildDatasetProfile(); - if (users.size() > 1) { - datasetProfile.setUsers(users.subList(1, users.size()).stream().map(info -> { - UserInfoListingModel model = new UserInfoListingModel(); - model.setId(info.getId()); - return model; - }).collect(Collectors.toList())); - } if (id == null) { + if (users.size() > 1) { + datasetProfile.setUsers(users.subList(1, users.size()).stream().map(info -> { + UserInfoListingModel model = new UserInfoListingModel(); + model.setId(info.getId()); + return model; + }).collect(Collectors.toList())); + } id = this.argosService.createDatasetProfile(datasetProfile, principal); } else { + if (users.size() > 0) { + datasetProfile.setUsers(users.stream().map(info -> { + UserInfoListingModel model = new UserInfoListingModel(); + model.setId(info.getId()); + return model; + }).collect(Collectors.toList())); + } else { + datasetProfile.setUsers(Stream.of(userInfo).map(info -> { + UserInfoListingModel model = new UserInfoListingModel(); + model.setId(info.getId()); + return model; + }).collect(Collectors.toList())); + } id = this.argosService.createNewVersionDatasetProfile(id, datasetProfile); } this.datasetProfiles.add(id);