1 package de.tivsource.page.admin.actions.maintenance.cssfile;
2
3 import java.util.Date;
4 import java.util.UUID;
5
6 import org.apache.logging.log4j.LogManager;
7 import org.apache.logging.log4j.Logger;
8 import org.apache.struts2.ServletActionContext;
9 import org.apache.struts2.convention.annotation.Action;
10 import org.apache.struts2.convention.annotation.Actions;
11 import org.apache.struts2.convention.annotation.Result;
12 import org.apache.struts2.tiles.annotation.TilesDefinition;
13 import org.apache.struts2.tiles.annotation.TilesDefinitions;
14 import org.apache.struts2.tiles.annotation.TilesPutAttribute;
15
16 import de.tivsource.ejb3plugin.InjectEJB;
17 import de.tivsource.page.admin.actions.EmptyAction;
18 import de.tivsource.page.common.css.CSSFile;
19 import de.tivsource.page.dao.cssfile.CSSFileDaoLocal;
20
21
22
23
24
25
26 @TilesDefinitions({
27 @TilesDefinition(name="cssFileAddForm", 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/maintenance.jsp"),
30 @TilesPutAttribute(name = "content", value = "/WEB-INF/tiles/active/view/cssfile/add_form.jsp")
31 }),
32 @TilesDefinition(name="cssFileAddError", extend = "adminTemplate", putAttributes = {
33 @TilesPutAttribute(name = "navigation", value = "/WEB-INF/tiles/active/navigation/maintenance.jsp"),
34 @TilesPutAttribute(name = "content", value = "/WEB-INF/tiles/active/view/cssfile/add_error.jsp")
35 })
36 })
37 public class AddAction extends EmptyAction {
38
39
40
41
42 private static final long serialVersionUID = 3442711359941308571L;
43
44
45
46
47 private static final Logger LOGGER = LogManager.getLogger(AddAction.class);
48
49 @InjectEJB(name="CSSFileDao")
50 private CSSFileDaoLocal cssFileDaoLocal;
51
52 private CSSFile cssFile;
53
54 public CSSFile getCssFile() {
55 return cssFile;
56 }
57
58 public void setCssFile(CSSFile cssFile) {
59 this.cssFile = cssFile;
60 }
61
62 @Override
63 @Actions({
64 @Action(
65 value = "add",
66 results = {
67 @Result(name = "success", type = "redirectAction", location = "index.html"),
68 @Result(name = "input", type="tiles", location = "cssFileAddForm"),
69 @Result(name = "error", type="tiles", location = "cssFileAddError")
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(cssFile != null) {
80
81
82
83 if(cssFile.getUploadFile() != null) {
84 cssFile.generate();
85 }
86
87 cssFile.setUuid(UUID.randomUUID().toString());
88 cssFile.setModified(new Date());
89 cssFile.setCreated(new Date());
90 cssFile.setModifiedBy(remoteUser);
91 cssFile.setModifiedAddress(remoteAddress);
92 cssFileDaoLocal.merge(cssFile);
93 return SUCCESS;
94 }
95 else {
96 return ERROR;
97 }
98
99
100 }
101
102 }