46 lines
1.6 KiB
Java
46 lines
1.6 KiB
Java
package eu.eudat.controllers;
|
|
|
|
import eu.eudat.logic.managers.MaterialManager;
|
|
import eu.eudat.logic.managers.MetricsManager;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.core.env.Environment;
|
|
import org.springframework.http.ResponseEntity;
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
|
import java.io.IOException;
|
|
import java.nio.file.Files;
|
|
import java.nio.file.Path;
|
|
import java.nio.file.Paths;
|
|
import java.util.Objects;
|
|
import java.util.stream.Stream;
|
|
|
|
@RestController
|
|
@CrossOrigin
|
|
@RequestMapping(value = {"/api/material/faq/"})
|
|
public class FaqController {
|
|
|
|
private Environment environment;
|
|
private MaterialManager materialManager;
|
|
private final MetricsManager metricsManager;
|
|
|
|
@Autowired
|
|
public FaqController(Environment environment, MaterialManager materialManager, MetricsManager metricsManager) {
|
|
this.environment = environment;
|
|
this.materialManager = materialManager;
|
|
this.metricsManager = metricsManager;
|
|
}
|
|
|
|
@RequestMapping(path = "{lang}", method = RequestMethod.GET )
|
|
public ResponseEntity<byte[]> getFaq(@PathVariable(name = "lang") String lang) throws IOException {
|
|
// long files = 0;
|
|
// try (Stream<Path> paths = Files.list(Paths.get(Objects.requireNonNull(this.environment.getProperty("faq.path"))))) {
|
|
// files = paths.count();
|
|
// }
|
|
// metricsManager.calculateValue(MetricNames.LANGUAGES, (int) files, null);
|
|
try (Stream<Path> paths = Files.walk(Paths.get(Objects.requireNonNull(this.environment.getProperty("faq.path"))))) {
|
|
return this.materialManager.getResponseEntity(lang, paths);
|
|
}
|
|
}
|
|
|
|
}
|