comparison org.eclipse.core.databinding.beans/src/org/eclipse/core/internal/databinding/beans/BeanObservableSetDecorator.d @ 95:6208d4f6a277

Added trees for databinding.beans and observable
author Frank Benoit <benoit@tionex.de>
date Tue, 21 Apr 2009 10:55:51 +0200
parents
children b74ac5dfcc06
comparison
equal deleted inserted replaced
94:1d37a7813832 95:6208d4f6a277
1 /*******************************************************************************
2 * Copyright (c) 2007 Brad Reynolds and others.
3 * All rights reserved. This program and the accompanying materials
4 * are made available under the terms of the Eclipse Public License v1.0
5 * which accompanies this distribution, and is available at
6 * http://www.eclipse.org/legal/epl-v10.html
7 *
8 * Contributors:
9 * Brad Reynolds - initial API and implementation
10 * Matthew Hall - bug 245183
11 ******************************************************************************/
12
13 package org.eclipse.core.internal.databinding.beans;
14
15 import java.beans.PropertyDescriptor;
16 import java.util.Collection;
17 import java.util.Iterator;
18
19 import org.eclipse.core.databinding.beans.IBeanObservable;
20 import org.eclipse.core.databinding.observable.IChangeListener;
21 import org.eclipse.core.databinding.observable.IStaleListener;
22 import org.eclipse.core.databinding.observable.Realm;
23 import org.eclipse.core.databinding.observable.set.IObservableSet;
24 import org.eclipse.core.databinding.observable.set.ISetChangeListener;
25 import org.eclipse.core.internal.databinding.Util;
26
27 /**
28 * {@link IBeanObservable} decorator for an {@link IObservableSet}.
29 *
30 * @since 3.3
31 */
32 public class BeanObservableSetDecorator : IObservableSet, IBeanObservable {
33 private IObservableSet delegate;
34 private Object observed;
35 private PropertyDescriptor propertyDescriptor;
36
37 /**
38 * @param delegate
39 * @param observed
40 * @param propertyDescriptor
41 */
42 public this(IObservableSet delegate,
43 Object observed,
44 PropertyDescriptor propertyDescriptor) {
45
46 this.delegate = delegate;
47 this.observed = observed;
48 this.propertyDescriptor = propertyDescriptor;
49 }
50
51 public bool add(Object o) {
52 return delegate.add(o);
53 }
54
55 public bool addAll(Collection c) {
56 return delegate.addAll(c);
57 }
58
59 public void addChangeListener(IChangeListener listener) {
60 delegate.addChangeListener(listener);
61 }
62
63 public void addSetChangeListener(ISetChangeListener listener) {
64 delegate.addSetChangeListener(listener);
65 }
66
67 public void addStaleListener(IStaleListener listener) {
68 delegate.addStaleListener(listener);
69 }
70
71 public void clear() {
72 delegate.clear();
73 }
74
75 public bool contains(Object o) {
76 return delegate.contains(o);
77 }
78
79 public bool containsAll(Collection c) {
80 return delegate.containsAll(c);
81 }
82
83 public void dispose() {
84 delegate.dispose();
85 }
86
87 public override equals_t opEquals(Object obj) {
88 if (obj is this)
89 return true;
90 if (obj is null)
91 return false;
92 if (getClass() is obj.getClass()) {
93 BeanObservableSetDecorator other = cast(BeanObservableSetDecorator) obj;
94 return Util.equals(other.delegate, delegate);
95 }
96 return delegate.equals(obj);
97 }
98
99 public Object getElementType() {
100 return delegate.getElementType();
101 }
102
103 public Realm getRealm() {
104 return delegate.getRealm();
105 }
106
107 public override hash_t toHash() {
108 return delegate.hashCode();
109 }
110
111 public bool isEmpty() {
112 return delegate.isEmpty();
113 }
114
115 public bool isStale() {
116 return delegate.isStale();
117 }
118
119 public Iterator iterator() {
120 return delegate.iterator();
121 }
122
123 public bool remove(Object o) {
124 return delegate.remove(o);
125 }
126
127 public bool removeAll(Collection c) {
128 return delegate.removeAll(c);
129 }
130
131 public void removeChangeListener(IChangeListener listener) {
132 delegate.removeChangeListener(listener);
133 }
134
135 public void removeSetChangeListener(ISetChangeListener listener) {
136 delegate.removeSetChangeListener(listener);
137 }
138
139 public void removeStaleListener(IStaleListener listener) {
140 delegate.removeStaleListener(listener);
141 }
142
143 public bool retainAll(Collection c) {
144 return delegate.retainAll(c);
145 }
146
147 public int size() {
148 return delegate.size();
149 }
150
151 public Object[] toArray() {
152 return delegate.toArray();
153 }
154
155 public Object[] toArray(Object[] a) {
156 return delegate.toArray(a);
157 }
158
159 /* (non-Javadoc)
160 * @see org.eclipse.core.databinding.beans.IBeanObservable#getObserved()
161 */
162 public Object getObserved() {
163 return observed;
164 }
165
166 /* (non-Javadoc)
167 * @see org.eclipse.core.databinding.beans.IBeanObservable#getPropertyDescriptor()
168 */
169 public PropertyDescriptor getPropertyDescriptor() {
170 return propertyDescriptor;
171 }
172
173 /**
174 * @return the wrapped set
175 */
176 public IObservableSet getDelegate() {
177 return delegate;
178 }
179 }