View Javadoc

1   package de.tivsource.page.admin.actions.maintenance.cssgroup;
2   
3   import org.apache.logging.log4j.LogManager;
4   import org.apache.logging.log4j.Logger;
5   import org.apache.struts2.convention.annotation.Action;
6   import org.apache.struts2.convention.annotation.Actions;
7   import org.apache.struts2.convention.annotation.Result;
8   import org.apache.struts2.tiles.annotation.TilesDefinition;
9   import org.apache.struts2.tiles.annotation.TilesDefinitions;
10  import org.apache.struts2.tiles.annotation.TilesPutAttribute;
11  
12  import de.tivsource.ejb3plugin.InjectEJB;
13  import de.tivsource.page.admin.actions.EmptyAction;
14  import de.tivsource.page.common.css.CSSGroup;
15  import de.tivsource.page.dao.cssgroup.CSSGroupDaoLocal;
16  
17  /**
18   * 
19   * @author Marc Michele
20   *
21   */
22  @TilesDefinitions({
23    @TilesDefinition(name="cssGroupDeleteForm", extend = "adminTemplate", putAttributes = {
24      @TilesPutAttribute(name = "navigation", value = "/WEB-INF/tiles/active/navigation/maintenance.jsp"),
25      @TilesPutAttribute(name = "content",    value = "/WEB-INF/tiles/active/view/cssgroup/delete_form.jsp")
26    }),
27    @TilesDefinition(name="cssGroupDeleteError", extend = "adminTemplate", putAttributes = {
28      @TilesPutAttribute(name = "navigation", value = "/WEB-INF/tiles/active/navigation/maintenance.jsp"),
29      @TilesPutAttribute(name = "content",    value = "/WEB-INF/tiles/active/view/cssgroup/delete_error.jsp")
30    }),
31    @TilesDefinition(name="cssGroupReferences", extend = "adminTemplate", putAttributes = {
32      @TilesPutAttribute(name = "navigation", value = "/WEB-INF/tiles/active/navigation/maintenance.jsp"),
33      @TilesPutAttribute(name = "content",    value = "/WEB-INF/tiles/active/view/cssgroup/references.jsp")
34    })
35  })
36  public class DeleteAction extends EmptyAction {
37  
38  	/**
39  	 * Serial Version UID.
40  	 */
41  	private static final long serialVersionUID = 8847714905311859127L;
42  
43  	/**
44       * Statischer Logger der Klasse.
45       */
46      private static final Logger LOGGER = LogManager.getLogger(DeleteAction.class);
47  
48      @InjectEJB(name="CSSGroupDao")
49      private CSSGroupDaoLocal cssGroupDaoLocal;
50  
51      private CSSGroup cssGroup;
52  
53      /**
54  	 * @return the cssGroup
55  	 */
56  	public CSSGroup getCssGroup() {
57  		return cssGroup;
58  	}
59  
60  	/**
61  	 * @param cssGroup the cssGroup to set
62  	 */
63  	public void setCssGroup(CSSGroup cssGroup) {
64  		this.cssGroup = cssGroup;
65  	}
66  
67  	@Override
68      @Actions({
69          @Action(
70          		value = "delete", 
71          		results = { 
72          				@Result(name = "success", type = "redirectAction", location = "index.html"),
73          				@Result(name = "input", type="tiles", location = "cssGroupDeleteForm"),
74          				@Result(name = "error", type="tiles", location = "cssGroupDeleteError"),
75          				@Result(name = "references", type="tiles", location = "cssGroupReferences")
76          				}
77          )
78      })
79      public String execute() throws Exception {
80      	LOGGER.info("execute() aufgerufen.");
81  
82  
83          if(cssGroup != null) {
84              if(!cssGroupDaoLocal.hasReferences(cssGroup.getUuid())) {
85              	CSSGroup dbCSSGroup = cssGroupDaoLocal.findByUuid(cssGroup.getUuid());
86                  cssGroupDaoLocal.delete(dbCSSGroup);
87                  return SUCCESS;
88              }
89              else {
90              	return "references";
91              }
92      	}
93          else {
94      		return ERROR;
95      	}
96  
97      }// Ende execute()
98  	
99  }// Ende class