1 19 20 package org.netbeans.modules.j2ee.ddloaders.web.multiview; 21 22 import org.netbeans.modules.j2ee.dd.api.web.FilterMapping; 24 import org.netbeans.modules.j2ee.dd.api.web.WebApp; 25 import org.netbeans.modules.j2ee.dd.api.common.CommonDDBean; 26 import org.openide.util.NbBundle; 27 28 public class FilterMappingsTableModel extends DDBeanTableModel 29 { 30 private static final String [] columnNames = { 31 NbBundle.getMessage(FilterMappingsTableModel.class,"TTL_FilterName"), 32 NbBundle.getMessage(FilterMappingsTableModel.class,"TTL_AppliesTo"), 33 NbBundle.getMessage(FilterMappingsTableModel.class,"TTL_DispatcherTypes") 34 }; 35 36 protected String [] getColumnNames() { 37 return columnNames; 38 } 39 47 48 public Object getValueAt(int row, int column) 49 { 50 FilterMapping map = (FilterMapping)getChildren().get(row); 51 52 if (column == 0) return map.getFilterName(); 53 else if (column==1) { 54 String urlPattern = map.getUrlPattern(); 55 return (urlPattern==null? 56 NbBundle.getMessage(FilterMappingsTableModel.class,"TXT_appliesToServlet",map.getServletName()): 57 NbBundle.getMessage(FilterMappingsTableModel.class,"TXT_appliesToUrl",urlPattern)); 58 } else { 59 try { 60 return DDUtils.urlPatternList(map.getDispatcher()); 61 } catch (org.netbeans.modules.j2ee.dd.api.common.VersionNotSupportedException ex) { 62 return null; 63 } 64 } 65 } 66 67 public CommonDDBean addRow(Object [] values) 68 { 69 try { 70 FilterMapping map = (FilterMapping)((WebApp)getParent()).createBean("FilterMapping"); map.setFilterName((String )values[0]); 72 if (values[1]!=null) map.setUrlPattern((String )values[1]);; 73 if (values[2]!=null) map.setServletName((String )values[2]); 74 try { 75 if (values[3]!=null) map.setDispatcher((String [])values[3]); 76 } catch (org.netbeans.modules.j2ee.dd.api.common.VersionNotSupportedException ex) {} 77 ((WebApp)getParent()).addFilterMapping(map); 78 getChildren().add(map); 79 fireTableRowsInserted(getRowCount() - 1, getRowCount() - 1); 80 return map; 81 } catch (ClassNotFoundException ex) {} 82 return null; 83 } 84 85 86 public void editRow(int row, Object [] values) 87 { 88 FilterMapping map = (FilterMapping)getChildren().get(row); 89 map.setFilterName((String )values[0]); 90 map.setUrlPattern((String )values[1]); 91 map.setServletName((String )values[2]); 92 try { 93 map.setDispatcher((String [])values[3]); 94 } catch (org.netbeans.modules.j2ee.dd.api.common.VersionNotSupportedException ex) {} 95 fireTableRowsUpdated(row,row); 96 } 97 98 public void removeRow(int row) 99 { 100 ((WebApp)getParent()).removeFilterMapping((FilterMapping)getChildren().get(row)); 101 getChildren().remove(row); 102 fireTableRowsDeleted(row, row); 103 104 } 105 } | Popular Tags |