- Timestamp:
- 2013-10-10T17:21:30+13:00 (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
main/trunk/greenstone3/src/java/org/greenstone/gsdl3/action/PageAction.java
r27617 r28382 10 10 import org.greenstone.gsdl3.util.UserContext; 11 11 import org.greenstone.util.GlobalProperties; 12 import org.w3c.dom.Document; 12 13 import org.w3c.dom.Element; 13 14 import org.w3c.dom.Node; … … 26 27 { 27 28 Element message = this.converter.nodeToElement(message_node); 29 Document doc = message.getOwnerDocument(); 30 28 31 Element request = (Element) GSXML.getChildByTagName(message, GSXML.REQUEST_ELEM); 29 32 Element paramList = (Element) GSXML.getChildByTagName(request, GSXML.PARAM_ELEM + GSXML.LIST_MODIFIER); … … 44 47 page_name = HOME_PAGE; 45 48 } 46 Element result = this.doc.createElement(GSXML.MESSAGE_ELEM);49 Element result = doc.createElement(GSXML.MESSAGE_ELEM); 47 50 Element response; 48 51 if (page_name.equals(HOME_PAGE)) … … 66 69 } 67 70 68 Element formatMessage = this.doc.createElement(GSXML.MESSAGE_ELEM);69 Element formatRequest = GSXML.createBasicRequest( this.doc, GSXML.REQUEST_TYPE_FORMAT, collection, new UserContext(request));71 Element formatMessage = doc.createElement(GSXML.MESSAGE_ELEM); 72 Element formatRequest = GSXML.createBasicRequest(doc, GSXML.REQUEST_TYPE_FORMAT, collection, new UserContext(request)); 70 73 formatMessage.appendChild(formatRequest); 71 74 Element formatResponseMessage = (Element) this.mr.process(formatMessage); … … 78 81 } 79 82 80 result.appendChild( this.doc.importNode(response, true));83 result.appendChild(doc.importNode(response, true)); 81 84 logger.debug("page action result: " + this.converter.getPrettyString(result)); 82 85 … … 86 89 protected Element homePage(Element request) 87 90 { 91 Document doc = request.getOwnerDocument(); 92 88 93 UserContext userContext = new UserContext(request); 89 94 // first, get the message router info 90 Element info_message = this.doc.createElement(GSXML.MESSAGE_ELEM);91 Element coll_list_request = GSXML.createBasicRequest( this.doc, GSXML.REQUEST_TYPE_DESCRIBE, "", userContext);95 Element info_message = doc.createElement(GSXML.MESSAGE_ELEM); 96 Element coll_list_request = GSXML.createBasicRequest(doc, GSXML.REQUEST_TYPE_DESCRIBE, "", userContext); 92 97 info_message.appendChild(coll_list_request); 93 98 Element info_response_message = (Element) this.mr.process(info_message); … … 113 118 if (colls.getLength() > 0) 114 119 { 115 sendMultipleRequests( colls, null, GSXML.REQUEST_TYPE_DESCRIBE, userContext);120 sendMultipleRequests(doc, colls, null, GSXML.REQUEST_TYPE_DESCRIBE, userContext); 116 121 } 117 122 } … … 124 129 if (services.getLength() > 0) 125 130 { 126 sendMultipleRequests( services, null, GSXML.REQUEST_TYPE_DESCRIBE, userContext);131 sendMultipleRequests(doc, services, null, GSXML.REQUEST_TYPE_DESCRIBE, userContext); 127 132 } 128 133 } … … 135 140 if (clusters.getLength() > 0) 136 141 { 137 sendMultipleRequests( clusters, null, GSXML.REQUEST_TYPE_DESCRIBE, userContext);142 sendMultipleRequests(doc, clusters, null, GSXML.REQUEST_TYPE_DESCRIBE, userContext); 138 143 139 144 } … … 149 154 protected Element aboutPage(Element request) 150 155 { 156 Document doc = request.getOwnerDocument(); 157 151 158 UserContext userContext = new UserContext(request); 152 159 // extract the params from the cgi-request, … … 159 166 logger.error("about page requested with no collection or cluster specified!"); 160 167 // return an empty response 161 Element response = this.doc.createElement(GSXML.RESPONSE_ELEM);168 Element response = doc.createElement(GSXML.RESPONSE_ELEM); 162 169 addSiteMetadata(response, userContext); 163 170 addInterfaceOptions(response); … … 166 173 167 174 // get the collection or cluster description 168 Element coll_about_message = this.doc.createElement(GSXML.MESSAGE_ELEM);169 170 Element coll_about_request = GSXML.createBasicRequest( this.doc, GSXML.REQUEST_TYPE_DESCRIBE, coll_name, userContext);175 Element coll_about_message = doc.createElement(GSXML.MESSAGE_ELEM); 176 177 Element coll_about_request = GSXML.createBasicRequest(doc, GSXML.REQUEST_TYPE_DESCRIBE, coll_name, userContext); 171 178 coll_about_message.appendChild(coll_about_request); 172 179 Element coll_about_response = (Element) this.mr.process(coll_about_message); … … 213 220 if (services.getLength() > 0) 214 221 { 215 sendMultipleRequests( services, coll_name, GSXML.REQUEST_TYPE_DESCRIBE, userContext);222 sendMultipleRequests(doc, services, coll_name, GSXML.REQUEST_TYPE_DESCRIBE, userContext); 216 223 } 217 224 … … 231 238 protected Element unknownPage(Element request) 232 239 { 240 Document doc = request.getOwnerDocument(); 241 233 242 UserContext userContext = new UserContext(request); 234 243 String page_name = request.getAttribute(GSXML.SUBACTION_ATT); … … 242 251 { 243 252 // just return an empty response 244 Element response = this.doc.createElement(GSXML.RESPONSE_ELEM);253 Element response = doc.createElement(GSXML.RESPONSE_ELEM); 245 254 addSiteMetadata(response, userContext); 246 255 addInterfaceOptions(response); … … 252 261 // if there is a service specified should we get the service description instead?? 253 262 // get the collection or cluster description 254 Element coll_about_message = this.doc.createElement(GSXML.MESSAGE_ELEM);255 256 Element coll_about_request = GSXML.createBasicRequest( this.doc, GSXML.REQUEST_TYPE_DESCRIBE, coll_name, userContext);263 Element coll_about_message = doc.createElement(GSXML.MESSAGE_ELEM); 264 265 Element coll_about_request = GSXML.createBasicRequest(doc, GSXML.REQUEST_TYPE_DESCRIBE, coll_name, userContext); 257 266 coll_about_message.appendChild(coll_about_request); 258 267 … … 269 278 } 270 279 271 protected boolean sendMultipleRequests( NodeList items, String path_prefix, String request_type, UserContext userContext)280 protected boolean sendMultipleRequests(Document doc, NodeList items, String path_prefix, String request_type, UserContext userContext) 272 281 { 273 282 // we will send all the requests in a single message 274 Element message = this.doc.createElement(GSXML.MESSAGE_ELEM);283 Element message = doc.createElement(GSXML.MESSAGE_ELEM); 275 284 for (int i = 0; i < items.getLength(); i++) 276 285 { … … 281 290 path = GSPath.appendLink(path_prefix, path); 282 291 } 283 Element request = GSXML.createBasicRequest( this.doc, request_type, path, userContext);292 Element request = GSXML.createBasicRequest(doc, request_type, path, userContext); 284 293 message.appendChild(request); 285 294 } … … 317 326 protected Element gli4gs3Page(Element request) 318 327 { 328 Document doc = request.getOwnerDocument(); 329 319 330 String lang = request.getAttribute(GSXML.LANG_ATT); 320 331 String uid = request.getAttribute(GSXML.USER_ID_ATT); 321 332 322 Element page_response = this.doc.createElement(GSXML.RESPONSE_ELEM);323 324 Element applet_elem = this.doc.createElement("Applet");333 Element page_response = doc.createElement(GSXML.RESPONSE_ELEM); 334 335 Element applet_elem = doc.createElement("Applet"); 325 336 page_response.appendChild(applet_elem); 326 337 applet_elem.setAttribute("ARCHIVE", "SignedGatherer.jar"); … … 329 340 applet_elem.setAttribute("HEIGHT", "50"); 330 341 applet_elem.setAttribute("WIDTH", "380"); 331 Element gwcgi_param_elem = this.doc.createElement("PARAM");342 Element gwcgi_param_elem = doc.createElement("PARAM"); 332 343 gwcgi_param_elem.setAttribute("name", "gwcgi"); 333 344 String library_name = GlobalProperties.getGSDL3WebAddress(); … … 335 346 applet_elem.appendChild(gwcgi_param_elem); 336 347 337 Element gsdl3_param_elem = this.doc.createElement("PARAM");348 Element gsdl3_param_elem = doc.createElement("PARAM"); 338 349 gsdl3_param_elem.setAttribute("name", "gsdl3"); 339 350 gsdl3_param_elem.setAttribute("value", "true");
Note:
See TracChangeset
for help on using the changeset viewer.