1 package se.citerus.dddsample.domain.shared;
2
3 import java.io.Serializable;
4
5 /**
6 * A value object, as described in the DDD book.
7 *
8 */
9 public interface ValueObject<T> extends Serializable {
10
11 /**
12 * Value objects compare by the values of their attributes, they don't have an identity.
13 *
14 * @param other The other value object.
15 * @return <code>true</code> if the given value object's and this value object's attributes are the same.
16 */
17 boolean sameValueAs(T other);
18
19 }