View Javadoc
1   package usecase.section;
2   
3   import common.http.interceptor.InterceptableServlet;
4   import usecase.auth.AuthorizationConstraints;
5   
6   import javax.servlet.ServletException;
7   import javax.servlet.annotation.MultipartConfig;
8   import javax.servlet.annotation.WebServlet;
9   import javax.servlet.http.HttpServletRequest;
10  import javax.servlet.http.HttpServletResponse;
11  import java.io.IOException;
12  
13  import static usecase.auth.AuthorizationConstraints.Types.ADMINS_ONLY;
14  /**
15   * Servlet che permette ad un amministratore di modificare una sezione.
16   */
17  @WebServlet("/admin/editsection")
18  @MultipartConfig
19  @AuthorizationConstraints(ADMINS_ONLY)
20  class EditSectionServlet extends InterceptableServlet {
21      //Funzionalità disabilitata
22  
23      @Override
24      protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
25          resp.sendError(HttpServletResponse.SC_FORBIDDEN,"Funzionalità disabilitata temporaneamente");
26      }
27  
28  
29  
30      /*@Inject private SectionService service;
31  
32      private static final String EDIT_SECTION_PAGE = "/WEB-INF/views/crm/edit-section.jsp";
33      private static final int MAX_FILE_SIZE = 5 * 1024 * 1024;
34  
35      @Override
36      protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
37          ParameterConverter converter = new ParameterConverter(request);
38          int sectionId = converter.getIntParameter("sectionId").orElse(0);
39          SectionPage section = service.showSection(sectionId);
40          request.setAttribute("section", section);
41          request.getRequestDispatcher(EDIT_SECTION_PAGE).forward(request, response);
42      }
43  
44      @Override
45      @ForwardOnError(EDIT_SECTION_PAGE)
46      protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
47          ParameterConverter converter = new ParameterConverter(request);
48          int sectionId = converter.getIntParameter("sectionId").orElse(0);
49          String description = request.getParameter("description");
50          Part picture = request.getPart("picture");
51          Part banner = request.getPart("banner");
52  
53          BufferedInputStream buffPicture = null;
54          BufferedInputStream buffBanner = null;
55          if(picture != null && picture.getSize() < MAX_FILE_SIZE) {
56              if (picture.getSize()>0)
57                  buffPicture = new BufferedInputStream(picture.getInputStream());
58          }else{
59              throw new IllegalArgumentException("Il file non deve superare i 5MB");
60          }
61  
62          if(banner != null && banner.getSize() < MAX_FILE_SIZE) {
63              if (banner.getSize()>0)
64                  buffBanner = new BufferedInputStream(banner.getInputStream());
65          }else{
66              throw new IllegalArgumentException("Il file non deve superare i 5MB");
67          }
68  
69          SectionPage sectionPage = new SectionPage(sectionId,null,description,picture.getName(),banner.getName(),0,false); //false?
70          service.editSection(sectionPage,sectionId,buffPicture,buffBanner);
71          response.sendRedirect(request.getContextPath()+"/admin/showsections");
72      }
73      */
74  }