001 /*
002 * Copyright 2008-2017 the original author or authors.
003 *
004 * Licensed under the Apache License, Version 2.0 (the "License");
005 * you may not use this file except in compliance with the License.
006 * You may obtain a copy of the License at
007 *
008 * http://www.apache.org/licenses/LICENSE-2.0
009 *
010 * Unless required by applicable law or agreed to in writing, software
011 * distributed under the License is distributed on an "AS IS" BASIS,
012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
013 * See the License for the specific language governing permissions and
014 * limitations under the License.
015 */
016 package griffon.javafx.beans.binding;
017
018 import javafx.beans.InvalidationListener;
019 import javafx.beans.binding.BooleanBinding;
020 import javafx.beans.binding.StringBinding;
021 import javafx.beans.property.Property;
022 import javafx.beans.property.ReadOnlyBooleanProperty;
023 import javafx.beans.property.ReadOnlyIntegerProperty;
024 import javafx.beans.property.SetProperty;
025 import javafx.beans.value.ChangeListener;
026 import javafx.beans.value.ObservableValue;
027 import javafx.collections.ObservableSet;
028 import javafx.collections.SetChangeListener;
029
030 import javax.annotation.Nonnull;
031 import java.util.Collection;
032 import java.util.Iterator;
033
034 import static java.util.Objects.requireNonNull;
035
036 /**
037 * @author Andres Almiray
038 * @since 2.11.0
039 */
040 public class SetPropertyDecorator<E> extends SetProperty<E> {
041 private final SetProperty<E> delegate;
042
043 public SetPropertyDecorator(@Nonnull SetProperty<E> delegate) {
044 this.delegate = requireNonNull(delegate, "Argument 'delegate' must not be null");
045 }
046
047 @Nonnull
048 protected final SetProperty<E> getDelegate() {
049 return delegate;
050 }
051
052 @Override
053 public void setValue(ObservableSet<E> v) {
054 delegate.setValue(v);
055 }
056
057 @Override
058 public void bindBidirectional(Property<ObservableSet<E>> other) {
059 delegate.bindBidirectional(other);
060 }
061
062 @Override
063 public void unbindBidirectional(Property<ObservableSet<E>> other) {
064 delegate.unbindBidirectional(other);
065 }
066
067 @Override
068 public boolean equals(Object o) {
069 return this == o || delegate.equals(o);
070 }
071
072 @Override
073 public int hashCode() {
074 return delegate.hashCode();
075 }
076
077 @Override
078 public String toString() {
079 return getClass().getName() + ":" + delegate.toString();
080 }
081
082 @Override
083 public void bindContentBidirectional(ObservableSet<E> set) {
084 delegate.bindContentBidirectional(set);
085 }
086
087 @Override
088 public void unbindContentBidirectional(Object object) {
089 delegate.unbindContentBidirectional(object);
090 }
091
092 @Override
093 public void bindContent(ObservableSet<E> set) {
094 delegate.bindContent(set);
095 }
096
097 @Override
098 public void unbindContent(Object object) {
099 delegate.unbindContent(object);
100 }
101
102 @Override
103 public ObservableSet<E> getValue() {
104 return delegate.getValue();
105 }
106
107 @Override
108 public int getSize() {
109 return delegate.getSize();
110 }
111
112 @Override
113 public ReadOnlyIntegerProperty sizeProperty() {
114 return delegate.sizeProperty();
115 }
116
117 @Override
118 public ReadOnlyBooleanProperty emptyProperty() {
119 return delegate.emptyProperty();
120 }
121
122 @Override
123 public BooleanBinding isEqualTo(ObservableSet<?> other) {
124 return delegate.isEqualTo(other);
125 }
126
127 @Override
128 public BooleanBinding isNotEqualTo(ObservableSet<?> other) {
129 return delegate.isNotEqualTo(other);
130 }
131
132 @Override
133 public BooleanBinding isNull() {
134 return delegate.isNull();
135 }
136
137 @Override
138 public BooleanBinding isNotNull() {
139 return delegate.isNotNull();
140 }
141
142 @Override
143 public StringBinding asString() {
144 return delegate.asString();
145 }
146
147 @Override
148 public int size() {
149 return delegate.size();
150 }
151
152 @Override
153 public boolean isEmpty() {
154 return delegate.isEmpty();
155 }
156
157 @Override
158 public boolean contains(Object obj) {
159 return delegate.contains(obj);
160 }
161
162 @Override
163 public Iterator<E> iterator() {
164 return delegate.iterator();
165 }
166
167 @Override
168 public Object[] toArray() {
169 return delegate.toArray();
170 }
171
172 @Override
173 public <T> T[] toArray(T[] array) {
174 return delegate.toArray(array);
175 }
176
177 @Override
178 public boolean add(E element) {
179 return delegate.add(element);
180 }
181
182 @Override
183 public boolean remove(Object obj) {
184 return delegate.remove(obj);
185 }
186
187 @Override
188 public boolean containsAll(Collection<?> objects) {
189 return delegate.containsAll(objects);
190 }
191
192 @Override
193 public boolean addAll(Collection<? extends E> elements) {
194 return delegate.addAll(elements);
195 }
196
197 @Override
198 public boolean removeAll(Collection<?> objects) {
199 return delegate.removeAll(objects);
200 }
201
202 @Override
203 public boolean retainAll(Collection<?> objects) {
204 return delegate.retainAll(objects);
205 }
206
207 @Override
208 public void clear() {
209 delegate.clear();
210 }
211
212 @Override
213 public ObservableSet<E> get() {
214 return delegate.get();
215 }
216
217 @Override
218 public void addListener(ChangeListener<? super ObservableSet<E>> listener) {
219 delegate.addListener(listener);
220 }
221
222 @Override
223 public void removeListener(ChangeListener<? super ObservableSet<E>> listener) {
224 delegate.removeListener(listener);
225 }
226
227 @Override
228 public void addListener(InvalidationListener listener) {
229 delegate.addListener(listener);
230 }
231
232 @Override
233 public void removeListener(InvalidationListener listener) {
234 delegate.removeListener(listener);
235 }
236
237 @Override
238 public void addListener(SetChangeListener<? super E> listener) {
239 delegate.addListener(listener);
240 }
241
242 @Override
243 public void removeListener(SetChangeListener<? super E> listener) {
244 delegate.removeListener(listener);
245 }
246
247 @Override
248 public Object getBean() {
249 return delegate.getBean();
250 }
251
252 @Override
253 public String getName() {
254 return delegate.getName();
255 }
256
257 @Override
258 public void bind(ObservableValue<? extends ObservableSet<E>> observable) {
259 delegate.bind(observable);
260 }
261
262 @Override
263 public void unbind() {
264 delegate.unbind();
265 }
266
267 @Override
268 public boolean isBound() {
269 return delegate.isBound();
270 }
271
272 @Override
273 public void set(ObservableSet<E> value) {
274 delegate.set(value);
275 }
276 }
|