1 package de.tivsource.page.converter;
2
3 import java.util.Map;
4
5 import javax.naming.Context;
6 import javax.naming.InitialContext;
7
8 import org.apache.logging.log4j.LogManager;
9 import org.apache.logging.log4j.Logger;
10 import org.apache.struts2.util.StrutsTypeConverter;
11
12 import com.opensymphony.xwork2.conversion.TypeConversionException;
13
14 import de.tivsource.page.common.css.CSSGroup;
15 import de.tivsource.page.dao.cssgroup.CSSGroupDaoLocal;
16
17
18
19
20
21
22 public class CSSGroupConverter extends StrutsTypeConverter {
23
24 private static final Logger LOGGER = LogManager.getLogger(CSSGroupConverter.class);
25
26 @SuppressWarnings("rawtypes")
27 @Override
28 public Object convertFromString(Map context, String[] values, Class toClass) {
29
30 LOGGER.info("convertFromString(Map context, String[] values, Class toClass) aufgerufen.");
31
32 if(values.length<=0) {
33 throw new TypeConversionException("Kein gültigen CSS - Gruppe angegeben");
34 }
35
36
37 String cssFileUuid = values[0];
38 try {
39 CSSGroupDaoLocal cssGroupDaoLocal;
40 Context earContext = new InitialContext();
41 cssGroupDaoLocal = (CSSGroupDaoLocal) earContext.lookup("java:global/tiv-page/dao-0.0.1/CSSGroupDao");
42 CSSGroup cssGroup = cssGroupDaoLocal.findByUuid(cssFileUuid);
43 return cssGroup;
44 } catch (Exception e) {
45 e.printStackTrace();
46 throw new RuntimeException(e);
47 }
48 }
49
50 @SuppressWarnings("rawtypes")
51 @Override
52 public String convertToString(Map context, Object o) {
53 CSSGroup cssGroup = (CSSGroup)o;
54 return ""+cssGroup.getUuid();
55 }
56
57 }