KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > jahia > deprecated > taglibs > button > ViewLocksButtonTag


1 package org.jahia.deprecated.taglibs.button;
2
3 import java.util.HashMap JavaDoc;
4
5 import javax.servlet.jsp.JspException JavaDoc;
6
7 import org.jahia.content.ContentObject;
8 import org.jahia.data.JahiaData;
9 import org.jahia.exceptions.JahiaException;
10 import org.jahia.params.ParamBean;
11 import org.jahia.services.lock.LockKey;
12 import org.jahia.content.PageReferenceableInterface;
13
14 /**
15  * Class :
16  * returns the full link ("<a href...>...</a>") allowing to unlock a
17  * content object.
18  *
19  * @author MAP
20  */

21 public class ViewLocksButtonTag extends AbstractButtonTag {
22
23     public boolean testRights (JahiaData jData) {
24         return true;
25     }
26
27     public String JavaDoc getLauncher(JahiaData jData)
28             throws JahiaException {
29         String JavaDoc lockType = (String JavaDoc)launcherTypeMap.get(launcherType);
30         if (lockType == null) {
31             throw new JahiaException("DrawLockLauncherTag",
32                                      "Launcher type not defined " + launcherType +
33                                      ". Choose one of " + launcherTypeMap.keySet().toString(),
34                                      JahiaException.TEMPLATE_ERROR, JahiaException.WARNING_SEVERITY);
35         }
36         int pageID = -1;
37         if (contentObject instanceof PageReferenceableInterface) {
38             pageID = ((PageReferenceableInterface)contentObject).getPageID();
39         }
40         LockKey lockKey = LockKey.composeLockKey(lockType, contentObject.getID(), pageID);
41         String JavaDoc lockedObjectURL = jData.gui().html().drawReleaseLockObjectLauncher(contentObject, lockKey);
42         if (lockedObjectURL != null) {
43             if (lockedObjectURL.indexOf("/" + ParamBean.RELEASE_LOCK + "/") != -1) {
44                 title = "<img SRC=\"" + imgUnlock + "\" align=\"middle\" border=\"0\" alt=\"" + altUnlock + "\">";
45             } else {
46                 title = "<img SRC=\"" + imgLauncher + "\" align=\"middle\" border=\"0\" alt=\"" + altLauncher + "\">";
47             }
48         }
49         return lockedObjectURL;
50     }
51
52     public int doEndTag() throws JspException JavaDoc {
53         // let's reinitialize the tag variables to allow tag object reuse in
54
// pooling.
55
imgLauncher = "";
56         imgUnlock = "";
57         altUnlock = "";
58         altLauncher = "";
59         title = "Object locked";
60         style = "";
61         launcherType = "";
62         contentObject = null;
63         return EVAL_PAGE;
64     }
65
66     public void setImgLauncher(String JavaDoc imgLauncher) {
67         this.imgLauncher = imgLauncher;
68     }
69
70     public String JavaDoc getImgLauncher() {
71         return imgLauncher;
72     }
73
74     public void setAltUnlock(String JavaDoc altUnlock) {
75         this.altUnlock = altUnlock;
76     }
77
78     public String JavaDoc getAltUnlock() {
79         return altUnlock;
80     }
81
82     public void setAltLauncher(String JavaDoc altLauncher) {
83         this.altLauncher = altLauncher;
84     }
85
86     public String JavaDoc getAltLauncher() {
87         return altLauncher;
88     }
89
90     public void setTitle(String JavaDoc title) {
91         this.title = title;
92     }
93
94     public String JavaDoc getTitle() {
95         return title;
96     }
97
98     public void setStyle(String JavaDoc style) {
99         this.style = style;
100     }
101
102     public String JavaDoc getStyle() {
103         return style;
104     }
105
106     public void setLauncherType(String JavaDoc launcherType) {
107         this.launcherType = launcherType;
108     }
109
110     public String JavaDoc getLauncherType() {
111         return launcherType;
112     }
113
114     public void setImgUnlock(String JavaDoc imgUnlock) {
115         this.imgUnlock = imgUnlock;
116     }
117
118     public String JavaDoc getImgUnlock() {
119         return imgUnlock;
120     }
121
122     public ContentObject getContentObject() {
123         return contentObject;
124     }
125
126     public void setContentObject(ContentObject contentObject) {
127         this.contentObject = contentObject;
128     }
129
130     private String JavaDoc launcherType = "";
131     private ContentObject contentObject = null;
132     private String JavaDoc imgLauncher = "";
133     private String JavaDoc imgUnlock = "";
134     private String JavaDoc altUnlock = "";
135     private String JavaDoc altLauncher = "";
136     private String JavaDoc title = "Object locked";
137     private String JavaDoc style = "";
138
139     private static HashMap JavaDoc launcherTypeMap = new HashMap JavaDoc();
140
141     private static org.apache.log4j.Logger logger =
142             org.apache.log4j.Logger.getLogger(ViewLocksButtonTag.class);
143
144     static {
145         launcherTypeMap.put("updateContainerList", LockKey.UPDATE_CONTAINERLIST_TYPE);
146         launcherTypeMap.put("addContainer", LockKey.ADD_CONTAINER_TYPE);
147         launcherTypeMap.put("updateContainer", LockKey.UPDATE_CONTAINER_TYPE);
148         launcherTypeMap.put("deleteContainer", LockKey.DELETE_CONTAINER_TYPE);
149         launcherTypeMap.put("updatePage", LockKey.UPDATE_PAGE_TYPE);
150         launcherTypeMap.put("updateField", LockKey.UPDATE_FIELD_TYPE);
151     }
152 }
153
Popular Tags