Changeset 38955 for main/trunk


Ignore:
Timestamp:
2024-04-26T11:59:41+12:00 (5 weeks ago)
Author:
kjdon
Message:

instead of synchronising on the display item list, take a copy and then use it.

Location:
main/trunk/greenstone3/src/java/org/greenstone/gsdl3/collection
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • main/trunk/greenstone3/src/java/org/greenstone/gsdl3/collection/ServiceCluster.java

    r38847 r38955  
    674674              Element di_list = result_doc.createElement(GSXML.DISPLAY_TEXT_ELEM + GSXML.LIST_MODIFIER);
    675675              description.appendChild(di_list);
    676               synchronized (this.display_item_list) {
    677                   DisplayItemUtil.addLanguageSpecificDisplayItems(di_list, this.display_item_list, lang, DEFAULT_LANG, this.class_loader);
    678               }
     676              //synchronized (this.display_item_list) {
     677              Element main_di_list_copy = (Element)result_doc.importNode(this.display_item_list, true);
     678              DisplayItemUtil.addLanguageSpecificDisplayItems(di_list,/* this.display_item_list*/ main_di_list_copy, lang, DEFAULT_LANG, this.class_loader);
     679                  //}
    679680                description.appendChild(result_doc.importNode(this.service_list, true));
    680681                description.appendChild(result_doc.importNode(this.metadata_list, true));
     
    707708                      Element di_list = result_doc.createElement(GSXML.DISPLAY_TEXT_ELEM + GSXML.LIST_MODIFIER);
    708709                      description.appendChild(di_list);
    709                       DisplayItemUtil.addLanguageSpecificDisplayItems(di_list, this.display_item_list, lang, DEFAULT_LANG, this.class_loader);
     710                      Element main_di_list_copy = (Element)result_doc.importNode(this.display_item_list, true);
     711                      DisplayItemUtil.addLanguageSpecificDisplayItems(di_list, /*this.display_item_list*/ main_di_list_copy, lang, DEFAULT_LANG, this.class_loader);
    710712
    711713                    }
  • main/trunk/greenstone3/src/java/org/greenstone/gsdl3/collection/XMLCollection.java

    r38847 r38955  
    8989          Element di_list = response_doc.createElement(GSXML.DISPLAY_TEXT_ELEM + GSXML.LIST_MODIFIER);
    9090          description.appendChild(di_list);
    91           synchronized(this.display_item_list) {
    92           DisplayItemUtil.addLanguageSpecificDisplayItems(di_list, this.display_item_list, lang, DEFAULT_LANG, this.class_loader);
    93           }
     91          //synchronized(this.display_item_list) {
     92          Element main_di_list_copy = (Element)response_doc.importNode(this.display_item_list, true);
     93          DisplayItemUtil.addLanguageSpecificDisplayItems(di_list, /*this.display_item_list*/ main_di_list_copy, lang, DEFAULT_LANG, this.class_loader);
     94          //}
    9495        description.appendChild(response_doc.importNode(this.service_list, true));
    9596        description.appendChild(response_doc.importNode(this.metadata_list, true));
     
    114115              Element di_list = response_doc.createElement(GSXML.DISPLAY_TEXT_ELEM + GSXML.LIST_MODIFIER);
    115116              description.appendChild(di_list);
    116               DisplayItemUtil.addLanguageSpecificDisplayItems(di_list, this.display_item_list, lang, DEFAULT_LANG, this.class_loader);
     117              Element main_di_list_copy = (Element)response_doc.importNode(this.display_item_list, true);
     118              DisplayItemUtil.addLanguageSpecificDisplayItems(di_list, /*this.display_item_list*/ main_di_list_copy, lang, DEFAULT_LANG, this.class_loader);
    117119       
    118120           
Note: See TracChangeset for help on using the changeset viewer.