View Javadoc

1   package de.tivsource.page.admin.actions.others.slider;
2   
3   import java.util.Date;
4   
5   import org.apache.logging.log4j.LogManager;
6   import org.apache.logging.log4j.Logger;
7   import org.apache.struts2.ServletActionContext;
8   import org.apache.struts2.convention.annotation.Action;
9   import org.apache.struts2.convention.annotation.Actions;
10  import org.apache.struts2.convention.annotation.Result;
11  import org.apache.struts2.tiles.annotation.TilesDefinition;
12  import org.apache.struts2.tiles.annotation.TilesDefinitions;
13  import org.apache.struts2.tiles.annotation.TilesPutAttribute;
14  
15  import de.tivsource.ejb3plugin.InjectEJB;
16  import de.tivsource.page.admin.actions.EmptyAction;
17  import de.tivsource.page.dao.slider.SliderDaoLocal;
18  import de.tivsource.page.entity.slider.Slider;
19  
20  /**
21   * 
22   * @author Marc Michele
23   *
24   */
25  @TilesDefinitions({
26    @TilesDefinition(name="sliderDeleteForm",  extend = "adminTemplate", putAttributes = {
27      @TilesPutAttribute(name = "meta",       value = "/WEB-INF/tiles/active/meta/chosen.jsp"),
28      @TilesPutAttribute(name = "navigation", value = "/WEB-INF/tiles/active/navigation/others.jsp"),
29      @TilesPutAttribute(name = "content",    value = "/WEB-INF/tiles/active/view/slider/delete_form.jsp")
30    }),
31    @TilesDefinition(name="sliderDeleteError",  extend = "adminTemplate", putAttributes = {
32      @TilesPutAttribute(name = "meta",       value = "/WEB-INF/tiles/active/meta/chosen.jsp"),
33      @TilesPutAttribute(name = "navigation", value = "/WEB-INF/tiles/active/navigation/others.jsp"),
34      @TilesPutAttribute(name = "content",    value = "/WEB-INF/tiles/active/view/slider/delete_error.jsp")
35    })
36  })
37  public class DeleteAction extends EmptyAction {
38  
39      /**
40       * Serial Version UID.
41       */
42  	private static final long serialVersionUID = 173705414287709097L;
43  
44  	/**
45       * Statischer Logger der Klasse.
46       */
47      private static final Logger LOGGER = LogManager.getLogger(DeleteAction.class);
48  
49      @InjectEJB(name="SliderDao")
50      private SliderDaoLocal sliderDaoLocal;
51  
52      private Slider slider;
53  
54  	public Slider getSlider() {
55          return slider;
56      }
57  
58      public void setSlider(Slider slider) {
59          this.slider = slider;
60      }
61  
62      @Override
63      @Actions({
64          @Action(
65          		value = "delete", 
66          		results = { 
67          				@Result(name = "success", type = "redirectAction", location = "index.html"),
68          				@Result(name = "input", type="tiles", location = "sliderDeleteForm"),
69          				@Result(name = "error", type="tiles", location = "sliderDeleteError")
70          				}
71          )
72      })
73      public String execute() throws Exception {
74      	LOGGER.info("execute() aufgerufen.");
75  
76          String remoteUser    = ServletActionContext.getRequest().getRemoteUser();
77          String remoteAddress = ServletActionContext.getRequest().getRemoteAddr();
78  
79      	if(slider != null) {
80      	    Slider dbSlider = sliderDaoLocal.findByUuid(slider.getUuid());
81      	    dbSlider.getImage().delete();
82      	    dbSlider.setModified(new Date());
83      		dbSlider.setModifiedBy(remoteUser);
84      		dbSlider.setModifiedAddress(remoteAddress);
85      		sliderDaoLocal.merge(dbSlider);
86      		sliderDaoLocal.delete(dbSlider);
87              return SUCCESS;
88      	}
89      	else {
90      		return ERROR;
91      	}
92      	
93      	
94      }// Ende execute()
95  	
96  }// Ende class