1 20 21 package com.jsptags.navigation.pager; 22 23 import javax.servlet.jsp.*; 24 import javax.servlet.jsp.tagext.*; 25 import com.jsptags.navigation.pager.parser.*; 26 27 public final class IndexTagExtraInfo extends TagExtraInfo { 28 29 public VariableInfo[] getVariableInfo(TagData tagData) { 30 String export = tagData.getAttributeString("export"); 31 if (export != null) { 32 try { 33 IndexTagExport indexTagExport = 34 TagExportParser.parseIndexTagExport(export); 35 int len = 0; 36 if (indexTagExport.getItemCount() != null) 37 len++; 38 if (indexTagExport.getPageCount() != null) 39 len++; 40 41 VariableInfo[] varinfo = new VariableInfo[len]; 42 int i = 0; 43 44 String name; 45 if ((name = indexTagExport.getItemCount()) != null) 46 varinfo[i++] = new VariableInfo(name, 47 java.lang.Integer .class.getName(), 48 true, VariableInfo.NESTED); 49 if ((name = indexTagExport.getPageCount()) != null) 50 varinfo[i++] = new VariableInfo(name, 51 java.lang.Integer .class.getName(), 52 true, VariableInfo.NESTED); 53 54 return varinfo; 55 } catch (ParseException ex) { 56 return new VariableInfo[0]; 57 } 58 } else { 59 return new VariableInfo[0]; 60 } 61 } 62 63 public boolean isValid(TagData tagData) { 64 String export = tagData.getAttributeString("export"); 65 if (export != null) { 66 try { 67 TagExportParser.parseIndexTagExport(export); 68 } catch (ParseException ex) { 69 return false; 70 } 71 } 72 return true; 73 } 74 } 75 76 77 | Popular Tags |