package eu.eudat.controllers.v2; import eu.eudat.audit.AuditableAction; import eu.eudat.controllers.BaseController; import eu.eudat.file.transformer.model.file.FileFormat; import eu.eudat.logic.services.ApiContext; import eu.eudat.service.transformer.FileTransformerService; import gr.cite.commons.web.authz.service.AuthorizationService; import gr.cite.tools.auditing.AuditService; import gr.cite.tools.data.censor.CensorFactory; import gr.cite.tools.logging.LoggerService; import gr.cite.tools.logging.MapLogEntry; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import java.util.List; @RestController @CrossOrigin @RequestMapping(value = {"/api/file-transformer/"}) public class FileTransformerController extends BaseController { private static final LoggerService logger = new LoggerService(LoggerFactory.getLogger(FileTransformerController.class)); private final AuthorizationService authorizationService; private final FileTransformerService depositService; private final CensorFactory censorFactory; private final AuditService auditService; @Autowired public FileTransformerController(ApiContext apiContext, AuthorizationService authorizationService, FileTransformerService depositService, CensorFactory censorFactory, AuditService auditService){ super(apiContext); this.authorizationService = authorizationService; this.depositService = depositService; this.censorFactory = censorFactory; this.auditService = auditService; } @GetMapping("/available") public List getAvailableConfigurations() { logger.debug(new MapLogEntry("getAvailableConfigurations")); List model = this.depositService.getAvailableConfigurations(); this.auditService.track(AuditableAction.FileTransformer_GetAvailableConfigurations); //this.auditService.trackIdentity(AuditableAction.IdentityTracking_Action); return model; } }