diff options
author | Reinier Zwitserloot <reinier@zwitserloot.com> | 2017-05-08 21:28:02 +0200 |
---|---|---|
committer | Reinier Zwitserloot <reinier@zwitserloot.com> | 2017-05-29 21:02:54 +0200 |
commit | 8b7a7cbc813653a3248d6cf3a7779e220957bc85 (patch) | |
tree | b9acfb9d68c6866acc3cfb9ee59d72ff43f1ebc3 /website/usageExamples/experimental/DelegateExample_pre.jpage | |
parent | 72fd50b9f1db1ab6bfc1753ba6a1e686a2f0f22c (diff) | |
download | lombok-8b7a7cbc813653a3248d6cf3a7779e220957bc85.tar.gz lombok-8b7a7cbc813653a3248d6cf3a7779e220957bc85.tar.bz2 lombok-8b7a7cbc813653a3248d6cf3a7779e220957bc85.zip |
The great rename: the old ‘website’ is now ‘website-old’, and ‘website2’ is now ‘website’.
Diffstat (limited to 'website/usageExamples/experimental/DelegateExample_pre.jpage')
-rw-r--r-- | website/usageExamples/experimental/DelegateExample_pre.jpage | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/website/usageExamples/experimental/DelegateExample_pre.jpage b/website/usageExamples/experimental/DelegateExample_pre.jpage new file mode 100644 index 00000000..885ab3a8 --- /dev/null +++ b/website/usageExamples/experimental/DelegateExample_pre.jpage @@ -0,0 +1,37 @@ +import java.util.ArrayList; +import java.util.Collection; + +import lombok.experimental.Delegate; + +public class DelegationExample { + private interface SimpleCollection { + boolean add(String item); + boolean remove(Object item); + } + + @Delegate(types=SimpleCollection.class) + private final Collection<String> collection = new ArrayList<String>(); +} + + +class ExcludesDelegateExample { + long counter = 0L; + + private interface Add { + boolean add(String x); + boolean addAll(Collection<? extends String> x); + } + + @Delegate(excludes=Add.class) + private final Collection<String> collection = new ArrayList<String>(); + + public boolean add(String item) { + counter++; + return collection.add(item); + } + + public boolean addAll(Collection<? extends String> col) { + counter += col.size(); + return collection.addAll(col); + } +} |