1 19 20 package org.netbeans.modules.j2ee.ddloaders.multiview; 21 22 import org.netbeans.modules.j2ee.dd.api.common.SecurityRoleRef; 23 import org.netbeans.modules.j2ee.dd.api.ejb.EntityAndSession; 24 import org.netbeans.modules.xml.multiview.XmlMultiViewDataSynchronizer; 25 26 29 public class SecurityRoleReferencesTableModel extends InnerTableModel { 30 31 private EntityAndSession ejb; 32 private static final String [] COLUMN_NAMES = {Utils.getBundleMessage("LBL_ReferenceName"), 33 Utils.getBundleMessage("LBL_LinkedRole"), 34 Utils.getBundleMessage("LBL_Description")}; 35 private static final int[] COLUMN_WIDTHS = new int[]{100, 150, 100}; 36 37 public SecurityRoleReferencesTableModel(XmlMultiViewDataSynchronizer synchronizer, EntityAndSession ejb) { 38 super(synchronizer, COLUMN_NAMES, COLUMN_WIDTHS); 39 this.ejb = ejb; 40 } 41 42 public void setValueAt(Object value, int rowIndex, int columnIndex) { 43 SecurityRoleRef securityRoleRef = ejb.getSecurityRoleRef(rowIndex); 44 switch (columnIndex) { 45 case 0: 46 securityRoleRef.setRoleName((String ) value); 47 break; 48 case 1: 49 securityRoleRef.setRoleLink((String ) value); 50 break; 51 case 2: 52 securityRoleRef.setDescription((String ) value); 53 break; 54 } 55 modelUpdatedFromUI(); 56 fireTableCellUpdated(rowIndex, columnIndex); 57 } 58 59 public int getRowCount() { 60 return ejb.getSecurityRoleRef().length; 61 } 62 63 public Object getValueAt(int rowIndex, int columnIndex) { 64 SecurityRoleRef securityRoleRef = ejb.getSecurityRoleRef(rowIndex); 65 switch (columnIndex) { 66 case 0: 67 return securityRoleRef.getRoleName(); 68 case 1: 69 return securityRoleRef.getRoleLink(); 70 case 2: 71 return securityRoleRef.getDefaultDescription(); 72 } 73 return null; 74 } 75 76 public int addRow() { 77 SecurityRoleRef securityRoleRef = ejb.newSecurityRoleRef(); 78 ejb.addSecurityRoleRef(securityRoleRef); 79 modelUpdatedFromUI(); 80 return getRowCount() - 1; 81 } 82 83 public void removeRow(int row) { 84 ejb.removeSecurityRoleRef(ejb.getSecurityRoleRef(row)); 85 modelUpdatedFromUI(); 86 } 87 } 88 | Popular Tags |