Changeset 12669
- Timestamp:
- 2006-09-05T11:56:22+12:00 (18 years ago)
- Location:
- trunk/gli/src/org/greenstone/gatherer/gems
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/gli/src/org/greenstone/gatherer/gems/MetadataElementModel.java
r12572 r12669 54 54 */ 55 55 public class MetadataElementModel 56 { 57 private Element metadata_element; 58 private ArrayList attributes; 59 private ArrayList langDependAttributes; 60 private ArrayList children; 61 private MetadataElementModel parent; 62 private static ArrayList listeners = new ArrayList(); 63 private MetadataSetInfo metadataSetInfo; 64 private String name; 65 private static int count = 0; 66 67 public MetadataElementModel(){} 68 69 public MetadataElementModel(MetadataSetInfo info){ 70 metadataSetInfo = info; 71 attributes = new ArrayList(); 72 langDependAttributes = new ArrayList(); 73 children = new ArrayList(); 74 name = GEMSConstants.NEW_ELEMENT+(count++); 75 } 76 77 public MetadataElementModel(Element metadataElement, MetadataSetInfo info){ 78 metadataSetInfo = info; 79 metadata_element = metadataElement; 80 81 children = new ArrayList(); 82 attributes = new ArrayList(); 83 langDependAttributes = new ArrayList(); 84 85 constructModel(metadata_element); 86 87 ArrayList child_elements =XMLTools.getChildElementsByTagName(metadata_element,GEMSConstants.ELEMENT_ELEMENT); 88 89 for(int i=0;i<child_elements.size();i++){ 90 Element element = (Element)child_elements.get(i); 91 MetadataElementModel submodel = new MetadataElementModel(element,metadataSetInfo); 92 submodel.setParent(this); 93 children.add(submodel); 94 } 95 } 96 97 private void constructModel(Element meta_element){ 98 name = meta_element.getAttribute(GEMSConstants.NAME_ATTRIBUTE); 56 extends AttributeContainer 57 { 58 private Element metadata_element; 59 private ArrayList children; 60 private MetadataElementModel parent; 61 private static ArrayList listeners = new ArrayList(); 62 private MetadataSetInfo metadataSetInfo; 63 private String name; 64 private static int count = 0; 65 66 public MetadataElementModel(){} 67 68 // do we need this one? 69 public MetadataElementModel(MetadataSetInfo info){ 70 this(info, null); 71 } 72 73 public MetadataElementModel(MetadataSetInfo info, String new_name){ 74 super(null, GEMSConstants.ELEMENT_LANG_DEPEND_ATTR_NAMES); 75 required_attribute_names = GEMSConstants.ELEMENT_REQUIRED_ATTRIBUTES; 76 metadataSetInfo = info; 77 children = new ArrayList(); 78 if (new_name != null) { 79 name = new_name; 80 } else { 81 name = GEMSConstants.NEW_ELEMENT+(count++); 82 } 83 // add name in as an attribute - lang independent 84 Attribute attr = new Attribute(GEMSConstants.NAME_ATTRIBUTE, name, true); 85 attributes.add(attr); 86 87 } 99 88 100 // common attributes 101 ArrayList attribute_nodes =XMLTools.getChildElementsByTagName(metadata_element,GEMSConstants.ATTRIBUTE_ELEMENT); 102 103 for(int i=0;i< attribute_nodes.size();i++){ 104 Element attr_element = (Element)attribute_nodes.get(i); 105 String name = attr_element.getAttribute(GEMSConstants.NAME_ATTRIBUTE); 106 String value = XMLTools.getElementTextValue(attr_element); 107 Attribute attr = new Attribute(name,value); 108 attr.setLanguage(attr_element.getAttribute(GEMSConstants.LANGUAGE_ATTRIBUTE)); 109 attributes.add(attr); 110 111 } 112 113 //language specific attribute 114 ArrayList language_elements =XMLTools.getChildElementsByTagName(metadata_element,GEMSConstants.LANGUAGE_ELEMENT); 115 116 for(int i=0;i< language_elements.size();i++){ 117 Element language_element = (Element)language_elements.get(i); 118 String lang = language_element.getAttribute(GEMSConstants.CODE_ATTRIBUTE); 119 //Attribute element 120 ArrayList subattributes =XMLTools.getChildElementsByTagName(language_element,GEMSConstants.ATTRIBUTE_ELEMENT); 89 public MetadataElementModel(Element metadataElement, MetadataSetInfo info){ 90 super(null, null); 91 required_attribute_names = GEMSConstants.ELEMENT_REQUIRED_ATTRIBUTES; 92 language_dependent_attribute_names = GEMSConstants.ELEMENT_LANG_DEPEND_ATTR_NAMES; 93 metadataSetInfo = info; 94 metadata_element = metadataElement; 95 96 children = new ArrayList(); 97 98 constructModel(metadata_element); 99 100 ArrayList child_elements =XMLTools.getChildElementsByTagName(metadata_element,GEMSConstants.ELEMENT_ELEMENT); 101 102 for(int i=0;i<child_elements.size();i++){ 103 Element element = (Element)child_elements.get(i); 104 MetadataElementModel submodel = new MetadataElementModel(element,metadataSetInfo); 105 submodel.setParent(this); 106 children.add(submodel); 107 } 108 } 109 110 private void constructModel(Element meta_element){ 111 name = meta_element.getAttribute(GEMSConstants.NAME_ATTRIBUTE); 112 113 // add name in as an attribute - the only lang independent one 114 Attribute attr = new Attribute(GEMSConstants.NAME_ATTRIBUTE, name, true); 115 attributes.add(attr); 116 117 // common attributes 118 ArrayList attribute_nodes =XMLTools.getChildElementsByTagName(metadata_element,GEMSConstants.ATTRIBUTE_ELEMENT); 119 120 for(int i=0;i< attribute_nodes.size();i++){ 121 Element attr_element = (Element)attribute_nodes.get(i); 122 String name = attr_element.getAttribute(GEMSConstants.NAME_ATTRIBUTE).trim(); 123 124 String value = XMLTools.getElementTextValue(attr_element); 125 attr = new Attribute(name,value); 126 String lang = attr_element.getAttribute(GEMSConstants.LANGUAGE_ATTRIBUTE); 127 if (lang.equals("")) { 128 // lang independent 129 attr.setRequired(isAttributeRequired(name)); 130 attributes.add(attr); 131 } else { 132 attr.setLanguage(lang); 133 attr.setRequired(isLangDependentAttributeRequired(name)); 134 language_dependent_attributes.add(attr); 135 } 136 } 137 138 //language specific attribute 139 ArrayList language_elements =XMLTools.getChildElementsByTagName(metadata_element,GEMSConstants.LANGUAGE_ELEMENT); 140 141 for(int i=0;i< language_elements.size();i++){ 142 Element language_element = (Element)language_elements.get(i); 143 String lang = language_element.getAttribute(GEMSConstants.CODE_ATTRIBUTE); 144 //Attribute element 145 ArrayList subattributes =XMLTools.getChildElementsByTagName(language_element,GEMSConstants.ATTRIBUTE_ELEMENT); 121 146 122 123 124 String name = attr_element.getAttribute(GEMSConstants.NAME_ATTRIBUTE);125 126 Attribute attr = new Attribute(name,value);127 128 langDependAttributes.add(attr);129 147 for(int j=0;j< subattributes.size();j++){ 148 Element attr_element = (Element)subattributes.get(j); 149 String name = attr_element.getAttribute(GEMSConstants.NAME_ATTRIBUTE).trim(); 150 String value = XMLTools.getElementTextValue(attr_element); 151 attr = new Attribute(name,value, isLangDependentAttributeRequired(name)); 152 attr.setLanguage(lang); 153 language_dependent_attributes.add(attr); 154 } 130 155 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 156 } 157 158 } 159 160 public void addMetadataElementListener(MetadataElementListener msl){ 161 if (!listeners.contains(msl)) 162 listeners.add(msl); 163 } 164 165 166 public void removeMetadataElementListener(MetadataElementListener msl){ 167 listeners.remove(msl); 168 } 169 170 public void removeAllMetadataElementListeners(){ 171 listeners.clear(); 172 } 148 173 149 public ArrayList getAttributes(){150 return attributes;151 }152 174 153 175 154 public ArrayList getLangDependAttributes(){ 155 return langDependAttributes; 156 } 157 158 public Element getMetadataElement(){ 159 return metadata_element; 160 } 161 162 public void notifyListeners(boolean isDeleted){ 163 MetadataElementEvent mee = new MetadataElementEvent(this); 176 177 public Element getMetadataElement(){ 178 return metadata_element; 179 } 180 181 public void notifyListeners(boolean isDeleted){ 182 183 MetadataElementEvent mee = new MetadataElementEvent(this); 164 184 if (!isDeleted){ 165 185 mee = new MetadataElementEvent(this); … … 172 192 MetadataElementListener msl = (MetadataElementListener) listeners.get(i); 173 193 msl.metadataElementChanged(mee); 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 194 } 195 } 196 197 public ArrayList getChildElements(){ 198 return children; 199 } 200 201 public void addChild(MetadataElementModel child){ 202 metadataSetInfo.getMetadataSetModel().setChanged(true); 203 child.setParent(this); 204 children.add(child); 205 } 206 207 public void removeChild(MetadataElementModel element_model){ 208 metadataSetInfo.getMetadataSetModel().setChanged(true); 209 children.remove(element_model); 210 } 211 212 public String getName(){ 213 return name; 214 } 215 216 public void setName(String new_name){ 217 metadataSetInfo.getMetadataSetModel().setChanged(true); 218 name = new_name; 199 219 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 MetadataSetModel metadata_model = metadataSetInfo.getMetadataSetModel(); 221 metadata_model.valueChanged(); 222 } 223 224 public String getFullName(){ 225 if (parent == null){ 226 return metadataSetInfo.getNamespace() +"."+name; 227 } 228 else{ 229 return parent.getFullName() +"^"+ name; 230 } 231 } 232 233 public void setParent(MetadataElementModel pr){ 234 parent = pr; 235 } 236 237 public MetadataElementModel getParent(){ 238 return parent; 239 } 220 240 221 241 222 public boolean moveUp(MetadataElementModel child){ 223 metadataSetInfo.getMetadataSetModel().setChanged(true); 224 int index = children.indexOf(child); 225 if (index-1 >=0){ 226 children.remove(child); 227 children.add(index-1,child); 228 return true; 229 } 230 return false; 231 } 232 233 public boolean moveDown(MetadataElementModel child){ 234 metadataSetInfo.getMetadataSetModel().setChanged(true); 235 int index = children.indexOf(child); 236 if (index+1 < children.size()){ 237 children.remove(child); 238 children.add(index+1,child); 239 return true; 240 } 241 242 return false; 243 } 244 245 private ArrayList getAllLanguages(){ 246 ArrayList langs = new ArrayList(); 247 248 for(int i=0;i<langDependAttributes.size();i++){ 249 Attribute attr = (Attribute) langDependAttributes.get(i); 250 if (!langs.contains(attr.getLanguage()) && !attr.getLanguage().trim().equals("")){ 251 langs.add(attr.getLanguage()); 252 } 253 } 254 255 return langs; 256 } 257 258 public int languageExist(String lang){ 259 for(int i=0;i<langDependAttributes.size();i++){ 260 Attribute attr = (Attribute) langDependAttributes.get(i); 261 if (attr.getLanguage().trim().equals(lang.trim())){ 262 return i; 263 } 264 } 265 266 return -1; 267 } 268 269 public String[] getLangDependAttrNames(){ 270 return metadataSetInfo.getLangDependAttrNames(); 271 } 272 273 private ArrayList getAttributesByLanguage(String lang){ 274 ArrayList attrs = new ArrayList(); 275 276 for(int i=0;i<langDependAttributes.size();i++){ 277 Attribute attr = (Attribute) langDependAttributes.get(i); 278 if (!attr.getLanguage().trim().equals("") && attr.getLanguage().trim().equals(lang)){ 279 attrs.add(attr); 280 } 281 } 282 283 return attrs; 284 } 285 286 287 public void save(){ 288 saveElement(); 242 public boolean moveUp(MetadataElementModel child){ 243 metadataSetInfo.getMetadataSetModel().setChanged(true); 244 int index = children.indexOf(child); 245 if (index-1 >=0){ 246 children.remove(child); 247 children.add(index-1,child); 248 return true; 249 } 250 return false; 251 } 252 253 public boolean moveDown(MetadataElementModel child){ 254 metadataSetInfo.getMetadataSetModel().setChanged(true); 255 int index = children.indexOf(child); 256 if (index+1 < children.size()){ 257 children.remove(child); 258 children.add(index+1,child); 259 return true; 260 } 261 262 return false; 263 } 264 265 public void save(){ 266 saveElement(); 289 267 290 291 292 293 268 for(int i=0;i<children.size();i++){ 269 MetadataElementModel model = (MetadataElementModel)children.get(i); 270 model.save(); 271 } 294 272 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 273 } 274 275 276 private void saveElement(){ 277 Document doc = metadataSetInfo.getMetadataSetDocument(); 278 279 Node parent_element = null; 280 281 if (parent !=null){ 282 parent_element = parent.getMetadataElement(); 283 } 284 else{ 285 parent_element = doc.getDocumentElement(); 286 } 287 288 289 metadata_element = save(doc); 290 291 parent_element.appendChild(metadata_element); 314 292 315 293 316 317 318 319 320 321 322 294 } 295 296 297 private Element save(Document doc){ 298 299 metadata_element = doc.createElement(GEMSConstants.ELEMENT_ELEMENT); 300 metadata_element.setAttribute(GEMSConstants.NAME_ATTRIBUTE,name); 323 301 324 //non language dependent attributes 325 for(int i=0;i<attributes.size();i++){ 326 Attribute attr = (Attribute)attributes.get(i); 327 if (attr.getName() == null || attr.getName().trim().equals("")) continue; 328 Element attrElement = doc.createElement(GEMSConstants.ATTRIBUTE_ELEMENT); 329 attrElement.setAttribute(GEMSConstants.NAME_ATTRIBUTE,attr.getName()); 330 attrElement.appendChild(doc.createTextNode(attr.getValue())); 331 metadata_element.appendChild(attrElement); 332 } 333 334 335 //language dependent attributes 336 ArrayList langs = getAllLanguages(); 337 for (int i=0;i<langs.size();i++){ 338 String lang = (String)langs.get(i); 339 Element langElement = doc.createElement(GEMSConstants.LANGUAGE_ELEMENT); 340 langElement.setAttribute(GEMSConstants.CODE_ATTRIBUTE,lang); 341 ArrayList langAttrs = getAttributesByLanguage(lang); 342 for (int j=0;j<langAttrs.size();j++){ 343 Attribute attr = (Attribute)langAttrs.get(j); 344 Element attrElement = doc.createElement(GEMSConstants.ATTRIBUTE_ELEMENT); 345 attrElement.setAttribute(GEMSConstants.NAME_ATTRIBUTE,attr.getName()); 346 attrElement.appendChild(doc.createTextNode(attr.getValue())); 347 langElement.appendChild(attrElement); 302 //non language dependent attributes 303 for(int i=0;i<attributes.size();i++){ 304 Attribute attr = (Attribute)attributes.get(i); 305 if (attr.getName() == null || attr.getName().trim().equals("")) continue; 306 if (attr.getName().equals("name")) continue; 307 Element attrElement = doc.createElement(GEMSConstants.ATTRIBUTE_ELEMENT); 308 attrElement.setAttribute(GEMSConstants.NAME_ATTRIBUTE,attr.getName()); 309 attrElement.appendChild(doc.createTextNode(attr.getValue())); 310 metadata_element.appendChild(attrElement); 311 } 312 313 314 //language dependent attributes 315 ArrayList langs = getAllLanguages(); 316 for (int i=0;i<langs.size();i++){ 317 String lang = (String)langs.get(i); 318 Element langElement = doc.createElement(GEMSConstants.LANGUAGE_ELEMENT); 319 langElement.setAttribute(GEMSConstants.CODE_ATTRIBUTE,lang); 320 ArrayList langAttrs = getAttributesByLanguage(lang); 321 for (int j=0;j<langAttrs.size();j++){ 322 Attribute attr = (Attribute)langAttrs.get(j); 323 Element attrElement = doc.createElement(GEMSConstants.ATTRIBUTE_ELEMENT); 324 attrElement.setAttribute(GEMSConstants.NAME_ATTRIBUTE,attr.getName()); 325 attrElement.appendChild(doc.createTextNode(attr.getValue())); 326 langElement.appendChild(attrElement); 348 327 349 350 351 352 353 328 } 329 metadata_element.appendChild(langElement); 330 } 331 332 return metadata_element; 354 333 355 334 } 356 335 357 336 -
trunk/gli/src/org/greenstone/gatherer/gems/MetadataSetInfo.java
r12572 r12669 53 53 /** 54 54 * @author Shaoqun Wu, Greenstone Digital Library, University of Waikato 55 * @version 2.456 55 */ 57 public class MetadataSetInfo{ 58 59 private ArrayList attributes; // store the attributes of MetadataSet Element 60 61 private ArrayList langDependAttributes; 62 56 public class MetadataSetInfo 57 extends AttributeContainer 58 { 59 63 60 private String file_path=""; 64 61 … … 72 69 73 70 public MetadataSetInfo(){ 74 75 attributes = new ArrayList(); 76 langDependAttributes = new ArrayList(); 77 78 for(int i=0;i<GEMSConstants.REQUIRED_ATTRIBUTES.length;i++){ 79 String reName = GEMSConstants.REQUIRED_ATTRIBUTES[i]; 80 Attribute attr = new Attribute(reName,"",true,false); 81 attributes.add(attr); 82 } 83 84 Attribute attr = new Attribute(GEMSConstants.LANGUAGE_DEPENDENT_ATTRIBUTE,"",false,false); 85 attributes.add(attr); 86 87 attr = new Attribute(GEMSConstants.NAME_ATTRIBUTE,"",true,true); 88 attr.setLanguage(getCurrentLanguage()); 89 langDependAttributes.add(attr); 90 attr = new Attribute(GEMSConstants.DESCRIPTION_ATTRIBUTE,""); 91 attr.setLanguage(getCurrentLanguage()); 92 langDependAttributes.add(attr); 93 71 super(GEMSConstants.SET_REQUIRED_ATTRIBUTES, GEMSConstants.SET_LANG_DEPEND_ATTR_NAMES); 94 72 } 95 73 96 public boolean checkNamespace(String namespace){97 if(metadata_model != null)98 return metadata_model.getMetadataSetManager(). checkNamespace(namespace);99 100 return true;74 public boolean isNamespaceAlreadyUsed(String namespace){ 75 if(metadata_model != null) { 76 return metadata_model.getMetadataSetManager().isNamespaceAlreadyUsed(namespace); 77 } 78 return false; 101 79 } 102 80 … … 111 89 public Document getMetadataSetDocument(){ 112 90 return metadata_model.getMetadataSetDocument(); 113 }114 115 public ArrayList getAttributes(){116 return attributes;117 }118 119 public void setAttributes(ArrayList new_attributes){120 attributes = new_attributes;121 for(int i=0;i<attributes.size();i++){122 Attribute attr = (Attribute)attributes.get(i);123 }124 125 }126 127 private Attribute getAttributeByName(String name){128 for(int i=0;i<attributes.size();i++){129 Attribute attr = (Attribute) attributes.get(i);130 if (attr.getName() != null && attr.getName().trim().equals(name.trim())){131 return attr;132 }133 }134 135 return null;136 }137 138 private Attribute getAttributeByNameAndLanguage(String name, String lang){139 for(int i=0;i<langDependAttributes.size();i++){140 Attribute attr = (Attribute) langDependAttributes.get(i);141 if (attr.getName() != null || attr.getLanguage()!=null){142 if (attr.getName().trim().equals(name.trim()) && (attr.getLanguage().trim().equals(lang.trim()))){143 return attr;144 }145 }146 }147 148 return null;149 150 }151 152 153 private ArrayList getAllLanguages(){154 ArrayList langs = new ArrayList();155 156 for(int i=0;i<langDependAttributes.size();i++){157 Attribute attr = (Attribute) langDependAttributes.get(i);158 if (!langs.contains(attr.getLanguage()) && !attr.getLanguage().trim().equals("")){159 langs.add(attr.getLanguage());160 }161 }162 163 return langs;164 }165 166 public void setLangDependAttributes(ArrayList lda){167 langDependAttributes = lda;168 for(int i=0;i<langDependAttributes.size();i++){169 Attribute attr = (Attribute)langDependAttributes.get(i);170 }171 172 }173 174 175 public ArrayList getLangDependAttributes(){176 177 return langDependAttributes;178 91 } 179 92 … … 187 100 188 101 189 public String getMetadataSetName(){ 190 Attribute attr = getAttributeByNameAndLanguage(GEMSConstants.NAME_ATTRIBUTE,getCurrentLanguage()); 191 if (attr != null){ 102 public String getMetadataSetName(){ 103 return getMetadataSetName(getCurrentLanguage()); 104 } 105 106 public String getMetadataSetName(String lang){ 107 Attribute attr = getAttributeByNameAndLanguage(GEMSConstants.NAME_ATTRIBUTE,lang); 108 if (attr != null) { 192 109 return attr.getValue(); 193 110 } 194 else {195 111 else { 112 return GEMSConstants.UNKNOWN_NAME; 196 113 } 197 114 } 198 115 199 public String getMetadataSetName(String lang){ 200 Attribute attr = getAttributeByNameAndLanguage(GEMSConstants.NAME_ATTRIBUTE,lang); 201 if (attr != null){ 202 return attr.getValue(); 203 } 204 else{ 205 return GEMSConstants.UNKNOWN_NAME; 206 } 207 } 116 public void setMetadataSetName(String name){ 117 setMetadataSetName(name, getCurrentLanguage()); 118 } 208 119 209 120 public void setMetadataSetName(String name,String lang){ … … 214 125 } 215 126 216 public void setMetadataSetName(String name){217 Attribute attr = getAttributeByNameAndLanguage(GEMSConstants.NAME_ATTRIBUTE,getCurrentLanguage());218 if (attr != null){219 attr.setValue(name);220 }221 }222 223 127 224 128 225 129 public String getMetadataSetDescription(){ 226 Attribute attr = getAttributeByNameAndLanguage(GEMSConstants.DESCRIPTION_ATTRIBUTE,getCurrentLanguage()); 227 if (attr != null){ 228 return attr.getValue(); 229 } 230 else{ 231 return ""; 232 } 233 130 return getMetadataSetDescription(getCurrentLanguage()); 234 131 } 235 132 … … 244 141 } 245 142 143 public void setMetadataSetDescription(String desc) { 144 setMetadataSetDescription(desc, getCurrentLanguage()); 145 } 146 147 public void setMetadataSetDescription(String desc, String lang) { 148 Attribute attr = getAttributeByNameAndLanguage(GEMSConstants.DESCRIPTION_ATTRIBUTE,lang); 149 if (attr != null){ 150 attr.setValue(desc); 151 } 152 } 153 246 154 public String getCurrentLanguage(){ 247 155 return current_language; … … 252 160 } 253 161 254 public int languageExist(String lang){255 for(int i=0;i<langDependAttributes.size();i++){256 Attribute attr = (Attribute) langDependAttributes.get(i);257 if (attr.getLanguage() !=null && attr.getLanguage().trim().equals(lang.trim())){258 return i;259 }260 }261 262 return -1;263 }264 265 public String[] getLangDependAttrNames(){266 Attribute attr = getAttributeByName(GEMSConstants.LANGUAGE_DEPENDENT_ATTRIBUTE);267 if (attr !=null){268 return attr.getValue().split(GEMSConstants.LANGUAGE_DEPENDENT_SPLIT_STRING);269 }270 return null;271 }272 273 162 public String getNamespace(){ 274 163 Attribute attr = getAttributeByName(GEMSConstants.NAMESPACE_ATTRIBUTE); … … 351 240 352 241 Element doc_element = doc.getDocumentElement(); 353 354 //remove all attributes 242 //remove all attributes 355 243 NamedNodeMap attrs = doc.getDocumentElement().getAttributes(); 356 244 for (int i=0;i<attrs.getLength();i++){ … … 369 257 NodeList setLanguages = doc_element.getElementsByTagName(GEMSConstants.SET_LANGUAGE_ELEMENT); 370 258 371 for(int i=0;i<setLanguages.getLength();i++){372 373 374 259 for (int i=setLanguages.getLength()-1;i>=0;--i){ 260 Node set_language = setLanguages.item(i); 261 doc_element.removeChild(set_language); 262 } 375 263 376 264 ArrayList names = XMLTools.getChildElementsByTagName(doc_element,GEMSConstants.NAME_ELEMENT); … … 390 278 Node previous_element = null; 391 279 392 //add setLangu guage elements280 //add setLanguage elements 393 281 ArrayList langs = getAllLanguages(); 394 282 for (int i=0;i<langs.size();i++){ 395 283 String lang = (String)langs.get(i); 396 284 Attribute name = getAttributeByNameAndLanguage(GEMSConstants.NAME_ATTRIBUTE,lang); 397 285 if (name !=null){ 398 286 Element set_element = doc.createElement(GEMSConstants.SET_LANGUAGE_ELEMENT); … … 417 305 } 418 306 } 419 else {307 else { 420 308 doc_element.insertBefore(set_element,first_child); 421 309 first_child = null;
Note:
See TracChangeset
for help on using the changeset viewer.