1 package com.teamkonzept.webman.attr; 2 3 import com.teamkonzept.lib.*; 4 import com.teamkonzept.publishing.markups.*; 5 6 import java.util.*; 7 8 public class TKWMAttrMarkupIterator extends TKIteratorPlugin { 9 10 int markup_index; 11 String fieldPath; 12 13 TKWMAttrMarkupParamsIterator params; 14 TKWMAttrMarkupOptionsIterator options; 15 16 public TKWMAttrMarkupIterator (String listName, Enumeration markups, String fieldPath) { 17 18 super (markups,listName,true); 19 this.fieldPath = fieldPath; 20 } 21 22 public void init () { 23 24 markup_index = -1; 25 params = null; 26 options = null; 27 } 28 29 public boolean applyThis (Object item, TKTemplate template, String path) { 30 31 if (!(item instanceof TKWMAttrMarkup)) return false; 32 33 TKWMAttrMarkup markup = (TKWMAttrMarkup) item; 34 35 if (markup.idPar == null) return false; 36 37 markup_index++; 38 39 params = new TKWMAttrMarkupParamsIterator ("CE_CA_PARAMS",markup.params, fieldPath+".MARKUPS."+markup_index); 40 options = markup.isAtom ? 41 new TKWMAttrMarkupOptionsIterator ("CE_CA_MARKUP_OPTION",TKMarkupDefinition.allAtomMarkups()) : 42 new TKWMAttrMarkupOptionsIterator ("CE_CA_MARKUP_OPTION",TKMarkupDefinition.allCompoundMarkups()); 43 44 if (markup.name != null) template.set( "MARKUP_NAME", markup.name); 45 if (markup.pos >= 0) template.set( "MARKUP_POS", new Integer (markup.pos)); 46 if (markup.isAtom) template.set( "MARKUP_IS_ATOM", new Boolean (markup.isAtom)); 47 48 if ((markup.info != null) && (!markup.info.equals (""))) 49 template.set( "MARKUP_INFO", markup.info); 50 51 template.set( "MARKUP_INDEX", new Integer (markup_index)); 52 template.set( "NEW_MARKUP_NAME",fieldPath+".MARKUPS."+markup_index+".NEW_NAME"); 53 template.set( "OLD_MARKUP_NAME",fieldPath+".MARKUPS."+markup_index+".OLD_NAME"); 54 55 if (markup.idPar == null) template.set( "ID_PARAM_NAME", "NONE"); 56 else template.set( "ID_PARAM_NAME", markup.idPar.name); 57 58 return true; 59 } 60 61 public boolean applyChilds (TKTemplate template, int i, String currListName, String path) { 62 63 return ((params != null) && params.apply (template,i,currListName,null)) || 64 ((options != null) && options.apply (template,i,currListName,null)); 65 } 66 } 69 | Popular Tags |