argos/dmp-backend/web/src/main/java/eu/eudat/migration/controllers/TemplateController.java

45 lines
1.8 KiB
Java

package eu.eudat.migration.controllers;
import eu.eudat.data.entities.DatasetProfile;
import eu.eudat.migration.DMPRoadmapMigration;
import eu.eudat.migration.dao.TemplateRepository;
import eu.eudat.migration.entities.Template;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
@RestController
@RequestMapping("/template")
@ConditionalOnProperty(prefix = "roadmap", name="database.url")
public class TemplateController {
private final TemplateRepository templateRepository;
private final DMPRoadmapMigration roadmapMigration;
@Autowired
public TemplateController(TemplateRepository templateRepository, DMPRoadmapMigration roadmapMigration) {
this.templateRepository = templateRepository;
this.roadmapMigration = roadmapMigration;
}
@GetMapping(path = "/all", produces = "application/json")
public ResponseEntity<List<Template>> getAllTemplates() {
return ResponseEntity.ok(this.templateRepository.findAll());
}
@GetMapping(path = "/argos/memory", produces = "application/json")
public ResponseEntity<List<eu.eudat.models.data.admin.composite.DatasetProfile>> getDatasetProfiles() {
return ResponseEntity.ok(this.roadmapMigration.getDatesetProfiles());
}
@GetMapping(path = "/argos/saved", produces = "application/json")
public ResponseEntity<List<DatasetProfile>> getProfiles() {
return ResponseEntity.ok(this.roadmapMigration.getProfiles());
}
}