1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.exoplatform.services.wcm.template;
18
19 import javax.jcr.Node;
20 import javax.jcr.Property;
21
22 import org.apache.commons.chain.Context;
23 import org.exoplatform.groovyscript.text.TemplateService;
24 import org.exoplatform.services.command.action.Action;
25 import org.exoplatform.services.log.ExoLogger;
26 import org.exoplatform.services.log.Log;
27 import org.exoplatform.services.wcm.utils.WCMCoreUtils;
28
29
30
31
32
33
34
35 public class TemplateModificationAction implements Action {
36 private static final Log LOG = ExoLogger.getLogger(TemplateModificationAction.class.getName());
37
38 public boolean execute(Context context) throws Exception {
39 Property property = (Property)context.get("currentItem");
40 Node node = property.getParent();
41 TemplateService templateService = WCMCoreUtils.getService(TemplateService.class);
42 try {
43 templateService.reloadTemplate(node.getParent().getPath());
44 } catch (IllegalArgumentException IAE) {
45 if (LOG.isWarnEnabled()) {
46 LOG.warn("Template [" + node.getParent().getPath() + "] not found on TemplateService Cache Store");
47 }
48 }
49
50 return true;
51 }
52
53 }