MediaController.java
package com.nonononoki.alovoa.rest;
import com.nonononoki.alovoa.service.MediaService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.crypto.BadPaddingException;
import javax.crypto.IllegalBlockSizeException;
import javax.crypto.NoSuchPaddingException;
import java.security.InvalidAlgorithmParameterException;
import java.security.InvalidKeyException;
import java.security.NoSuchAlgorithmException;
import java.util.UUID;
@RestController
@RequestMapping("/media")
public class MediaController {
@Autowired
private MediaService mediaService;
public static final String URL_REQUEST_MAPPING = "/media";
public static final String URL_PROFILE_PICTURE = "/profile-picture/";
public static final String URL_VERIFICATION_PICTURE = "/verification-picture/";
public static final String URL_AUDIO = "/audio/";
public static final String URL_IMAGE = "/image/";
@GetMapping(value = URL_PROFILE_PICTURE + "{uuid}")
public ResponseEntity<byte[]> getProfilePicture(@PathVariable UUID uuid) {
return mediaService.getProfilePicture(uuid);
}
@GetMapping(value = URL_VERIFICATION_PICTURE + "{uuid}")
public ResponseEntity<byte[]> getVerificationPicture(@PathVariable UUID uuid) {
return mediaService.getVerificationPicture(uuid);
}
@GetMapping(value = URL_AUDIO + "{uuid}")
public ResponseEntity<byte[]> getAudio(@PathVariable UUID uuid) {
return mediaService.getAudio(uuid);
}
@GetMapping(value = URL_IMAGE + "{uuid}")
public ResponseEntity<byte[]> getImage(@PathVariable UUID uuid) {
return mediaService.getImage(uuid);
}
}