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.property.PropertyDaoLocal;
18  import de.tivsource.page.dao.slider.SliderDaoLocal;
19  import de.tivsource.page.entity.slider.Slider;
20  
21  /**
22   * 
23   * @author Marc Michele
24   *
25   */
26  @TilesDefinitions({
27    @TilesDefinition(name="sliderEditForm",  extend = "adminTemplate", putAttributes = {
28      @TilesPutAttribute(name = "meta",       value = "/WEB-INF/tiles/active/meta/chosen.jsp"),
29      @TilesPutAttribute(name = "navigation", value = "/WEB-INF/tiles/active/navigation/others.jsp"),
30      @TilesPutAttribute(name = "content",    value = "/WEB-INF/tiles/active/view/slider/edit_form.jsp")
31    }),
32    @TilesDefinition(name="sliderEditError",  extend = "adminTemplate", putAttributes = {
33      @TilesPutAttribute(name = "meta",       value = "/WEB-INF/tiles/active/meta/chosen.jsp"),
34      @TilesPutAttribute(name = "navigation", value = "/WEB-INF/tiles/active/navigation/others.jsp"),
35      @TilesPutAttribute(name = "content",    value = "/WEB-INF/tiles/active/view/slider/edit_error.jsp")
36    })
37  })
38  public class EditAction extends EmptyAction {
39  
40  	/**
41  	 * Serial Version UID.
42  	 */
43      private static final long serialVersionUID = -6472541996524122642L;
44  
45      /**
46       * Statischer Logger der Klasse.
47       */
48      private static final Logger LOGGER = LogManager.getLogger(EditAction.class);
49  
50      @InjectEJB(name="PropertyDao")
51      private PropertyDaoLocal propertyDaoLocal;
52  
53      @InjectEJB(name = "SliderDao")
54      private SliderDaoLocal sliderDaoLocal;
55  
56      private Slider slider;
57  
58      public Slider getSlider() {
59          return slider;
60      }
61  
62      public void setSlider(Slider slider) {
63          this.slider = slider;
64      }
65  
66      @Override
67      @Actions({
68          @Action(
69          		value = "edit", 
70          		results = { 
71          				@Result(name = "success", type = "redirectAction", location = "index.html"),
72          				@Result(name = "input",   type = "tiles", location = "sliderEditForm"),
73          				@Result(name = "error",   type = "tiles", location = "sliderEditError")
74          				}
75          )
76      })
77      public String execute() throws Exception {
78      	LOGGER.info("execute() aufgerufen.");
79  
80          String remoteUser    = ServletActionContext.getRequest().getRemoteUser();
81          String remoteAddress = ServletActionContext.getRequest().getRemoteAddr();
82      	
83      	if(slider != null) {
84      		LOGGER.info("UUID des Sliders: " + slider.getUuid());
85      		Slider dbSlider = sliderDaoLocal.findByUuid(slider.getUuid());
86  
87      		dbSlider.setClickable(slider.getClickable());
88      		dbSlider.setModified(new Date());
89      		dbSlider.setModifiedAddress(remoteAddress);
90      		dbSlider.setModifiedBy(remoteUser);
91      		dbSlider.setName(slider.getName());
92      		dbSlider.setOrderNumber(slider.getOrderNumber());
93      		dbSlider.setPage(slider.getPage());
94      		dbSlider.setUrl(slider.getUrl());
95      		dbSlider.setVisible(slider.getVisible());
96  
97      		sliderDaoLocal.merge(dbSlider);
98              return SUCCESS;
99      	}
100     	else {
101     		return ERROR;
102     	}
103 
104     }// Ende execute()
105 
106 }// Ende class