diff options
author | Reinier Zwitserloot <reinier@tipit.to> | 2009-07-28 17:38:26 +0200 |
---|---|---|
committer | Reinier Zwitserloot <reinier@tipit.to> | 2009-07-28 17:41:56 +0200 |
commit | fb6be45d2bcb97e0e0288ba81a602679c7bedc46 (patch) | |
tree | a5495fdf2769d06714b5eb96e203b33430513450 /usage_examples | |
parent | e744f1829adf95f3b54fa54d813eb26c4c8e8c76 (diff) | |
download | lombok-fb6be45d2bcb97e0e0288ba81a602679c7bedc46.tar.gz lombok-fb6be45d2bcb97e0e0288ba81a602679c7bedc46.tar.bz2 lombok-fb6be45d2bcb97e0e0288ba81a602679c7bedc46.zip |
Added website feature documentation for @ToString and @EqualsAndHashCode, and modified the docs for @Data to refer to the docs of these new annotations.
The build script for the website has been updated to clean out the website build dir first, so files that used to exist but have now been tossed are no longer there.
There's also a special website-no-videos target which builds a website deployable without the videos. This makes the upload a lot faster if the videos haven't changed.
Diffstat (limited to 'usage_examples')
-rw-r--r-- | usage_examples/DataExample_post.jpage | 2 | ||||
-rw-r--r-- | usage_examples/DataExample_pre.jpage | 9 | ||||
-rw-r--r-- | usage_examples/EqualsAndHashCodeExample_post.jpage | 60 | ||||
-rw-r--r-- | usage_examples/EqualsAndHashCodeExample_pre.jpage | 21 | ||||
-rw-r--r-- | usage_examples/GetterSetterExample_pre.jpage | 4 | ||||
-rw-r--r-- | usage_examples/ToStringExample_post.jpage | 26 | ||||
-rw-r--r-- | usage_examples/ToStringExample_pre.jpage | 20 |
7 files changed, 136 insertions, 6 deletions
diff --git a/usage_examples/DataExample_post.jpage b/usage_examples/DataExample_post.jpage index 27e3db22..838c9cf7 100644 --- a/usage_examples/DataExample_post.jpage +++ b/usage_examples/DataExample_post.jpage @@ -87,7 +87,7 @@ public class DataExample { } @Override public String toString() { - return "Exercise(" + name + ", " + value + ")"; + return "Exercise(name=" + name + ", value=" + value + ")"; } @Override public boolean equals(Object o) { diff --git a/usage_examples/DataExample_pre.jpage b/usage_examples/DataExample_pre.jpage index 775f82ed..404d3458 100644 --- a/usage_examples/DataExample_pre.jpage +++ b/usage_examples/DataExample_pre.jpage @@ -1,14 +1,17 @@ import lombok.AccessLevel; import lombok.Setter; import lombok.Data; +import lombok.ToString; -public @Data class DataExample { +@Data public class DataExample { private final String name; - private @Setter(AccessLevel.PACKAGE) int age; + @Setter(AccessLevel.PACKAGE) private int age; private double score; private String[] tags; - public static @Data(staticConstructor="of") class Exercise<T> { + @ToString(includeFieldNames=true) + @Data(staticConstructor="of") + public static class Exercise<T> { private final String name; private final T value; } diff --git a/usage_examples/EqualsAndHashCodeExample_post.jpage b/usage_examples/EqualsAndHashCodeExample_post.jpage new file mode 100644 index 00000000..b3f6e035 --- /dev/null +++ b/usage_examples/EqualsAndHashCodeExample_post.jpage @@ -0,0 +1,60 @@ +import java.util.Arrays; + +public class EqualsAndHashCodeExample { + private transient int transientVar = 10; + private String name; + private double score; + private Shape shape = new Square(5, 10); + private String[] tags; + private int id; + + @Override public boolean equals(Object o) { + if (o == this) return true; + if (o == null) return false; + if (o.getClass() != this.getClass()) return false; + EqualsAndHashCodeExample other = (EqualsAndHashCodeExample) o; + if (name == null ? other.name != null : !name.equals(other.name)) return false; + if (Double.compare(score, other.score) != 0) return false; + if (!Arrays.deepEquals(tags, other.tags)) return false; + return true; + } + + @Override public int hashCode() { + final int PRIME = 31; + int result = 1; + final long temp1 = Double.doubleToLongBits(score); + result = (result*PRIME) + (name == null ? 0 : name.hashCode()); + result = (result*PRIME) + (int)(temp1 ^ (temp1 >>> 32)); + result = (result*PRIME) + Arrays.deepHashCode(tags); + return result; + } + + public static class Square extends Shape { + private final int width, height; + + public Square(int width, int height) { + this.width = width; + this.height = height; + } + + @Override public boolean equals(Object o) { + if (o == this) return true; + if (o == null) return false; + if (o.getClass() != this.getClass()) return false; + if (!super.equals(o)) return false; + Square other = (Square) o; + if (width != o.width) return false; + if (height != o.height) return false; + return true; + } + + @Override public int hashCode() { + final int PRIME = 31; + int result = 1; + result = (result*PRIME) + super.hashCode(); + result = (result*PRIME) + width; + result = (result*PRIME) + height; + return result; + } + } +} diff --git a/usage_examples/EqualsAndHashCodeExample_pre.jpage b/usage_examples/EqualsAndHashCodeExample_pre.jpage new file mode 100644 index 00000000..b146f29a --- /dev/null +++ b/usage_examples/EqualsAndHashCodeExample_pre.jpage @@ -0,0 +1,21 @@ +import lombok.EqualsAndHashCode; + +@EqualsAndHashCode(exclude={"id", "shape"}) +public class EqualsAndHashCodeExample { + private transient int transientVar = 10; + private String name; + private double score; + private Shape shape = new Square(5, 10); + private String[] tags; + private int id; + + @EqualsAndHashCode(callSuper=true) + public static class Square extends Shape { + private final int width, height; + + public Square(int width, int height) { + this.width = width; + this.height = height; + } + } +} diff --git a/usage_examples/GetterSetterExample_pre.jpage b/usage_examples/GetterSetterExample_pre.jpage index c40ec106..9ef0532c 100644 --- a/usage_examples/GetterSetterExample_pre.jpage +++ b/usage_examples/GetterSetterExample_pre.jpage @@ -3,8 +3,8 @@ import lombok.Getter; import lombok.Setter; public class GetterSetterExample { - private @Getter @Setter int age = 10; - private @Setter(AccessLevel.PROTECTED) String name; + @Getter @Setter private int age = 10; + @Setter(AccessLevel.PROTECTED) private String name; @Override public String toString() { return String.format("%s (age: %d)", name, age); diff --git a/usage_examples/ToStringExample_post.jpage b/usage_examples/ToStringExample_post.jpage new file mode 100644 index 00000000..f348e0dc --- /dev/null +++ b/usage_examples/ToStringExample_post.jpage @@ -0,0 +1,26 @@ +import java.util.Arrays; + +public class ToStringExample { + private static final int STATIC_VAR = 10; + private String name; + private Shape shape = new Square(5, 10); + private String[] tags; + private int id; + + public static class Square extends Shape { + private final int width, height; + + public Square(int width, int height) { + this.width = width; + this.height = height; + } + + @Override public String toString() { + return "Square(super=" + super.toString() + ", width=" + width + ", height=" + height + ")"; + } + } + + @Override public String toString() { + return "ToStringExample(" + name + ", " + shape + ", " + Arrays.deepToString(tags) + ")"; + } +} diff --git a/usage_examples/ToStringExample_pre.jpage b/usage_examples/ToStringExample_pre.jpage new file mode 100644 index 00000000..26b0cfe8 --- /dev/null +++ b/usage_examples/ToStringExample_pre.jpage @@ -0,0 +1,20 @@ +import lombok.ToString; + +@ToString(excludes="id") +public class ToStringExample { + private static final int STATIC_VAR = 10; + private String name; + private Shape shape = new Square(5, 10); + private String[] tags; + private int id; + + @ToString(callSuper=true, includeFieldNames=true) + public static class Square extends Shape { + private final int width, height; + + public Square(int width, int height) { + this.width = width; + this.height = height; + } + } +} |