parent
b8ade50810
commit
b2dd04e864
@ -0,0 +1,28 @@ |
||||
package org.libresonic.player.controller; |
||||
|
||||
import org.libresonic.player.Logger; |
||||
import org.springframework.stereotype.Controller; |
||||
import org.springframework.web.bind.annotation.RequestMapping; |
||||
import org.springframework.web.bind.annotation.RequestMethod; |
||||
import org.springframework.web.servlet.ModelAndView; |
||||
|
||||
import javax.servlet.http.HttpServletRequest; |
||||
import javax.servlet.http.HttpServletResponse; |
||||
|
||||
/** |
||||
* Spring MVC Controller that serves the login page. |
||||
*/ |
||||
@Controller |
||||
@RequestMapping("/accessDenied") |
||||
public class AccessDeniedController { |
||||
|
||||
|
||||
private static final Logger LOG = Logger.getLogger(AccessDeniedController.class); |
||||
|
||||
@RequestMapping(method = {RequestMethod.GET}) |
||||
public ModelAndView accessDenied(HttpServletRequest request, HttpServletResponse response) { |
||||
return new ModelAndView("accessDenied"); |
||||
} |
||||
|
||||
|
||||
} |
@ -0,0 +1,51 @@ |
||||
package org.libresonic.player.controller; |
||||
|
||||
import org.libresonic.player.Logger; |
||||
import org.libresonic.player.domain.Playlist; |
||||
import org.libresonic.player.service.PlaylistService; |
||||
import org.libresonic.player.service.SecurityService; |
||||
import org.libresonic.player.util.StringUtil; |
||||
import org.springframework.beans.factory.annotation.Autowired; |
||||
import org.springframework.stereotype.Controller; |
||||
import org.springframework.web.bind.ServletRequestUtils; |
||||
import org.springframework.web.bind.annotation.RequestMapping; |
||||
import org.springframework.web.bind.annotation.RequestMethod; |
||||
import org.springframework.web.servlet.ModelAndView; |
||||
|
||||
import javax.servlet.http.HttpServletRequest; |
||||
import javax.servlet.http.HttpServletResponse; |
||||
|
||||
/** |
||||
* Spring MVC Controller that serves the login page. |
||||
*/ |
||||
@Controller |
||||
@RequestMapping("/exportPlaylist") |
||||
public class ExportPlayListController { |
||||
|
||||
|
||||
private static final Logger LOG = Logger.getLogger(ExportPlayListController.class); |
||||
|
||||
@Autowired |
||||
private PlaylistService playlistService; |
||||
@Autowired |
||||
private SecurityService securityService; |
||||
|
||||
@RequestMapping(method = { RequestMethod.GET }) |
||||
public ModelAndView exportPlaylist(HttpServletRequest request, HttpServletResponse response) throws Exception { |
||||
|
||||
int id = ServletRequestUtils.getRequiredIntParameter(request, "id"); |
||||
Playlist playlist = playlistService.getPlaylist(id); |
||||
if (!playlistService.isReadAllowed(playlist, securityService.getCurrentUsername(request))) { |
||||
response.sendError(HttpServletResponse.SC_FORBIDDEN); |
||||
return null; |
||||
|
||||
} |
||||
response.setContentType("application/x-download"); |
||||
response.setHeader("Content-Disposition", "attachment; filename=\"" + StringUtil.fileSystemSafe(playlist.getName()) + ".m3u8\""); |
||||
|
||||
playlistService.exportPlaylist(id, response.getOutputStream()); |
||||
return null; |
||||
} |
||||
|
||||
|
||||
} |
@ -0,0 +1,28 @@ |
||||
package org.libresonic.player.controller; |
||||
|
||||
import org.libresonic.player.Logger; |
||||
import org.springframework.stereotype.Controller; |
||||
import org.springframework.web.bind.annotation.RequestMapping; |
||||
import org.springframework.web.bind.annotation.RequestMethod; |
||||
import org.springframework.web.servlet.ModelAndView; |
||||
|
||||
import javax.servlet.http.HttpServletRequest; |
||||
import javax.servlet.http.HttpServletResponse; |
||||
|
||||
/** |
||||
* Spring MVC Controller that serves the login page. |
||||
*/ |
||||
@Controller |
||||
@RequestMapping("/notFound") |
||||
public class NotFoundController { |
||||
|
||||
|
||||
private static final Logger LOG = Logger.getLogger(NotFoundController.class); |
||||
|
||||
@RequestMapping(method = {RequestMethod.GET}) |
||||
public ModelAndView notFound(HttpServletRequest request, HttpServletResponse response) { |
||||
return new ModelAndView("notFound"); |
||||
} |
||||
|
||||
|
||||
} |
@ -0,0 +1,28 @@ |
||||
package org.libresonic.player.controller; |
||||
|
||||
import org.libresonic.player.Logger; |
||||
import org.springframework.stereotype.Controller; |
||||
import org.springframework.web.bind.annotation.RequestMapping; |
||||
import org.springframework.web.bind.annotation.RequestMethod; |
||||
import org.springframework.web.servlet.ModelAndView; |
||||
|
||||
import javax.servlet.http.HttpServletRequest; |
||||
import javax.servlet.http.HttpServletResponse; |
||||
|
||||
/** |
||||
* Spring MVC Controller that serves the login page. |
||||
*/ |
||||
@Controller |
||||
@RequestMapping("/test") |
||||
public class TestController { |
||||
|
||||
|
||||
private static final Logger LOG = Logger.getLogger(TestController.class); |
||||
|
||||
@RequestMapping(method = {RequestMethod.GET}) |
||||
public ModelAndView test(HttpServletRequest request, HttpServletResponse response) { |
||||
return new ModelAndView("test"); |
||||
} |
||||
|
||||
|
||||
} |
Loading…
Reference in new issue