Changeset 31125 for main/trunk/greenstone3/src/java
- Timestamp:
- 2016-11-18T13:32:02+13:00 (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
main/trunk/greenstone3/src/java/org/greenstone/gsdl3/service/GS2Construct.java
r31124 r31125 318 318 } 319 319 320 320 321 // wait until we can reserve the collection for processing 321 322 waitUntilReady(request); 322 323 323 // process 324 logger.error("@@@ RESERVED"); 325 326 // process 324 327 Element response = runCommand(request, GS2PerlConstructor.MODIFY_METADATA_SERVER); 328 329 if (response.getElementsByTagName(GSXML.ERROR_ELEM).getLength() <= 0) // if no errors, wait for process to finish 330 { 331 logger.error("@@@ NO ERRORS"); 332 333 Element statusElem = (Element) response.getElementsByTagName(GSXML.STATUS_ELEM).item(0); 334 String id = statusElem.getAttribute("pid"); 335 logger.error("@@@ GOT PID: " + id); 336 337 GS2PerlListener currentListener = this.listeners.get(id); 338 int statusCode = currentListener.getStatus(); 339 while (!GSStatus.isCompleted(statusCode)) 340 { 341 // wait for the process, and keep checking the status code 342 // there is probably a better way to do this. 343 try 344 { 345 logger.error("@@@ WAITING"); 346 Thread.currentThread().sleep(100); 347 } 348 catch (Exception e) 349 { // ignore 350 } 351 statusCode = currentListener.getStatus(); 352 } 353 } 354 355 else { 356 logger.error("@@@ GOT ERROR"); 357 } 358 359 logger.error("@@@ RELEASING HOLD"); 325 360 326 361 // release hold on collection 327 362 signalReady(request); 328 363 return response; 364 329 365 } 330 366
Note:
See TracChangeset
for help on using the changeset viewer.