1 6 7 package albel.tags.table.model; 8 9 13 import java.util.*; 14 15 public class TableHandlers 16 { 17 18 21 private transient java.util.ArrayList IRowHandlerList; 22 private Table table; 23 24 25 private TableHandlers() 26 { 27 } 28 public TableHandlers(Table table) 29 { 30 this.table=table; 31 } 32 33 37 public synchronized void addRowHandler(albel.tags.table.model.IRowHandler listener) 38 { 39 if (IRowHandlerList == null ) 40 { 41 IRowHandlerList = new java.util.ArrayList (); 42 } 43 IRowHandlerList.add(listener); 44 } 45 46 50 public synchronized void removeRowHandler(albel.tags.table.model.IRowHandler listener) 51 { 52 if (IRowHandlerList != null ) 53 { 54 IRowHandlerList.remove(listener); 55 } 56 } 57 58 63 public void fireRowHandlerHandleUpdate(albel.tags.table.model.Cell cells[]) 64 throws TableTagException 65 { 66 java.util.ArrayList list; 67 synchronized (this) 68 { 69 if (IRowHandlerList == null) return; 70 list = (java.util.ArrayList )IRowHandlerList.clone(); 71 } 72 for (int i = 0; i < list.size(); i++) 73 { 74 ((albel.tags.table.model.IRowHandler)list.get(i)).handleUpdate(table,cells); 75 } 76 } 77 82 public List fireRowHandlerHandleLoad() 83 throws TableTagException 84 { 85 java.util.ArrayList list; 86 synchronized (this) 87 { 88 if (IRowHandlerList == null) return new ArrayList(); 89 list = (java.util.ArrayList )IRowHandlerList.clone(); 90 } 91 List l=null; 92 for (int i = 0; i < list.size(); i++) 93 { 94 l=((albel.tags.table.model.IRowHandler)list.get(i)).handleLoad(); 95 break; 96 97 } 98 return l; 99 } 100 105 public void fireRowHandlerHandleCreate(Table t,Cell cells[]) 106 throws TableTagException 107 { 108 java.util.ArrayList list; 109 synchronized (this) 110 { 111 if (IRowHandlerList == null) return; 112 list = (java.util.ArrayList )IRowHandlerList.clone(); 113 } 114 List main=new ArrayList(); 115 for (int i = 0; i < list.size(); i++) 116 { 117 ((albel.tags.table.model.IRowHandler)list.get(i)).handleCreate(t,cells); 118 } 119 } 120 public void fireRowHandlerHandleDelete(Row row) 121 throws TableTagException 122 { 123 java.util.ArrayList list; 124 synchronized (this) 125 { 126 if (IRowHandlerList == null) return; 127 list = (java.util.ArrayList )IRowHandlerList.clone(); 128 } 129 List main=new ArrayList(); 130 for (int i = 0; i < list.size(); i++) 131 { 132 ((albel.tags.table.model.IRowHandler)list.get(i)).handleDelete(row); 133 } 134 } 135 public boolean hasHandlerOfClass(String klaz) 136 { 137 java.util.ArrayList list; 138 synchronized (this) 139 { 140 if (IRowHandlerList == null) return false; 141 list = (java.util.ArrayList )IRowHandlerList.clone(); 142 } 143 boolean has=false; 144 for (int i = 0; i < list.size(); i++) 145 { 146 has=list.get(i).getClass().getName().equals(klaz); 147 if (has) 148 break; 149 } 150 return has; 151 } 152 public boolean hasHandlerOfObject(Object o) 153 { 154 java.util.ArrayList list; 155 synchronized (this) 156 { 157 if (IRowHandlerList == null) return false; 158 list = (java.util.ArrayList )IRowHandlerList.clone(); 159 } 160 boolean has=false; 161 for (int i = 0; i < list.size(); i++) 162 { 163 has=list.get(i).equals(o); 164 if (has) 165 break; 166 } 167 return has; 168 } 169 170 } 171 | Popular Tags |