cdt/cdt_6_0_x/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/CProjectDescriptionManager.java
equal
deleted
inserted
replaced
229 } |
229 } |
230 |
230 |
231 public boolean handlesEvent(int eventType){ |
231 public boolean handlesEvent(int eventType){ |
232 return (eventType & fEventTypes) != 0; |
232 return (eventType & fEventTypes) != 0; |
233 } |
233 } |
234 @Override |
234 |
235 public int hashCode() { |
235 // Can't use these due to implementation of CopyOnWriteArraySet.remove() |
236 return fListener.hashCode(); |
236 // @Override |
237 } |
237 // public int hashCode() { |
238 @Override |
238 // return fListener.hashCode(); |
239 public boolean equals(Object obj) { |
239 // } |
240 return fListener.equals(obj); |
240 // @Override |
241 } |
241 // public boolean equals(Object obj) { |
|
242 // return fListener.equals(obj); |
|
243 // } |
242 } |
244 } |
243 |
245 |
244 private volatile Map<String, CConfigurationDataProviderDescriptor> fProviderMap; |
246 private volatile Map<String, CConfigurationDataProviderDescriptor> fProviderMap; |
245 private volatile CProjectConverterDesciptor fConverters[]; |
247 private volatile CProjectConverterDesciptor fConverters[]; |
246 /** Set of Listeners listening for Project Description Deltas */ |
248 /** Set of Listeners listening for Project Description Deltas */ |
2086 public void addCProjectDescriptionListener(ICProjectDescriptionListener listener, int eventTypes) { |
2088 public void addCProjectDescriptionListener(ICProjectDescriptionListener listener, int eventTypes) { |
2087 fListeners.add(new ListenerDescriptor(listener, eventTypes)); |
2089 fListeners.add(new ListenerDescriptor(listener, eventTypes)); |
2088 } |
2090 } |
2089 |
2091 |
2090 public void removeCProjectDescriptionListener(ICProjectDescriptionListener listener) { |
2092 public void removeCProjectDescriptionListener(ICProjectDescriptionListener listener) { |
2091 fListeners.remove(listener); |
2093 // fListeners.remove(listener); |
|
2094 // Note: can't use remove directly due to the implementation of CopyOnWriteArraySet.remove() |
|
2095 for (ListenerDescriptor listenerDescriptor : fListeners) { |
|
2096 if (listenerDescriptor.fListener.equals(listener)) { |
|
2097 fListeners.remove(listenerDescriptor); |
|
2098 break; |
|
2099 } |
|
2100 } |
2092 } |
2101 } |
2093 |
2102 |
2094 public void notifyListeners(CProjectDescriptionEvent event){ |
2103 public void notifyListeners(CProjectDescriptionEvent event){ |
2095 int eventType = event.getEventType(); |
2104 int eventType = event.getEventType(); |
2096 for (ListenerDescriptor listener : fListeners) { |
2105 for (ListenerDescriptor listener : fListeners) { |